日韩无码专区无码一级三级片|91人人爱网站中日韩无码电影|厨房大战丰满熟妇|AV高清无码在线免费观看|另类AV日韩少妇熟女|中文日本大黄一级黄色片|色情在线视频免费|亚洲成人特黄a片|黄片wwwav色图欧美|欧亚乱色一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時(shí)間:8:30-17:00
你可能遇到了下面的問(wèn)題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營(yíng)銷解決方案
Prometheus做Post接口請(qǐng)求監(jiān)控

運(yùn)維過(guò)程中,很多時(shí)候,業(yè)務(wù)應(yīng)用會(huì)出現(xiàn)假死的情況,應(yīng)用進(jìn)程正常,但是無(wú)法提供服務(wù),此時(shí)監(jiān)控進(jìn)程沒(méi)有任何意義,就需要監(jiān)控接口

在豐寧等地區(qū),都構(gòu)建了全面的區(qū)域性戰(zhàn)略布局,加強(qiáng)發(fā)展的系統(tǒng)性、市場(chǎng)前瞻性、產(chǎn)品創(chuàng)新能力,以專注、極致的服務(wù)理念,為客戶提供做網(wǎng)站、網(wǎng)站建設(shè) 網(wǎng)站設(shè)計(jì)制作按需定制設(shè)計(jì),公司網(wǎng)站建設(shè),企業(yè)網(wǎng)站建設(shè),成都品牌網(wǎng)站建設(shè),全網(wǎng)營(yíng)銷推廣,成都外貿(mào)網(wǎng)站建設(shè)公司,豐寧網(wǎng)站建設(shè)費(fèi)用合理。

接口監(jiān)控的方法很多,可以用鏈路監(jiān)控,可以寫腳本進(jìn)行監(jiān)控

由于監(jiān)控整體采用的是prometheus,所以這里就直接用blackbox_exporter來(lái)做接口的監(jiān)控

blackbox_exporter可以通過(guò)http、https、dns、tcp、ICMP對(duì)target進(jìn)行探測(cè),dns、tcp、ICMP都相對(duì)簡(jiǎn)單,我這邊主要是要監(jiān)控一個(gè)登錄接口,所以要用https來(lái)進(jìn)行探測(cè),具體配置方法如下

部署blockbox_exporter

 
 
 
  1. # 創(chuàng)建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.  
  7. [Service] 
  8. User=root 
  9. ExecStart=/usr/local/blackbox_exporter/blackbox_exporter/blackbox_exporter --config.file=/usr/local/blackbox_exporter/blackbox_exporter/blackbox.yml  
  10. Restart=on-failure 
  11.  
  12. [Install] 
  13. WantedBy=default.target 
  14. EOF 

對(duì)于blackbox_exporter管理的話,還有很多方法,你可以直接nohup后臺(tái)啟動(dòng),也可以通過(guò)supervisor進(jìn)行啟動(dòng),我習(xí)慣用systemd進(jìn)行管理

然后添加開機(jī)自啟動(dòng)

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

因?yàn)闆](méi)指定日志輸出,所以是輸出到message日志中

默認(rèn)帶的blacbox.yml只是個(gè)最簡(jiǎn)單配置,不能滿足需求,所以配置blackbox.yml中,添加一個(gè)模塊

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

配置完成后,保存blackbox.yml,啟動(dòng)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.  
  12. Jan 04 21:33:28  systemd[1]: Started Blackbox Exporter. 
  13. 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)" 
  14. 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, user=root@2b025...2:56:44)" 
  15. 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" 
  16. 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 
  17. 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 
  18. 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 

加載完成后,通過(guò)prometheus的UI查看下targets

此時(shí)其實(shí)可以通過(guò)被請(qǐng)求端的日志就可以看到blackbox_exporter發(fā)起的請(qǐng)求了,我們也可以通過(guò)curl請(qǐng)求blackbox_exporter來(lái)進(jìn)行查看

 
 
 
  1. # 注意這里用&符號(hào)鏈接多個(gè)參數(shù),需要轉(zhuǎn)義 
  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. # 查看返回結(jié)果 
  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,訪問(wèn)正常

添加告警

創(chuàng)建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登錄接口出現(xiàn)故障,無(wú)法正常登錄,請(qǐng)及時(shí)查看!" 
  11.       description: "PC登錄接口出現(xiàn)故障,無(wú)法正常登錄,請(qǐng)及時(shí)查看!" 

創(chuàng)建完成后,熱加載prometheus配置,然后查看prometheus的rules

Grafana添加監(jiān)控圖標(biāo)

監(jiān)控配置完,必須得配個(gè)可視化儀表盤,直接用5345模板導(dǎo)入

儀表盤中顯示接口狀態(tài)、是否使用SSL、包括SSL證書過(guò)期時(shí)間、接口狀態(tài)碼、接口請(qǐng)求時(shí)間和DNS解析時(shí)間


分享標(biāo)題:Prometheus做Post接口請(qǐng)求監(jiān)控
網(wǎng)頁(yè)URL:http://m.5511xx.com/article/cdoosos.html