我正在努力从系统日志中过滤日志并转发到另一个日志。
我也可以根据“捕获/过滤日志”内部 sftp“。 通过使用
if $programname == 'internal-sftp' then /var/log/sftp/sftp.log
上面正在工作。
但我无法根据此进行过滤“统计名称”。我试过pri、syslogtag等,下面是日志格式。
Apr 24 02:16:30 ip-10-0-10-22 internal-sftp[4714]: lstat name "/settlement/universalpay/test_deletez.log"
那么,我如何过滤包含的行统计名称根据条件。我应该使用哪些属性。
下面是我正在尝试的示例代码。
if $programname == 'internal-sftp' then {
if $syslogfacility-text contains 'lstat name' then {
action(type="omfile" file="/var/log/sftp/sftp_lstat_files.log" template="outfmt")
}
action(type="omfile" file="/var/log/sftp/sftp.log" template="outfmt")
& stop
}
答案1
巴拉,
请您检查如下
if $msg startswith ' lstat name' then { ....
确保“lstat name”前面有如上所示的空间