Zabbix监控Nginx运维操作笔记

Zabbix监控Nginx运维操作笔记。

Zabbix监控Apache

一、开启Nginx的Status页。

  1. location /ngx_status
  2.     {
  3.         stub_status on;
  4.         access_log off;
  5.         #allow 127.0.0.1;
  6.         #deny all;
  7.     }

二、复制以下运维脚本。

  1. #!/bin/bash
  2. # DateTime: 2015-10-25
  3. HOST="127.0.0.1"
  4. PORT="80"
  5. # 检测nginx进程是否存在
  6. function  ping  {
  7.     /sbin/pidof nginx  |  wc  -l
  8. }
  9. # 检测nginx性能
  10. function  active  {
  11.     /usr/bin/curl  "http://$HOST:$PORT/ngx_status/"  2>/dev/null|  grep  'Active'  |  awk  '{print $NF}'
  12. }
  13. function  reading  {
  14.     /usr/bin/curl  "http://$HOST:$PORT/ngx_status/"  2>/dev/null|  grep  'Reading'  |  awk  '{print $2}'
  15. }
  16. function  writing  {
  17.     /usr/bin/curl  "http://$HOST:$PORT/ngx_status/"  2>/dev/null|  grep  'Writing'  |  awk  '{print $4}'
  18. }
  19. function  waiting  {
  20.     /usr/bin/curl  "http://$HOST:$PORT/ngx_status/"  2>/dev/null|  grep  'Waiting'  |  awk  '{print $6}'
  21. }
  22. function  accepts  {
  23.     /usr/bin/curl  "http://$HOST:$PORT/ngx_status/"  2>/dev/null|  awk NR==3  |  awk  '{print $1}'
  24. }
  25. function  handled  {
  26.     /usr/bin/curl  "http://$HOST:$PORT/ngx_status/"  2>/dev/null|  awk NR==3  |  awk  '{print $2}'
  27. }
  28. function  requests  {
  29.     /usr/bin/curl  "http://$HOST:$PORT/ngx_status/"  2>/dev/null|  awk NR==3  |  awk  '{print $3}'
  30. }
  31. # 执行function
  32. $1

将上述脚本保存为“ngx_status.sh”。

三、添加自定义文件。

  1. UserParameter=nginx.status[*],/app/scripts/ngx-status.sh $1

四、Zabbix Server测试

  1. zabbix_get  -s 192.168.0.229 -k nginx.status[active]

♥♥♥♥♥导入模板。模板中的某些值是差值,要注意哦。

 

本文转自《运维生存时间》,波波在此向原作者表示感谢。

  • 版权声明: 本文源自 运维生存时间, 于4年前,由整理发表,共 1387字。
  • 原文链接:点此查看原文
你想把广告放到这里吗?

发表评论

您必须 登录 才能发表留言!