huandada

由于我们常用的node_exporter并不能覆盖所有监控项,这里我们使用Process-exporter 对进程进行监控。

安装process-exporter

wget https://github.com/ncabatoff/process-exporter/releases/download/v0.4.0/process-exporter-0.4.0.linux-amd64.tar.gz
tar -xvf  process-exporter-0.4.0.linux-amd64.tar.gz -C /usr/local/

创建配置文件

可用的模板变量:
{{.Comm}} 包含原始可执行文件的basename,/proc//stat 中的换句话说,2nd 字段
{{.ExeBase}} 包含可执行文件的basename
{{.ExeFull}} 包含可执行文件的完全限定路径
{{.Matches}} 映射包含应用命令行tlb所产生的所有匹配项

定义进程名监控

Process-exporter 可以进程名字匹配进程,获取进程信息。匹配规则由name对应的模板变量决定,以下表示监控进程名字为nginx 与 zombie 的进程状态

vim process-name.yaml
process_names:
  - name: "{{.Matches}}"
    cmdline:
    - \'nginx\'

  - name: "{{.Matches}}"
    cmdline:
    - \'zombie\'

重启服务

./process-exporter -config.path process-name.yaml &

查看数据

curl http://localhost:9256/metrics   > ccc

可以看到关于nginx进程的多个指标,以下框内为进程状态对应的进程数

定义全部进程监控

vim conf.yaml
process_names:
  - name: "{{.Comm}}"
    cmdline:
    - \'.+\'

重启服务

./process-exporter -config.path conf.yaml

查看所有监控项

curl http://localhost:9256/metrics

Prometheus加上此数据源 ip:9256
在Prometheus的web界面可查询需要的进程信息

常用进程监控项

总进程数
sum(namedprocess_namegroup_states)

总僵尸进程数
sum(namedprocess_namegroup_states{state="Zombie"})

分类:

技术点:

相关文章:

  • 2021-10-16
  • 2021-12-23
  • 2020-04-16
  • 2019-03-28
  • 2021-12-05
  • 2021-10-18
  • 2022-01-07
  • 2021-11-06
猜你喜欢
  • 2021-11-18
  • 2021-12-23
  • 2021-05-25
  • 2019-08-15
  • 2019-08-07
  • 2021-08-20
  • 2021-11-30
相关资源
相似解决方案