合成監控 ( Canary) - Amazon CloudWatch

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

合成監控 ( Canary)

您可以使用 Amazon CloudWatch Synthetics 來建立 Canary 、在排程上執行的可設定指令碼,以監控您的端點和 APIs。Canary 遵循相同的路由並執行與客戶相同的動作,即使您的應用程式沒有任何客戶流量,也能持續驗證您的客戶體驗。透過使用 Canary,您可以在客戶之前發現問題。

Canary 是以 Node.js 或 Python 撰寫的指令碼。Canary 會使用 Node.js 或 Python 作為架構,在您的帳戶中建立 Lambda 函數。Canary 在 HTTP和 HTTPS通訊協定上運作。Canary 使用包含 CloudWatch Synthetics 程式庫的 Lambda 層。程式庫包含 NodeJS Canary 專用合成程式的 CloudWatch NodeJS 版本,以及 Python Canary 專用 CloudWatch 合成程式的 Python 版本。這些層屬於 CloudWatch Synthetics 服務帳戶。程式庫絕不會傳輸或儲存客戶資訊。所有客戶資料只會儲存在客戶帳戶中。

Canary 透過 Puppeteer 或 Selenium Webdriver 提供對無周邊 Google Chrome 瀏覽器的程式設計存取。如需 Puppeteer 的詳細資訊,請參閱 Puppeteer。如需 Selenium 的詳細資訊,請參閱 www.selenium.dev/

Canary 會檢查端點的可用性和延遲,並可儲存 UI 的載入時間資料和螢幕擷取畫面。他們可以監控您的 REST APIs、 URLs和 網站內容,並可檢查網路釣魚、程式碼注入和跨網站指令碼的未經授權變更。

CloudWatch Synthetics 與 Application Signals 整合,可探索和監控您的應用程式服務、用戶端、Synthetics Canary 和服務相依性。使用 Application Signals 來查看服務的清單或視覺化地圖、根據您的服務層級目標檢視運作狀態指標 (SLOs),以及向下切入以查看關聯的 X-Ray 追蹤,以取得更詳細的疑難排解。若要在 Application Signals 中查看您的 Canaries,請開啟 X-Ray 作用中追蹤。您的 Canary 會顯示在與您的服務相連的服務地圖以及它們呼叫之服務的服務詳細資訊頁面中。

如需 Canary 的影片示範,請參閱以下內容:

您可以只執行一次 Canary,也可以定期執行。Canary 可以每分鐘執行一次。您可以使用 Cron 與 Rate 表達式來排程 Canary。

如需建立和執行 Canary 之前要考量之安全性問題的相關資訊,請參閱Synthetics Canary 的安全考量

根據預設, Canary 會在CloudWatchSynthetics命名空間中建立數個 CloudWatch 指標。這些指標具有 CanaryName 的維度。使用函數庫中 executeStep()executeHttpStep() 函數的 Canary 也具有 StepName 的維度。如需 Canary 函數庫的詳細資訊,請參閱適用於 Canary 指令碼的程式庫函數

CloudWatch Synthetics 與 X-Ray Trace Map 完美整合,該地圖使用 AWS X-Ray CloudWatch 來提供服務的檢視, end-to-end協助您更有效地找出效能瓶頸並識別受影響的使用者。您使用 CloudWatch Synthetics 建立的 Canary 會出現在追蹤映射上。如需詳細資訊,請參閱 X-Ray 追蹤地圖

CloudWatch Synthetics 目前在所有商業 AWS 區域和 GovCloud 區域都可用。

注意

在亞太區域 (大阪) AWS PrivateLink 不支援 。在亞太區域 (雅加達), AWS PrivateLink 與 X-Ray 不受支援。