有人知道syslog是如何提供心跳机制的吗?
我特别考虑如何监视提供syslog消息的设备。
我不是特别希望使用外部解决方案,而是syslog可能提供的一些东西,可以监视/询问和标记,如果有什么事情发生了。
或者他们是一个标准的轻量级的基于tcp的心跳协议,运行在win/linux/bsd/solaris/aix/hp-ux上?
动机
也许你已经解决了你的问题,但没有发布你的解决方案,或者你放弃了,你还在等待。我遇到了同样的问题,并找到了答案。
SYSLOG
Syslog本身提供"标记"。其实这是心跳
syslog条目如下所示:
Nov 23 17:37:00 192.168.160.115 -- MARK --
mark:由syslogd本身生成的消息,只包含时间戳和字符串"——mark——"。要指定标记之间应该间隔多少分钟,请使用-m [minutes]标志调用syslogd。
[来源:http://www.linuxjournal.com/article/5476]
NXLOG
如果你想在NXLOG上做同样的事情,你可以使用Module im_mark:
<Input mark>
Module im_mark // Module
MarkInterval 40 // Interval in minutes
Mark -- MARK -- // Message
</Input>
[来源:https://nxlog.org/node/295 im_mark]
nxlog在Windows上的日志是这样的:
Nov 24 09:21:57 192.168.160.123 MSWinEventLog 1 N/A 77
Tue Nov 24 09:21:57 2015 N/A nxlog-ce N/A N/A
N/A WKS-HC02 N/A -- MARK -- N/A
您可以使用以下RegEx来触发这样的逻辑项:
(w+s+d+s+d+:d+:d+) ([w.-]+).*--s*MARKs*--