首页 > 系统相关 >zabbix应用教程:基于Nginx页面响应的日志监控用例

zabbix应用教程:基于Nginx页面响应的日志监控用例

时间:2024-08-01 14:28:30浏览次数:7  
标签:log 用例 Nginx zabbix 监控 日志 nginx 响应 页面

作者 乐维社区(forum.lwops.cn)许远

背景:某公司基于 Nginx 服务器搭建的网站,需要监控页面响应耗时的数据,因此该公司搭建了zabbix开源监控系统,当监控到页面响应时间超过3000ms阈值时,就进行告警通知。本文将通过日志关键字的监控来实现对页面响应时间感知,示例Zabbix版本:5.0.9。

日志文件监控介绍

监控日志的两种key(log和logtr),本文只针对log 进行介绍。

log[file,<regexp>,<encoding>,<maxlines>,<mode>,<output>,<maxdelay>]

 file:日志文件(必须填写绝对路径)。

 regexp:要匹配内容的正则表达式,或者直接写你要检索的内容也可以,例如我想检索带ERROR关键词的记录

encoding:编码相关,留空即可

 maxlines:一次性最多提交多少行,这个参数覆盖配置文件zabbxi_agentd.conf中的’MaxLinesPerSecond’,我们也可以留空

 mode:默认是all,也可以是skip,skip会跳过老数据

 output:输出给zabbix server的数据。可以是\1、\2一直\9,\1表示第一个正则表达式匹配出得内容,\2表示第二个正则表达式匹配错的内容。

 maxdelay: 最大延迟(秒)。 类型:float。 值:0-(默认)不忽略日志文件行; > 0.0-忽略旧行,以便在“maxdelay”秒内获取最近分析的行。

日志监控注意事项

Zabbix Server和Zabbix Agent会追踪日志文件的大小和最后修改时间,并且分别记录在字节计数器和最新的时间计数器中。

Agent会从上次读取日志的地方开始读取日志。

字节计数器和最新时间计数器的数据会被记录在Zabbix数据库,并且发送给Agent,这样能够保证Agent从上次停止的地方开始读取日志。

当日志文件大小小于字节计数器中的数字时,字节计数器会变为0,从头开始读取文件。

Zabbix Agent每秒发送日志量,有一个日志行数上限,防止网络和CPU负载过高,这个数字在zabbix_agentd.conf中的MaxLinePerSeco

 创建日志监控项

 

 

名称: 自定义。

  类型: Zabbix客户端(主动式)。(日志类型监控必须使用主动式)

  键值: log[/itops/nginx/logs/nginx.log,页面响应耗时:,UTF-8,,skip,]

  键值含义:

          /itops/nginx/logs/nginx.log    # 日志绝对路径

      页面响应耗时: # 正则表达式,匹配日志中包含“页面响应耗时:”行。

  UTF-8 # 日志文件编码

  skip # 跳过旧数据的处理 (仅影响新创建的监控项)。

  信息类型: 选择“日志”。

创建触发器

 

表达式:

{192.168.3.28:log[/itops/nginx/logs/nginx.log,页面响应耗时:,UTF-8,,skip,].iregexp("(?<=页面响应耗时:)([3-9]\d{3,}|[1-9]\d{4,})")}=1

参数含义:

iregexp("(?<=页面响应耗时:)([3-9]\d{3,}|[1-9]\d{4,})")     # 当监测到符合正则表达式条件(页面响应耗时大于3000)时,触发器将设置为触发。

测试方法:

 

 

echo [24-7-9 14:31:29:100 CST]  页面响应耗时:3000  >> nginx.log

成功触发告警

 

测试完成。

以上就是本期的全部内容,更多运维技巧欢迎关注乐维社区,更多运维问题也欢迎到乐维社区留言提问。

 

标签:log,用例,Nginx,zabbix,监控,日志,nginx,响应,页面
From: https://www.cnblogs.com/lwops/p/18336597

相关文章

  • Zabbix监控模式及proxy代理
    一、zabbix主动与被动监控模式被动模式和主动模式都是相对于agent客户端而言的主动模式:客户端主动将数据发给server或者proxy被动模式:server或者proxy主动去找客户端索要数据1.被动模式默认是被动模式被动模式是说zabbixagent被动的接受zabbixserver周期性发送......
  • 超详细的MySQL CRUD 并配备了大量的测试用例, 包教包会
    MySQL数据库表的增删查改CRUD:Create(创建),Retrieve(读取),Update(更新),Delete(删除)Create​INSERT[INTO]table_name[(column[,column]…)]VALUES(value_list)[,(value_list)]…value_list:value,[,value]…insert语句主要有两种情况,一种是全行插......
  • zabbix清除历史监控数据
    zabbix监控运行一段时间以后,会留下大量的历史监控数据,zabbix数据库一直在增大;可能会造成系统性能下降,查看历史数据室查询速度缓慢,图形出现断图现象,隔几秒出现断图,发现CPU采集数据的时候使用率都是100%,如下图 zabbix里面最大的表就是history和history_uint两个表,而且zabbix里面......
  • zabbix“专家坐诊”第249期问答
    问题一Q:zabbixserver服务每次重启监控主机就会触发大量的“10分钟未获取到数据”的告警,同时还会触发zabbix的history进程繁忙的告警。(后面检查实际上监控主机在告警时间段内是有数据的)感觉是server一重启,数据库就重新写入数据,需要花超过10分钟的时间,告警时间段内没来得及写入数......
  • 内网穿透公众号开本地nginx发环境配置(花生壳和量子互联)
    昨天搞了一天,这儿总结一下,免得以后忘了 nginx收入80端口  所以穿透的工具局域网设80    其它端口根据软件应用配置花生壳的通道要选https  量子互联的话tcp配置启动https就可以nginx 我用1.24没有能成功  1.20成功了,不知道啥原因nginx配置时注意全文,都......
  • 02.Nginx的安装与Dockerfile的编写
    获取nginx安装包地址:https://nginx.org/en/download.htmlMainlineversion:Mainline是Nginx目前主力在做的版本,可以说是开发版Stableversion:最新稳定版,生产环境上建议使用的版本Legacyversions:遗留的老版本的稳定版我们下载linux上的安装包tar.gz结尾的,右键复制链接即......
  • nginx配置
    nginx配置安装nginx‍安装所需插件yum-yinstallgccyuminstall-ypcrepcre-develinstall-yzlibzlib-develyuminstall-yopensslopenssl-devel下载安装包编译或上传nginx-1.26.1.tar.gzwgethttps://nginx.org/download/nginx-1.26.1.tar.gztar-xzfng......
  • 借助 NGINX 对本地的 Kubernetes 服务进行自动化的 TCP 负载均衡
    原文作者:ChrisAkker-F5技术解决方案架构师,SteveWagner-F5NGINX解决方案架构师原文链接:借助NGINX对本地的Kubernetes服务进行自动化的TCP负载均衡转载来源:NGINX中文官网NGINX唯一中文官方社区,尽在 nginx.org.cn作为一名现代应用开发人员,您不仅使用一......
  • [SUCTF 2019]Pythonginx (unicode转IDNA域名分割漏洞)
    代码我看到这两个就感觉有问题了,第一个转编码这个搜了一下是unicode转idna的问题,第二个urlopen是Python标准库中urllib.request模块中的一个函数,用于向指定的URL发送HTTP请求并获取响应参考文章:https://xz.aliyun.com/t/6070?time__1311=n4%2BxnD0DgDcmG%3DrDsYoxCqiIQ7KDtH......
  • Nginx最简学习网站——Nginx 极简教程
    教程地址https://dunwu.github.io/nginx-tutorial/#/nginx-quickstart以配置静态站点为例worker_processes1;events{worker_connections1024;}http{includemime.types;default_typeapplication/octet-stream;sendfileon;......