<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                ??碼云GVP開源項目 12k star Uniapp+ElementUI 功能強大 支持多語言、二開方便! 廣告
                ## 一、軟件環境介紹 ### 1.1 為什么要監控進程 之前我們做的監控對象,大多數是比較成熟的中間件(redis、tomcat、springboot程序、mysql程序等等),實際的企業業務運行過程匯總,可能出現tomcat容器依然存活、但是其中運行的javaweb程序掛掉的情況(或者mysql-docker容器存在,依然往外統計數據拋數據,但是容器內的mysql進程掛掉的情況)。 因此,對業務訪問鏈路中的核心進程施加監控,是非常有必要的。 ![](https://img.kancloud.cn/86/fe/86fec3b20f1a9f466f5d3c351bb7f892_945x213.png) ### 1.2 怎么在prometheus中監控進程 如果想要對主機的進程進行監控,例如chronyd,sshd等服務進程以及自定義腳本程序運行狀態監控。我們使用node exporter就不能實現需求了,此時就需要使用process-exporter來做進程狀態的監控。 ### 1.3 主機清單 職責 | ip地址 | 備注 Prometheus服務器 | 192.168.100.85 | docker機式的prometheus 待監控Linux | 192.168.100.141 | 待準備組件: process-exporter <hr> ## 二、prometheus監控process-exporter ### &nbsp;&nbsp;&nbsp;2.1 docker安裝(略) ### &nbsp;&nbsp;&nbsp;2.2 docker-compose安裝(略) ### &nbsp;&nbsp;&nbsp;2.3 安裝process-exporter &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;創建process_exporter目錄 mkdir /data/process_exporter -p cd /data/process_exporter # 創建配置文件 #Process-Exporter 的做法是配置備要監控的進程的名稱,他會去搜索該進程從面得到其落要 #監控控所有進程 mkdir config cat >>config/process.yml <<"EOF" process_names: - name: "{{.Comm}}" #匹配模板 cmdline: - '.+' # 匹配所有名稱 EOF &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;創建docker-compose.yaml vim docker-compose.yaml &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;配置如下: services: process-exporter: image: registry.cn-hangzhou.aliyuncs.com/ldw520/process-exporter:latest container_name: process_exporter restart: always privileged: true volumes: - /proc:/host/proc - /data/process_exporter/config:/config command: --procfs /host/proc -config.path /config/process.yml ports: - "9256:9256" &nbsp;&nbsp;&nbsp;啟動 docker-compose.yaml docker-compose up -d &nbsp;&nbsp;&nbsp;查看docker的信息 docker images docker ps -a &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;宿主機上訪問process-exporter的metrics http://192.168.100.141:9256/metrics <hr> ## &nbsp;&nbsp;&nbsp;2.6 prometheus服務器添加process-exporter的地址 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;192.168.100.85的centos上,修改prometheus的配置文件 #進入docker-prometheus目錄 cd /data/docker-prometheus #修改prometheus.yml vi prometheus/prometheus.yml &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;添加process-exporter配置如下圖: ![](https://img.kancloud.cn/0d/40/0d407d225e9bdcfdad53daf39f9bd6ec_763x570.png) - job_name: "process-exporter" static_configs: - targets: ["192.168.100.141:9256"] labels: istance: "centos2服務器進程監聽" &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;保存后輸入命令更新: curl -XPOST http://localhost:9090/-/reload &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;成功監聽 ![](https://img.kancloud.cn/30/45/3045fdb22cd2d0230a4a243f75fb1d9b_1764x196.png) <hr/> ## 三、常用的進程監控指標 | 指標名稱 | 含義 | namedprocess_namegroup_num_procs | 運行的進程數 | namedprocess_namegroup_num_threads | 線程數 | namedprocess_namegroup_states | Running/Sleeping/other/Zombie狀態的進程數 | namedprocess_namegroup_cpu_seconds_total | 獲取/proc/[pid]/stat 進程CPUutime、stime狀態時間 | namedprocess_namegroup_read_bytes_total | 獲取/proc/[pid]/io 進程讀取字節 | namedprocess_namegroup_write_bytes_total | 獲取/proc/[pid]/io 進程寫入字節數 | namedprocess_namegroup_memory_bytes | 獲取進程使用的內存字節數 | namedprocess_namegroup_open_filedesc | 獲取進程使用的文件描述符數量 | namedprocess_namegroup_worst_fd_ratio | 進程文件描述符使用率 | namedprocess_namegroup_thread_count | 客器當前的內存使用量 | namedprocess_namegroup_thread_cpu_seconds_total | 獲取線程CPU狀態時間 | namedprocess_namegroup_thread_io_bytes_total | 獲取線程IO字節數 ### 3.1grafana中對process-exporter進行監控 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;copy id to clipboard->grafana的dashboards中lmport dashboard https://grafana.com/grafana/dashboards/8378-system-processes-metrics/ ![](https://img.kancloud.cn/8b/98/8b98c2d16074026288f2d2a03dd74848_1776x725.png) ![](https://img.kancloud.cn/cf/76/cf76185089dae782e5c405b5a8ccde8d_1880x785.png) 解決process-exporter升級到0.5.0之后,cpu相關的兩個圖形不顯示數據的問題Top processes By Total CPU cores used圖)形腳本 topk(5,rate(namedprocess_namegroup_cpu_seconds_total{groupname=~"$processes",instance=~"$host"}[$interval]) or (irate(namedprocess_namegroup_cpu_seconds_total{groupname=~"$processes",instance=~"$host"}[5m]))) Top processes by System CPU cores used topk(5,rate(namedprocess_namegroup_cpu_seconds_total{mode="system",groupname=~"$processes",instance=~"$host"}[$interval]) or (irate(namedprocess_namegroup_cpu_seconds_total{mode="system",groupname=~"$processes",instance=~"$host"}[5m])))
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看