Datadog
用途說明#
服務或路由到 local Datadog agent 的日誌指標 (metrics)。
欄位配置說明#
啟用時可以看到以下畫面:

對應的配置說明如下:
| 參數 | 類型 | 預設值 | 說明 | 必填 |
|---|---|---|---|---|
| host | string | localhost | 要將數據發送過去的 IP 地址或主機名。 | |
| port | integer | 8125 | 發送數據到指定的上游 server 的端口。 可以填入的範圍為 0 至 65535。 | |
| metrics | array of record elements | 所有指標(metrics) | 要記錄的指標列表。 指標可用值可參考指標(Metrics)說明。 默認情況下,插件會記錄所有可用指標。如果您指定一組指標,則僅會記錄該組指標。 | V |
| prefix | string | kong | 作為前綴附加到指標名稱的字符串。 | |
| service_name_tag | string | name | 要作為服務名稱附加的字符串。 | |
| status_tag | string | status | 要附加為 HTTP status 標記的字符串。 | |
| consumer_tag | string | consumer | 要附加為用戶標記的字符串。 |
指標 (Metrics)說明#
Datadog 插件當前將以下指標 (metrics) 記錄到有關服務或路由的 Datadog server:
| 指標 (Metric) | 說明 | 命名空間 |
|---|---|---|
| request_count | 追蹤請求數量。 | kong.request.count |
| request_size | 追蹤請求的 body 大小 (in bytes)。 | kong.request.size |
| response_size | 追蹤回應的 body 大小 (in bytes)。 | kong.response.size |
| latency | 追蹤請求開始直到收到上游服務器之回應的時間間隔。 | kong.latency |
| upstream_latency | 追蹤最終服務處理請求所花費的時間。 | kong.upstream_latency |
| kong_latency | 追蹤運行所有插件所需的內部延遲。 | kong.kong_latency |
指標將與 tag name 和 status 一起發送,分別帶有 API name 和 HTTP status code。如果您指定指標 (metric) 內的consumer_identifier 欄位,則 tag consumer 會被一併添加。
Metric Fields#
該插件可以配置任意指標組合,每個 entry 包含以下 fields:
| Field | 說明 | 資料類型 | 允許值 |
|---|---|---|---|
| name | Datadog 指標的名稱。 | String | Metrics |
| stat_type | 決定指標代表哪種事件。 | String | gauge、timer、counter、histogram、meter、set 以及 distribution。 |
| sample_rate | 採樣率。 | Number | number |
| consumer_identifier | 經過身份驗證的用戶詳細資訊。 | String | 可以選擇以下其中之一:consumer_id、custom_id、username。 |
| tags | tags 列表。 | Array of strings | key[:value] |
Metric 要求#
- 默認情況下會記錄所有指標 (metrics)。
- stat_type=counter 或是 stat_type=gauge 的指標 (metrics),必須要同步定義 sample_rate。
遷移 Datadog queries#
插件會使用通用指標名稱來更新 api、 status 和 consumer-specific 的指標 (metrics)。
您必須更改 dashboards 和 alerts 中的 Datadog queries 以反映指標更新。
設置每個 GOC API Gateway 節點的主機和端口#
安裝多數據中心時,您可能希望在每個 GOC API Gateway 節點的基礎上設置 Datadog agent host 跟 port。通過使用環境變量設定,host 和 port 屬性可以實現此配置。
note
插件配置中的 host 和 port fields 優先於環境變量。
| Field | 說明 | 資料類型 |
|---|---|---|
| KONG_DATADOG_AGENT_HOST | 要將數據發送過去的 IP 地址或主機名。 | string |
| KONG_DATADOG_AGENT_PORT | 上游服務器上發送數據的 port。 | integer |
用法示例#
在全局啟用插件#
- 從網站左邊 Menu 中
外掛插件頁面中,點選右上角的新增外掛插件:

- 點選後,選擇
分析及監控頁籤,並啟用 Datadog,填寫內容參考欄位配置說明,設定成功後,任何請求(不分服務、路由、用戶)的指標會發送至 Datadog agent。
在服務端上啟用插件#
- 從網站左邊 Menu 中
服務 > 服務列表頁面中,選擇要啟用此插件的服務,假設為google,點選對應的編輯按鈕:

- 在編輯畫面中,點選上方的
外掛插件頁籤,再點選頁籤內容上方的新增外掛插件按鈕:

點選後,選擇 分析及監控 頁籤,並啟用 Datadog,填寫內容參考欄位配置說明,設定成功後,僅有此服務(範例為google)請求的指標會發送至 Datadog agent。
在路由端上啟用插件#
可以由兩種方式來選擇路由,並啟用插件:
方式一:路由列表#
- 從網站左邊 Menu 中
服務 > 路由列表頁面中,選擇要啟用此插件的路由,假設為google,點選對應的編輯按鈕:

方式二:服務 > 服務列表 > 路由列表#
- 從網站左邊 Menu 中
服務 > 服務列表頁面中,選擇要啟用此插件的路由 所屬之服務(假設為google),點選對應的編輯按鈕。
在編輯畫面中,點選上方的 路由 頁籤,選擇要啟用此插件的路由(假設為 google),點選對應的編輯按鈕:

- 承第1步,點擊上述兩種方式之一的編輯按鈕後,在編輯畫面中,點選上方的
外掛插件頁籤,再點選頁籤內容上方的新增外掛插件按鈕:

點選新增外掛插件 按鈕後,選擇 分析及監控 頁籤,並啟用 Datadog,填寫內容參考欄位配置說明,設定成功後,僅有此路由(範例為google)請求的指標會發送至 Datadog agent。
在用戶端上啟用插件#
- 從網站左邊 Menu 中
訂閱用戶 > 用戶列表頁面中,選擇要啟用此插件的用戶,假設為portaladmin,點選對應的編輯按鈕:

- 在編輯畫面中,點選上方的
外掛插件頁籤,再點選頁籤內容上方的新增外掛插件按鈕:

點選後,選擇 分析及監控 頁籤,並啟用 Datadog,填寫內容參考欄位配置說明,設定成功後,僅有此用戶(範例為 portaladmin)請求的指標會發送至 Datadog agent。
驗證#
啟用插件後,並設定正確連至 Datadog agent 的資訊,透過 GOC API Gateway 去呼叫服務後,再登入 Datadog 的服務頁面,即可看到如下圖的資料:
