process exporter在prometheus中用於監控進程,經過process exporter,可從宏觀角度監控應用的運行狀態(譬如監控redis、mysql的進程資源等)mysql
配置文件樣例以下(process-conf.yml):git
process_names: - name: "{{.Matches}}" cmdline: - 'redis' - name: "{{.Matches}}" cmdline: - 'mysql'
{{.Comm}}
包含原始可執行文件的基本名稱,即第二個字段 /proc/<pid>/stat
{{.ExeBase}}
包含可執行文件的基名{{.ExeFull}}
包含可執行文件的徹底限定路徑{{.Username}}
包含有效用戶的用戶名{{.Matches}}
map包含應用cmdline regexps產生的全部匹配項
補充說明:name選項其實影響的是metrics中的key:groupname,以監控redis做爲例子github
前提:redis的進程信息以下:redis
[root@izx7dvghztbiorz process-exporter]# ps -ef | grep redis
redis 771 1 0 Jun05 ? 00:45:49 /usr/bin/redis-server *:6379sql
{{.Comm}} | groupname="redis-server" | exe或者sh文件名稱 |
{{.ExeBase}} | groupname="redis-server *:6379" | / |
{{.ExeFull}} | groupname="/usr/bin/redis-server *:6379" | ps中的進程完成信息 |
{{.Username}} | groupname="redis" | 使用進程所屬的用戶進行分組 |
{{.Matches}} | groupname="map[:redis]" | 表示配置到關鍵字「redis」spa |