我如何获得与Windows check_mk_agent一起使用的自定义日志文件检查?

简单的例子:我在C:\ users \ user \ test.log中有一个日志文件,包含一行文本:

crit 

我在程序文件(x86)\ check_mk中安装了check_mk_agent.exe,check_mk.ini安装在相同的文件夹中,包含以下文本:

 [logfiles] # # Define textfiles to be monitored, separated by | # textfile = C:\tmp logfiles\message_*.log|D:\log\sample.txt # # Set patterns for defined textfiles # ok = Successfully logged in* # crit = Error in* # warn = Unable to contact* # ignore = Backup * saved textfile = C:\users\user\test.log warn = * crit = crit ok = ok 

如果行显示“ok”,则应该返回OK;如果行显示“crit”,则返回CRIT,否则返回WARN。

但是,它根本不报告任何状态。 如果我运行check_mk_agent.exe test (类似于debug ),我得到这些行,表明它已经find了文本文件确定,但不报告它的状态:

 ( ... ) <<<logwatch>>> [[[C:\users\user\test.log]]] <<<>>> <<<>>> <<<local>>> ( ... ) 

任何人都可以帮助我得到它的工作? 我不是Check MK的专家,这正在推动我的知识的极限。

check_mk代理testing运行不显示服务状态(好,暴击等),所以你看到的是正确的。 它实际上表明新configuration已成功加载。 要看到它的实际运行情况,请在check_mk服务器上运行新的清单以获取列出的新服务。

现在有两件事情:

  • 首先,您需要将warn = *更改为其他值,因为*会匹配任何内容,您将始终warn状态。
  • 其次,在testing日志文件中添加更多的行,看看状态是否改变。 check_mk代理程序读取文件并在添加新条目时获取更新的信息。 如果从Web前端单击服务的Open Log (服务名称旁边的打字机button),则可以查看代理读取的日志数据。 在那里,你也可以看到它是否得到更新。