前面幾篇講到怎麼配置 InfluxDB、Grafana,這些基礎的東西搞定之後,就可以來安裝 Agent 收集資料了,Telegraf 跟 InfluxDB 同屬於 InfluxData 旗下。Telegraf 提供了很多收集資料的方式,在 Windows 的平台,Telegraf 主要是跟 Performance Monitor 拿資料,所以基本上可以拿到不少的資訊
架構
Telegraf 把 Windows 上的 Performance Counters 上的數據收集起來放到 InfluxDB 資料庫裡面,下圖出自:https://www.influxdata.com/blog/monitoring-windows-services-with-grafana-influxdb-and-telegraf/
開始之前,前面兩篇提到的 InfluxDB、Grafrana 安裝配置,要先看一下
[Grafana] 如何安裝及配置 Grafara Dashboard
環境
- Windows 10
- Telegraf 1.13.4
- Granfana 6.6.2
- InfluDB 1.7.10
- SQL Server 2012 Derver 2012 Develop
安裝 Telegraf
下載頁面
https://portal.influxdata.com/downloads/
下載連結
https://dl.influxdata.com/telegraf/releases/telegraf-1.13.4_windows_amd64.zip
解壓縮、用命令提示字元切換到切換到 telegraf 目錄
執行檔案
輸入 telegraf.exe --config telegraf.conf
執行檔案變成 Windows Service
記得要用管理員權限開啟命令提示字元唷
安裝服務:telegraf.exe --config "D:\Lab\Monitor Server\telegraf-1.13.4_windows_amd64\telegraf\telegraf.conf" --service install
啟動服務:sc start telegraf
查詢服務:sc query telegraf
Telegraf.exe本身就能做服務的管理,我只是習慣用 sc.exe
下圖出自 https://github.com/influxdata/telegraf/blob/master/docs/WINDOWS_SERVICE.md
參考
https://github.com/influxdata/telegraf/blob/master/docs/WINDOWS_SERVICE.md
https://docs.influxdata.com/telegraf/v1.13/administration/windows_service/#running-telegraf-as-a-windows-service
檢視 Influxdb
完成之後,再去看 influxdb 有沒有 telegraf 資料庫
Influxdb 的安裝配置,請參考:[InfluxDB] 如何安裝及配置 InfluxDB
> influx.exe
> show databases
> use telegraf
> show measurements
Telegraf 如何運作
Plugin type
Telegraf 是一個 Plugin 驅動的代理服務,可以收集,處理,匯總和編寫指標。它支持四種 Plugin,包括 input、output、aggregator and processor
https://docs.influxdata.com/telegraf/v1.13/plugins/plugin-list/
Input
telegraf 執行成功就會開始收集資料到 influxdb,telegraf.conf / Input 裡面定義要收集哪一些資訊
這些資訊對應到 Performance Counters
這裡有相當多的 Performance Monitor 設定
https://github.com/influxdata/telegraf/blob/master/etc/telegraf.conf
https://github.com/influxdata/telegraf/tree/master/plugins/inputs/win_perf_counters
除了 Performance Counters 也支援 WMI,不過預設是關閉的
更多的 Input
https://docs.influxdata.com/telegraf/v1.13/plugins/plugin-list/
https://github.com/influxdata/telegraf/tree/master/plugins/inputs/
Output
資料收集輸位置,預設會存放在本機的 InfluxDB
位置:http://localhost:8086
資料庫:telegraf
當然也可以設定別的位置
不同的 URL,用逗點隔開 urls = ["http://127.0.0.1:8086","http://influxdb:8086"]
參考
https://docs.influxdata.com/telegraf/v1.13/plugins/plugin-list/#output-plugins
Aggregator
Aggregator Plus 可創建聚合指標(例如,平均值,最小值,最大值,分位數等)
參考
https://docs.influxdata.com/telegraf/v1.13/plugins/plugin-list/#aggregator-plugins
Processor
Processor Plus 可以轉換,修飾和過濾指標。
參考
https://docs.influxdata.com/telegraf/v1.13/plugins/plugin-list/#processor-plugins
Grafana
Grafana 的安裝配置,請參考:[Grafana] 如何安裝及配置 Grafara Dashboard
新增資料來源
新增 Dashboard
新增一個 Dashboard → Graph Panel,這時候,可以看到 InfluxDB 裡面收集了 win_ 開頭的資料,也可以針對他寫查尋條件
匯入報表
一個一個設定 Panel,是一件相當累人的事,所以我到官網搜尋有沒有中意的 Dashboard,打算抓下來改
https://grafana.com/grafana/dashboards?search=telegraf
最後 928 (https://grafana.com/grafana/dashboards/928) 看起來配置還不錯,不過他是使用 WMI,還要修改一下組態設定的 Inputs
畫面有東西了,不過還有很多 Panel 需要調整,框起來的地方把一些參數也抽出來了,到時候可以再針對不同的條件查詢
更新:
番號 1902 (https://grafana.com/grafana/dashboards/1902) 是用 Performance Counters 收集資料,我改用這個
若有謬誤,煩請告知,新手發帖請多包涵
Microsoft MVP Award 2010~2017 C# 第四季
Microsoft MVP Award 2018~2022 .NET