【问题标题】:How to set Zabbix Log Monitor to start from where it left last time如何将 Zabbix Log Monitor 设置为从上次离开的位置开始
【发布时间】:2016-09-02 09:50:02
【问题描述】:

目前我正在使用 Zabbix 监控我的一台 Web 服务器,其中一项监控任务是监控 catalina 日志文件以查看是否发生任何错误。 我已经设置了 Zabbix 代理并启用了主动检查。当日志文件 catalina.log 中有匹配“ERROR”的行时,它会通知我。

但是,问题是每当添加新的错误行时,Zabbix 都会向我发送包含“错误”一词的所有行,而不仅仅是带有错误的新行。我不想要这个,因为我已经收到了那些以前的“错误”的通知。

Zabbix中日志监控的关键是

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

我设置为

log[/root/test/test2.log, "ERROR"]

我也尝试将其设置为

log[/root/test/test2.log, "ERROR",,,skip,]

但这一切都行不通。它不断向所有现有错误发送垃圾邮件。因此,我想问一下这是否是日志监控的默认方式,或者有什么方法可以实现我想要的。任何帮助,将不胜感激。

【问题讨论】:

    标签: logging server monitoring zabbix


    【解决方案1】:

    确实,skip 应该是默认值,代理不应该重新读取整个文件。这可能取决于代理版本 - 如果它是较旧的代理,请考虑升级到 Zabbix 3.0,因为 this feature request 可以为您解决问题。

    如果这已经是最新的 3.0 Zabbix 代理,则应用程序可能会做一些意想不到的事情,例如在不添加任何内容的情况下更新日志文件时间戳。在这种情况下,您必须将范围缩小到使代理重新读取文件的确切情况。

    【讨论】:

    • 我没有设置日志时间戳格式。我的日志文件只是一个虚拟测试日志文件,每行也不包含任何时间戳。那么您是否认为这可能是导致该问题的原因?
    • 不,日志时间戳格式用于解析日志行本身 - 问题可能与整个日志文件的时间戳有关。
    猜你喜欢
    • 2010-09-11
    • 1970-01-01
    • 1970-01-01
    • 2014-04-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-04-25
    相关资源
    最近更新 更多