999
群英
自定義監控__日誌和監控_用戶指南_容器服務-阿裏雲
容器監控服務集成了阿裏雲雲監控服務,為您提供涵蓋容器、應用、集群、節點的監控與告警服務,滿足了容器監控的基本需求。但是在很多業務場景中,您可能需要自定義監控以滿足您係統和應用的監控需求,所以容器監控服務在基礎監控能力以外,還提供了兩種自定義監控方式來允許您通過自己編寫數據采集腳本或者自己暴露 HTTP 監控數據接口來上報自定義的監控數據。容器服務監控框架會按照每分鍾采集一次的頻率來執行腳本或者調用 HTTP 接口來采集數據。
前提條件
使用自定義監控功能之前,您必須將容器監控服務與第三方監控方案進行集成 (詳細信息參見 第三方監控方案集成)。
注意:目前,容器服務監控集成默認隻支持 InfluxDB 和 Prometheus。
您的自定義監控數據會上報給您的 InfluxDB 或 Prometheus,然後再對接您的數據展示和分析服務。
使用自定義監控腳本上報監控數據
構建 Docker 鏡像,在鏡像中添加自定義的數據采集腳本。
采集腳本的輸出數據必須遵守 InfluxDB 的數據格式協議,如下所示。
weather,location=us-midwest temperature=82 1465839830100400200
| -------------------- -------------- |
| | | |
| | | |
+-----------+--------+-+---------+-+---------+
|measurement|,tag_set| |field_set| |timestamp|
+-----------+--------+-+---------+-+---------+
更詳細的數據格式協議,參見 InfluxDB 數據協議 Line Protocol。
登錄 容器服務管理控製台,使用編排模板創建應用,使用
aliyun.monitoring.script
標簽聲明監控服務用於采集數據的腳本。示例模板如下所示:
custom-script:
image: '您自己的鏡像倉庫地址'
labels:
aliyun.monitoring.script: "sh gather_mem.sh"
aliyun.monitoring.script
定義了監控服務執行應用容器內什麼命令來收集監控數據。對應的 label 配置方式如下所示。labels:
aliyun.monitoring.script: "執行腳本的命令"
打開 InfluxDB 的 web 端管理界麵,查看以數據指標名稱為表名的數據庫表。
有關如何查看數據庫表,參見 第三方監控方案集成 中的相關信息。
使用自定義 HTTP 監控數據接口采集數據
構建 Docker 鏡像,在應用中對外暴露 HTTP 接口。
該接口輸出監控數據。您可以自定義監控數據的格式,隻需符合 JSON 語法即可。此外,由於係統不能分辨自定義的 HTTP 接口返回的 JSON 數據中哪些是數據指標字段,哪些是數據指標的元數據標簽,所以您還需要另外一個配置項來指明 JSON 數據中哪些數據的屬性是 tag。具體可參考 Telegraf JSON 數據格式。
登錄 容器服務管理控製台,使用編排模板創建應用。您需要在模板中填加
aliyun.monitoring.http
標簽來聲明采集數據的接口,使用aliyun.monitoring.tags: "您自己的 tag 屬性名 1, 您自己的 tag 屬性名 2, ……"
聲明 HTTP 數據接口返回的數據字段中哪些的屬性是 tag。參考模板:
nodejsapp:
command: "bash /run.sh"
ports:
- "3000:3000"
image: '您自己的鏡像倉庫地址'
labels:
aliyun.monitoring.http: "https://container:3000/metrics/data"
aliyun.monitoring.tags: "tag1,tag2"
nodejsapp 應用對外暴露的數據接口
https://container:3000/metrics/data
返回的數據如下所示:{
"tag1": "tag1value",
"tag2": "tag2value",
"field1": 1,
"field2": 2,
"field3": true,
"field4": 1.5
}
使用
aliyun.monitoring.tags: "tag1,tag2"
定義上報的 JSON 數據中,tag1 屬性和 tag2 屬性為上報數據的 tag。打開 InfluxDB 的 web 端管理界麵,查看以
httpjson_
前綴加容器名稱為表名的的數據庫表。例如,容器名稱為
nodejsapp_nodejsapp_1
,則 InfluxDB 中數據庫表的表名為httpjson_nodejsapp_nodejsapp_1
。有關如何查看數據庫表,參見 第三方監控方案集成 中的相關信息。
最後更新:2016-12-12 16:48:18
上一篇:
第三方監控方案集成__日誌和監控_用戶指南_容器服務-阿裏雲
下一篇:
節點自動伸縮__日誌和監控_用戶指南_容器服務-阿裏雲
鏡像複製FAQ__ECS常見問題_產品使用問題_雲服務器 ECS-阿裏雲
安全管家應急服務處理非安全問題嗎?__常見問題_產品常見問題_安全管家服務-阿裏雲
將路由器接口置為非激活__高速通道相關接口_API 參考_雲服務器 ECS-阿裏雲
配置後端 ECS 實例__快速入門_負載均衡-阿裏雲
PHP SDK 曆史迭代版本__曆史版本 SDK 下載_SDK 參考_表格存儲-阿裏雲
萬網域名使用萬網企業郵箱,設置解析方法__郵箱解析_產品使用問題_雲解析-阿裏雲
DRDSReader__Reader插件_使用手冊_數據集成-阿裏雲
創建數據遷移任務__快速入門_數據傳輸-阿裏雲
應用限製__MapReduce_大數據計算服務-阿裏雲
指定寬高縮略__圖片縮放_老版圖片服務手冊_對象存儲 OSS-阿裏雲
相關內容
常見錯誤說明__附錄_大數據計算服務-阿裏雲
發送短信接口__API使用手冊_短信服務-阿裏雲
接口文檔__Android_安全組件教程_移動安全-阿裏雲
運營商錯誤碼(聯通)__常見問題_短信服務-阿裏雲
設置短信模板__使用手冊_短信服務-阿裏雲
OSS 權限問題及排查__常見錯誤及排除_最佳實踐_對象存儲 OSS-阿裏雲
消息通知__操作指南_批量計算-阿裏雲
設備端快速接入(MQTT)__快速開始_阿裏雲物聯網套件-阿裏雲
查詢API調用流量數據__API管理相關接口_API_API 網關-阿裏雲
使用STS訪問__JavaScript-SDK_SDK 參考_對象存儲 OSS-阿裏雲