zoukankan      html  css  js  c++  java
  • Prometheus — Process-exporter进程监控

    由于我们常用的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"})

  • 相关阅读:
    C语言学习代码〈二〉
    C语言学习笔记<三 >
    C语言学习笔记<一 >
    C语言学习代码〈四〉
    C语言学习代码〈三〉
    C语言学习笔记<五>
    C语言学习笔记<四>
    C语言学习笔记<二 >
    C语言学习代码<一> .
    周末练习
  • 原文地址:https://www.cnblogs.com/huandada/p/10431667.html
Copyright © 2011-2022 走看看