激情久久久_欧美视频区_成人av免费_不卡视频一二三区_欧美精品在欧美一区二区少妇_欧美一区二区三区的

服務器之家:專注于服務器技術及軟件下載分享
分類導航

云服務器|WEB服務器|FTP服務器|郵件服務器|虛擬主機|服務器安全|DNS服務器|服務器知識|Nginx|IIS|Tomcat|

服務器之家 - 服務器技術 - 服務器知識 - Prometheus 做Post 接口請求監控

Prometheus 做Post 接口請求監控

2022-01-05 23:20運維研習社 服務器知識

運維過程中,很多時候,業務應用會出現假死的情況,應用進程正常,但是無法提供服務,此時監控進程沒有任何意義,就需要監控接口

Prometheus 做Post 接口請求監控

運維過程中,很多時候,業務應用會出現假死的情況,應用進程正常,但是無法提供服務,此時監控進程沒有任何意義,就需要監控接口

接口監控的方法很多,可以用鏈路監控,可以寫腳本進行監控

由于監控整體采用的是prometheus,所以這里就直接用blackbox_exporter來做接口的監控

blackbox_exporter可以通過http、https、dns、tcp、ICMP對target進行探測,dns、tcp、ICMP都相對簡單,我這邊主要是要監控一個登錄接口,所以要用https來進行探測,具體配置方法如下

部署blockbox_exporter

  1. # 創建blackbox_exporter的目錄
  2. cd /usr/local/blackbox_exporter
  3. # 下載blackbox_exporter的包
  4. wget https://github.com/prometheus/blackbox_exporter/releases/download/v0.19.0/blackbox_exporter-0.19.0.linux-amd64.tar.gz
  5. # 解壓
  6. tar -zxvf blackbox_exporter-0.19.0.linux-amd64.tar.gz
  7. # 重命名
  8. mv blackbox_exporter-0.19.0.linux-amd64.tar.gz blackbox_exporter

用systemd管理blackbox_exporter

  1. cat > /etc/systemd/system/blackbox_exporter.service << "EOF"
  2. [Unit]
  3. Description=Blackbox Exporter
  4. Wants=network-online.target
  5. After=network-online.target
  6. [Service]
  7. User=root
  8. ExecStart=/usr/local/blackbox_exporter/blackbox_exporter/blackbox_exporter --config.file=/usr/local/blackbox_exporter/blackbox_exporter/blackbox.yml
  9. Restart=on-failure
  10. [Install]
  11. WantedBy=default.target
  12. EOF

對于blackbox_exporter管理的話,還有很多方法,你可以直接nohup后臺啟動,也可以通過supervisor進行啟動,我習慣用systemd進行管理

然后添加開機自啟動

  1. systemctl daemon-reload
  2. systemctl enable blackbox_exporter
  3. systemctl start blackbox_exporter

因為沒指定日志輸出,所以是輸出到message日志中

默認帶的blacbox.yml只是個最簡單配置,不能滿足需求,所以配置blackbox.yml中,添加一個模塊

  1. modules:
  2. xhj_login: # 模塊名稱,prometheus配置文件中要匹配
  3. prober: http # 協議
  4. timeout: 30s # 超時時間
  5. http: # 模塊的采集協議
  6. method: POST # http請求的方法
  7. preferred_ip_protocol: "ip4" # 使用的ipv4協議
  8. headers: # 配置post請求的header頭
  9. Content-Type: application/json
  10. body: ''{"mobile": "13572801829", "password": "ZWB123wyl"}'' # post請求參數

配置完成后,保存blackbox.yml,啟動blackbox_exporter

  1. systemctl start blackbox_exporter
  2. systemctl status blackbox_exporter
  3. ● blackbox_exporter.service - Blackbox Exporter
  4. Loaded: loaded (/etc/systemd/system/blackbox_exporter.service; enabled; vendor preset: disabled)
  5. Active: active (running) since Tue 2022-01-04 21:33:28 CST; 6s ago
  6. Main PID: 24679 (blackbox_export)
  7. Tasks: 7
  8. Memory: 1.9M
  9. CGroup: /system.slice/blackbox_exporter.service
  10. └─24679 /data/prometheus/blackbox_exporter/blackbox_exporter/blackbox_exporter --config.file=/data/prometheus/blackbox_exporter/blackbox_exporter/blackbox....
  11. Jan 04 21:33:28 systemd[1]: Started Blackbox Exporter.
  12. Jan 04 21:33:28 blackbox_exporter[24679]: level=info ts=2022-01-04T13:33:28.173Z caller=main.go:224 msg="Starting blackbox_exporter" version="(v...33d1ed0)"
  13. Jan 04 21:33:28 blackbox_exporter[24679]: level=info ts=2022-01-04T13:33:28.173Z caller=main.go:225 build_context="(go=go1.16.4, [email protected]:56:44)"
  14. Jan 04 21:33:28 blackbox_exporter[24679]: level=info ts=2022-01-04T13:33:28.173Z caller=main.go:237 msg="Loaded config file"
  15. Jan 04 21:33:28 blackbox_exporter[24679]: level=info ts=2022-01-04T13:33:28.174Z caller=main.go:385 msg="Listening on address" address=:9115
  16. Jan 04 21:33:28 blackbox_exporter[24679]: level=info ts=2022-01-04T13:33:28.174Z caller=tls_config.go:191 msg="TLS is disabled." http2=false
  17. Hint: Some lines were ellipsized, use -l to show in full.

配置prometheus

  1. # blackbox
  2. - job_name: "blackbox"
  3. metrics_path: /probe
  4. params:
  5. module: [xhj_login]
  6. static_configs:
  7. - targets:
  8. - https://xxx.aaa.com/api/pc/user/login/password
  9. relabel_configs:
  10. - source_labels: [__address__]
  11. target_label: __param_target
  12. - source_labels: [_param_target]
  13. target_label: instance
  14. - target_label: __address__
  15. replacement: 172.17.0.1:9115
  16. ……省略
  17. ……省略

配置完成后,保存,熱加載prometheus配置文件

  1. curl -X POST http://localhost:9090/-/reload

加載完成后,通過prometheus的UI查看下targets

Prometheus 做Post 接口請求監控

此時其實可以通過被請求端的日志就可以看到blackbox_exporter發起的請求了,我們也可以通過curl請求blackbox_exporter來進行查看

  1. # 注意這里用&符號鏈接多個參數,需要轉義
  2. curl http://172.17.0.1:9115/probe?target=https://xxx.aaa.com/api/pc/user/login/password\&module=xhj_login\&debug=true
  3. # 查看返回結果
  4. Logs for the probe:
  5. ts=2022-01-04T14:10:32.979231489Z caller=main.go:320 module=xhj_login target=https://xxx.aaa.com/api/pc/user/login/password level=info msg="Beginning probe" probe=http timeout_seconds=30
  6. ts=2022-01-04T14:10:32.979411891Z caller=http.go:335 module=xhj_login target=https://xxx.aaa.com/api/pc/user/login/password level=info msg="Resolving target address" ip_protocol=ip4
  7. ts=2022-01-04T14:10:32.986112778Z caller=http.go:335 module=xhj_login target=https://xxx.aaa.com/api/pc/user/login/password level=info msg="Resolved target address" ip=1.1.1.1
  8. ts=2022-01-04T14:10:32.986225541Z caller=client.go:251 module=xhj_login target=https://xxx.aaa.com/api/pc/user/login/password level=info msg="Making HTTP request" url=https://1.1.1.1/api/pc/user/login/password host=xxx.aaa.com
  9. ts=2022-01-04T14:10:33.05701057Z caller=main.go:130 module=xhj_login target=https://xxx.aaa.com/api/pc/user/login/password level=info msg="Received HTTP response" status_code=200
  10. ts=2022-01-04T14:10:33.057095911Z caller=main.go:130 module=xhj_login target=https://xxx.aaa.com/api/pc/user/login/password level=info msg="Response timings for roundtrip" roundtrip=0 start=2022-01-04T22:10:32.986352765+08:00 dnsDone=2022-01-04T22:10:32.986352765+08:00 connectDone=2022-01-04T22:10:32.992658409+08:00 gotConn=2022-01-04T22:10:33.038333687+08:00 responseStart=2022-01-04T22:10:33.056951457+08:00 tlsStart=2022-01-04T22:10:32.992701614+08:00 tlsDone=2022-01-04T22:10:33.038235019+08:00 end=2022-01-04T22:10:33.057074505+08:00
  11. ts=2022-01-04T14:10:33.057187486Z caller=main.go:320 module=xhj_login target=https://xxx.aaa.com/api/pc/user/login/password level=info msg="Probe succeeded" duration_seconds=0.077883376

可以看到,http_status_code 200,probe_success為1,訪問正常

添加告警

創建rules

  1. groups:
  2. - name: blackbox_networks_stats
  3. rules:
  4. - alert: PC登錄接口故障
  5. expr: probe_success == 0
  6. for: 1m
  7. labels:
  8. severity: critical
  9. annotations:
  10. summary: "PC登錄接口出現故障,無法正常登錄,請及時查看!"
  11. description: "PC登錄接口出現故障,無法正常登錄,請及時查看!"

創建完成后,熱加載prometheus配置,然后查看prometheus的rules

Prometheus 做Post 接口請求監控

Grafana添加監控圖標

監控配置完,必須得配個可視化儀表盤,直接用5345模板導入

Prometheus 做Post 接口請求監控

儀表盤中顯示接口狀態、是否使用SSL、包括SSL證書過期時間、接口狀態碼、接口請求時間和DNS解析時間

原文鏈接:https://mp.weixin.qq.com/s/0AR5ZgG57gWDHFczkC6LzQ

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 成人在线免费视频播放 | 国产在线观看91一区二区三区 | 爱高潮www亚洲精品 国产精品一区自拍 | 视频一区二区不卡 | 国产一国产一级毛片视频在线 | 精品成人av一区二区在线播放 | 日本a∨精品中文字幕在线 欧美1—12sexvideos | 国产精品毛片va一区二区三区 | 免费在线一区二区 | 欧美特黄一级视频 | 亚洲视频成人 | 麻豆国产网站 | 日韩每日更新 | 91网站在线观看视频 | 国产一级二级在线播放 | 热@国产 | 综合激情网 | 久色porn | 久久影城 | 91网页在线观看 | 美女毛片在线观看 | 91成人在线免费 | 黄色片视频观看 | 色人久久| 福利四区 | 国产一区二区三区高清 | 国产精品免费大片 | 久久久久久久久国产 | 欧产日产国产精品v | 在线观看毛片视频 | 免费日本一区二区 | 国色天香综合网 | 中国黄色一级生活片 | 91精品国 | 一级做a爰性色毛片免费1 | 国产精品中文在线 | 夜添久久精品亚洲国产精品 | 久在线播放 | 久久91久久 | 日本aaaa片毛片免费观看视频 | 免费看污视频在线观看 |