在日志末尾添加文本
Add text at the end of the logs
我实际上使用的是 Rsyslog 8.24,我将我的 rsyslog 配置为接受来自多个 input/sources 的日志。
我想在每个日志的末尾添加系统日志主机名。
示例:
- 旧日志:时间戳、header、消息
- 新日志:时间戳、header、消息 syslog.domain.local
我知道变量 $myhostname 或 $MYHOSTNAME 应该 return 系统日志的主机名,但我不明白如何实现它并在每个日志的末尾添加系统日志主机名。
我设法通过添加以下模板并将其绑定到规则集中来完成我想做的事情:
template (name="LogsFormat" type="string" string="%TIMESTAMP% %$year% %syslogtag% %msg% <SYSLOG_HOSTNAME>:%$myhostname%\n")
ruleset(name="RemoteLogPort") {
if (re_match($msg, "AP:aaa-bbbb-ccc-dddd-ap")) then {
action(type="omfile" dynaFile="ArubaNetworksPath" template="LogsFormat")
}
}
PS : ArubaNetworksPath 也是定义日志路径的模板。
我实际上使用的是 Rsyslog 8.24,我将我的 rsyslog 配置为接受来自多个 input/sources 的日志。
我想在每个日志的末尾添加系统日志主机名。
示例:
- 旧日志:时间戳、header、消息
- 新日志:时间戳、header、消息 syslog.domain.local
我知道变量 $myhostname 或 $MYHOSTNAME 应该 return 系统日志的主机名,但我不明白如何实现它并在每个日志的末尾添加系统日志主机名。
我设法通过添加以下模板并将其绑定到规则集中来完成我想做的事情:
template (name="LogsFormat" type="string" string="%TIMESTAMP% %$year% %syslogtag% %msg% <SYSLOG_HOSTNAME>:%$myhostname%\n")
ruleset(name="RemoteLogPort") {
if (re_match($msg, "AP:aaa-bbbb-ccc-dddd-ap")) then {
action(type="omfile" dynaFile="ArubaNetworksPath" template="LogsFormat")
}
}
PS : ArubaNetworksPath 也是定义日志路径的模板。