您目前查看的是 Apigee Edge 說明文件。
前往 Apigee X 說明文件。 info
使用流量快訊,在環境、Proxy 或區域的流量在一段時間內變更指定百分比時,發出通知。
您將時間範圍設為:
- 1 小時
- 1 天
- 7 天
- 15 天 (僅限 API)
- 30 天 (僅限 API)
這項快訊會比較目前時間範圍和前一個時間範圍的流量。 舉例來說,您指定了一小時的時間範圍。然後,這項快訊會比較最近一小時的流量與前一小時的流量,計算流量的百分比變化:
percentChange = ((currentTraffic - previousTraffic) / previousTraffic) * 100
正值代表流量增加,負值代表流量減少。
接著,您可以設定觸發流量快訊的門檻,也就是指定時間範圍內 API 流量的升幅或降幅百分比。
設定百分比前,請確認該百分比符合您正常的流量模式。舉例來說,如果您的 API 流量通常會在一天內波動,且在特定尖峰時段每小時流量最多會增加 100%,這些尖峰時段是正常情況,不應觸發快訊。不過,如果您設定快訊,在每小時流量增加 50% 時觸發,系統就會針對正常流量發出不必要的快訊。
如要進一步瞭解快訊,請參閱「設定快訊和通知」。
新增路況快訊和通知
如何新增路況快訊和通知:- 在 Edge UI 中,依序按一下「Analyze」>「Alert Rules」。
- 按一下「+ 警告」。
- 輸入有關快訊的下列一般資訊:
欄位 說明 快訊名稱 快訊名稱。使用可描述觸發條件的名稱,方便您辨識。 名稱長度不得超過 128 個字元。 說明 快訊說明。 快訊類型 選取「總流量」。詳情請參閱「關於快訊類型」。 環境 從下拉式清單中選取環境。 狀態 切換啟用或停用快訊。 - 定義觸發快訊的條件門檻和維度。
條件欄位 說明 門檻 指定在流量增加或減少特定百分比時觸發快訊 (與前一個時間間隔相比)。
將「增加」百分比設為大於或等於 0% 的值。 將「減少」百分比設為大於或等於 0%,且小於或等於 100% 的值。
你可以選擇下列時間間隔:
- 1 小時
- 1 天
- 1 週
維度 按一下「+新增維度」,然後指定要傳回結果的維度詳細資料,包括 API Proxy 和區域。
將特定維度設為:
- Proxy - 設定為特定 Proxy 或「所有」Proxy。 「Proxy」不支援「Any」值。您可以改為為每個感興趣的 Proxy 新增個別快訊。
- 區域 - 設為特定區域或「所有」區域。 「區域」不支援「任何」值。但你可以為每個感興趣的區域新增個別快訊。
- 按一下「+ 通知」,新增快訊通知。
通知詳細資訊 說明 頻道 選取要使用的通知管道,並指定目的地:電子郵件、Slack、PagerDuty 或 Webhook。 目的地 根據所選管道類型指定目的地: - 電子郵件 - 電子郵件地址,例如
joe@company.com
- Slack - Slack 頻道網址,例如
https://hooks.slack.com/services/T00000000/B00000000/XXXXX
- PagerDuty - PagerDuty 代碼,例如
abcd1234efgh56789
- Webhook - Webhook 網址,例如
https://apigee.com/test-webhook
注意:每則通知只能指定一個目的地。 如要為同一管道類型指定多個目的地,請新增其他通知。
- 電子郵件 - 電子郵件地址,例如
- 如要新增其他通知,請重複上一個步驟。
- 如果您已新增通知,請設定下列欄位:
欄位 說明 應對手冊 (選用) 自由輸入文字,簡短說明警報觸發時建議採取的解決動作。您也可以指定內部 Wiki 或社群頁面的連結,以供參考最佳做法。這個欄位中的資訊會顯示在通知中。這個欄位的內容不得超過 1500 個字元。 節流 傳送通知的頻率。從下拉式清單中選取值。 - 按一下「儲存」。
在「事件」資訊主頁中查看快訊
當 Edge 偵測到警示條件時,會自動將該條件記錄到 Edge 使用者介面的「Events」資訊主頁。事件資訊主頁中顯示的事件清單包含所有警報,包括已修正和認證的警報。
如要查看快訊,請按照以下步驟操作:
在 Edge 使用者介面中,依序點選「Analyze」>「Events」。系統會顯示新的「事件」資訊主頁:
在「事件」資訊主頁中,依下列條件篩選:
- 環境
- 區域
- 時間範圍
- 在「事件」資訊主頁中選取資料列,即可顯示包含即將到期憑證的金鑰儲存區,進一步調查快訊。您可以在「金鑰儲存區」頁面中上傳新憑證,並刪除即將到期的憑證。
搭配路況快訊使用快訊 API
您用來建立及管理流量快訊的大部分 API,與其他快訊類型使用的 API 相同:
不過,部分 API 具有額外屬性,可用於支援異常警報,包括:
建立或更新交通快訊
使用與其他警報類型相同的 API,建立或更新交通警報。建立或更新交通快訊的 API 呼叫主體與其他快訊相同,但有以下變更:
新增下列屬性,指定快訊為交通快訊:
"alertType": "runtime" "alertSubType": "trafficfixed"
這些屬性的預設值如下:
"alertType": "runtime" "alertSubType": "fixed"
- 在
conditions
陣列的dimensions
元素中:- 您必須設定
org
、env
、proxy
和region
屬性的值。系統僅支援這些屬性。 您可以將proxy
和region
設為ALL
。 - 您必須將
traffic
屬性的值設為total
。
- 您必須設定
在
conditions
陣列中:metrics
屬性的值必須為trafficChange
。comparator
屬性必須設為increasedBy
或decreasedBy
。threshold
屬性包含正值,指定流量增加或減少的百分比,其中1.0
值對應 100%。increasedBy
的值必須大於或等於 0.0 (0%)。decreasedBy
的值必須大於或等於 0.0 (0%),且小於或等於 1.0 (100%)。durationSeconds
屬性必須設為下列其中一個值:3600
(1 小時)、86400
(1 天)、604800
(7 天)、1296000
(15 天)、2592000
(30 天)。
- 交通快訊不支援
reportEnabled
屬性。
curl 'https://apimonitoring.enterprise.apigee.com/alerts' \ -X POST \ -H 'Accept: application/json, text/plain, */*' -H "Content-Type: application/json" \ -H "Authorization: Bearer $ACCESS_TOKEN" \ -d '{ "organization":"myorg", "name":"My Traffic Alert", "description":"My traffic alert", "environment":"prod", "enabled":true, "alertType":"runtime", "alertSubType":"trafficfixed", "conditions":[ { "description":"", "dimensions": { "org":"nyorg", "env":"prod", "proxy":"ALL", "region":"ALL", "traffic":"total" }, "metric": "trafficChange", "threshold": 0.5, "durationSeconds": 3600, "comparator": "increasedBy" } ], "notifications":[{ "channel":"pagerduty", "destination":"abcd1234efgh56789"}], "playbook":"http://acme.com/myplaybook.html", "throttleIntervalSeconds":3600, "reportEnabled":true }'
如「取得 OAuth 2.0 存取權杖」一文所述,將 $ACCESS_TOKEN
設為 OAuth 2.0 存取權杖。如要瞭解本範例中使用的 cURL 選項,請參閱「使用 cURL」。
如要進一步瞭解如何使用這項 API,請參閱「查看活動」。
接收路況快訊
根據預設,Get Alerts API 會傳回所有已定義快訊的相關資訊。 這個 API 現在會採用查詢參數,方便您篩選結果:
enabled
- Iftrue
specifies to return only enabled alerts. 預設值為false
。alertType
- 指定要傳回的快訊類型。允許的值為預設值runtime
和cert
。alertSubType
:指定要傳回的警示子類型。預設值為未設定,表示傳回所有警報子類型。
舉例來說,使用下列 API 呼叫,只傳回名為「myorg
」的機構已啟用的快訊:
curl -H "Authorization: Bearer $ACCESS_TOKEN" \ 'https://apimonitoring.enterprise.apigee.com/alerts?org=myorg&enabled=true'
下列呼叫只會傳回已啟用和已停用的車流量快訊:
curl -H "Authorization: Bearer $ACCESS_TOKEN" \ 'https://apimonitoring.enterprise.apigee.com/alerts?org=myorg&alertType=runtime&alertSubType=trafficfixed'
如「取得 OAuth 2.0 存取權杖」一文所述,將 $ACCESS_TOKEN
設為 OAuth 2.0 存取權杖。如要瞭解本範例中使用的 cURL 選項,請參閱「使用 cURL」。