内容目录
华三防火墙F5000
的log
日志已经转存到logstash
虚机上,然后对日志数据经过结构化处理后再转存到elastic
上存储
zabbix
如何监控日志中的错误信息(如含有关键字failed、error、down
)然后触发告警?
logstash虚机上创建zabbix自定义用户参数
cat /etc/zabbix/zabbix_agent2.d/default.conf
UserParameter=system.log,tac /var/log/network/h3c/$(date +%Y_%m_%d)-x.x.x.x.log 2> /dev/null | egrep -i "fail|error|down" | head -1
# rsyslog配置
cat /etc/rsyslog.conf
$umask 0000
$FileCreateMode 0755 # 新建的日志文件的权限需让其他用户可读
# agent端测试
zabbix_agent2 -t system.log
system.log [s|Oct 15 19:30:39 2024 FW1 %%10LB/5/LB_CHANGE_LINKQUOTE_PROBERESULT: -DevIP=x.x.x.x; The probe state of (link group dx,link dx) template dx was changed to Failed.]
# server端测试
zabbix_get -s x.x.x.x -k system.log
Oct 15 19:30:39 2024 FW1 %%10LB/5/LB_CHANGE_LINKQUOTE_PROBERESULT: -DevIP=x.x.x.x; The probe state of (link group dx,link dx) template dx was changed to Failed.
zabbix sever web新建监控项
需进行预处理,丢弃未变化的值以及丢弃为空行的值(匹配空行的保留,取反即是为匹配空行的丢弃)
F5000
的日志文件以时间做文件名,新的一天开始的时候可能还没生成日志文件
配置触发器
{x.x.x.x:system.log.diff()}=1
问题表达式为监控项的值不一样时触发告警(相当于system.log
监控项有新的值)
注意:问题事件生成模式需配置为多重,这样当告警未恢复时可以多次触发告警。
- 效果如下:
华三防火墙配置
华三F5000
需配置info-center syslog utf-8 enable
不然,rsyslog
主机中生成的日志文件的编码格式是latin1
,导致中文乱码。
留言