Wmi_exporter 說明
在Windows 系統之中收集一系列的量測指標值, 如: 系統的資源、AD、HyperV、IIS、.NET、用戶、SQL server、MSMQ、TCP 連線…等, 詳細如下表的收集器清單。並將這些量測值回報給 Prometheus做為儲存記錄。這些量測值有部份是預設打開,可以按實際的需要來關閉或是開啟, 所以使用wmi_exporter 做為資料收集器時,只需一個收集器就可以同時收集多個量測值的維度。方法如下說明。
Wmi_exporter 安裝及設定
- master下載點: https://github.com/martinlindhe/wmi_exporter
- exe & msi 下載點: https://github.com/martinlindhe/wmi_exporter/releases
- Exe : wmi_exporter-0.11.1-amd64.exe , Msi : wmi_exporter-0.11.1-amd64.msi
使用exe 方式執行時, 用 wmi_exporter.exe /? 來查閱參數, 使用msi 安裝成”服務”時, 若不帶參數時以預設的收集器清單和Port為回應。最簡單的方法是直接使用msi 並以預設值安裝成”服務”, 在安裝完成後可以在安裝的主機上開啟瀏覽器 http://localhost:9182/metrics, 來檢查即可看到回傳的資料值。可使用的參數為下表:
Name | Description |
ENABLED_COLLECTORS | 如同命令列的 –collectors.enabled 參數, 多個收集器時用逗號分隔. 如下例句 |
LISTEN_ADDR | 綁定的IP位址. 預設為0.0.0.0 |
LISTEN_PORT | 綁定的端口埠. 預設為9182. |
METRICS_PATH | 量測值路徑.預設值為 /metrics |
TEXTFILE_DIR | 如同命令列的 –collector.textfile.directory 參數, 量測值中若要使用文字檔時的目錄指向。 |
EXTRA_FLAGS | Allows passing full CLI flags. Defaults to an empty string. |
例句
- 只要回應 os & iis 的 metrics 並且端口為 5000(預設為9182) >> msiexec /i wmi_exporter-0.7.0-amd64.msi ENABLED_COLLECTORS=os,iis LISTEN_PORT=5000
- 含hyperV >> msiexec /i wmi_exporter-0.7.0-amd64.msi ENABLED_COLLECTORS=os,cpu,cs,hyperv,logical_disk,memory,net,service,system
- 相等於命令列 >> .\wmi_exporter.exe –collectors.enabled “os,cpu,cs,hyperv,logical_disk,memory,net,service,system“
收集器清單(collectors)
預設收集器
Name | Description | Enabled by default |
cpu | CPU 使用量: 頻率及使用率 | ✓ |
cs | 系統CPU數量, 實際記憶體容量 | ✓ |
logical_disk | 硬碟的容量大小, 休息秒數, 讀寫時間, | ✓ |
net | 各個網路介面的收送傳輸量, 界面規格以及其它統計量 | ✓ |
os | OS metrics (memory, processes, users) 作業系統的量測值, 如: paging, users, virtual memory, … |
✓ |
service | 系統服務的目前, 啟動狀態 | ✓ |
system | System calls, contact switch, system queue, 系統啟動時間, 線程 | ✓ |
textfile | Read prometheus metrics from a text file | ✓ |
其它收集器
Name | Description | Name | Description |
ad | Active Directory 網域服務 | netframework_clrjit | .NET Framework JIT metrics |
adfs | Active Directory 同盟服務 | netframework_clrloading | .NET Framework CLR Loading metrics |
container | 容器 | netframework_clrlocksandthreads | .NET Framework locks and metrics threads |
dns | DNS Server | netframework_clrmemory | .NET Framework Memory metrics |
hyperv | Hyper-V hosts | netframework_clrremoting | .NET Framework Remoting metrics |
iis | IIS sites and applications | netframework_clrsecurity | .NET Framework Security Check metrics |
logon | User logon sessions | process | Per-process metrics |
memory | Memory usage metrics | remote_fx | RemoteFX protocol (RDP) metrics |
msmq | MSMQ queues | tcp | TCP connections |
mssql | SQL Server Performance Objects metrics | thermalzone | Thermal information |
netframework_clrexceptions | .NET Framework CLR Exceptions | terminal_services | Terminal services (RDS) |
netframework_clrinterop | .NET Framework Interop Metrics | vmware | Performance counters installed by the Vmware Guest agent |