設定路況快訊

您目前查看的是 Apigee Edge 說明文件。
前往 Apigee X 說明文件
info

使用流量快訊,在環境、Proxy 或區域的流量在一段時間內變更指定百分比時,發出通知。

您將時間範圍設為:

  • 1 小時
  • 1 天
  • 7 天
  • 15 天 (僅限 API)
  • 30 天 (僅限 API)

這項快訊會比較目前時間範圍和前一個時間範圍的流量。 舉例來說,您指定了一小時的時間範圍。然後,這項快訊會比較最近一小時的流量與前一小時的流量,計算流量的百分比變化:

percentChange = ((currentTraffic - previousTraffic) / previousTraffic) * 100

正值代表流量增加,負值代表流量減少。

接著,您可以設定觸發流量快訊的門檻,也就是指定時間範圍內 API 流量的升幅或降幅百分比。

設定百分比前,請確認該百分比符合您正常的流量模式。舉例來說,如果您的 API 流量通常會在一天內波動,且在特定尖峰時段每小時流量最多會增加 100%,這些尖峰時段是正常情況,不應觸發快訊。不過,如果您設定快訊,在每小時流量增加 50% 時觸發,系統就會針對正常流量發出不必要的快訊。

如要進一步瞭解快訊,請參閱「設定快訊和通知」。

新增路況快訊和通知

如何新增路況快訊和通知:
  1. 在 Edge UI 中,依序按一下「Analyze」>「Alert Rules」
  2. 按一下「+ 警告」
  3. 輸入有關快訊的下列一般資訊:
    欄位 說明
    快訊名稱 快訊名稱。使用可描述觸發條件的名稱,方便您辨識。 名稱長度不得超過 128 個字元。
    說明 快訊說明。
    快訊類型 選取「總流量」。詳情請參閱「關於快訊類型」。
    環境 從下拉式清單中選取環境。
    狀態 切換啟用或停用快訊。
  4. 定義觸發快訊的條件門檻和維度。
    條件欄位 說明
    門檻

    指定在流量增加減少特定百分比時觸發快訊 (與前一個時間間隔相比)。

    將「增加」百分比設為大於或等於 0% 的值。 將「減少」百分比設為大於或等於 0%,且小於或等於 100% 的值。

    你可以選擇下列時間間隔:

    • 1 小時
    • 1 天
    • 1 週
    維度

    按一下「+新增維度」,然後指定要傳回結果的維度詳細資料,包括 API Proxy 和區域。

    將特定維度設為:

    • Proxy - 設定為特定 Proxy 或「所有」Proxy。 「Proxy」不支援「Any」值。您可以改為為每個感興趣的 Proxy 新增個別快訊。
    • 區域 - 設為特定區域或「所有」區域。 「區域」不支援「任何」值。但你可以為每個感興趣的區域新增個別快訊。
  5. 按一下「+ 通知」,新增快訊通知。
    通知詳細資訊 說明
    頻道 選取要使用的通知管道,並指定目的地:電子郵件、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

      注意:每則通知只能指定一個目的地。 如要為同一管道類型指定多個目的地,請新增其他通知。

  6. 如要新增其他通知,請重複上一個步驟。
  7. 如果您已新增通知,請設定下列欄位:
    欄位 說明
    應對手冊 (選用) 自由輸入文字,簡短說明警報觸發時建議採取的解決動作。您也可以指定內部 Wiki 或社群頁面的連結,以供參考最佳做法。這個欄位中的資訊會顯示在通知中。這個欄位的內容不得超過 1500 個字元。
    節流 傳送通知的頻率。從下拉式清單中選取值。
  8. 按一下「儲存」

在「事件」資訊主頁中查看快訊

當 Edge 偵測到警示條件時,會自動將該條件記錄到 Edge 使用者介面的「Events」資訊主頁。事件資訊主頁中顯示的事件清單包含所有警報,包括已修正和認證的警報。

如要查看快訊,請按照以下步驟操作:

  1. 在 Edge 使用者介面中,依序點選「Analyze」>「Events」。系統會顯示新的「事件」資訊主頁:

  2. 在「事件」資訊主頁中,依下列條件篩選:

    • 環境
    • 區域
    • 時間範圍
  3. 在「事件」資訊主頁中選取資料列,即可顯示包含即將到期憑證的金鑰儲存區,進一步調查快訊。您可以在「金鑰儲存區」頁面中上傳新憑證,並刪除即將到期的憑證。

搭配路況快訊使用快訊 API

您用來建立及管理流量快訊的大部分 API,與其他快訊類型使用的 API 相同:

不過,部分 API 具有額外屬性,可用於支援異常警報,包括:

建立或更新交通快訊

使用與其他警報類型相同的 API,建立更新交通警報。建立或更新交通快訊的 API 呼叫主體與其他快訊相同,但有以下變更:

  • 新增下列屬性,指定快訊為交通快訊:

    "alertType": "runtime"
    "alertSubType": "trafficfixed"

    這些屬性的預設值如下:

    "alertType": "runtime"
    "alertSubType": "fixed"
  • conditions 陣列的 dimensions 元素中:
    • 您必須設定 orgenvproxyregion 屬性的值。系統僅支援這些屬性。 您可以將 proxyregion 設為 ALL
    • 您必須將 traffic 屬性的值設為 total
  • conditions 陣列中:

    • metrics 屬性的值必須為 trafficChange
    • comparator 屬性必須設為 increasedBydecreasedBy
    • 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 屬性。
以下範例說明如何設定警報,在機構和環境的流量在一小時內增加 50% 時觸發警報。 觸發快訊時,系統會將通知傳送至指定的 PagerDuty 代碼。
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 - If true specifies to return only enabled alerts. 預設值為 false
  • alertType - 指定要傳回的快訊類型。允許的值為預設值 runtimecert
  • 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」。