我正在尝试过滤出包含特定单词的日志条目。我们在日志中收到大量登录和注销事件,我不想运送这些条目,我想将它们过滤掉。我研究了grep过滤器插件,并根据我的理解方式似乎很简单(特定单词的grep消息并排除了该消息),但是我的设置无法正常工作,因为我仍然在Splunk中看到日志条目。
示例日志条目:
{"message":"Aug 21 09:46:15 linuxhost OSd[15]: logout(11100) usec=69895 tz=-07:00 seq=4569812 category=audit user=admin client-pid=154872 : logout"}
我的td-agent.conf中的示例部分:
<filter login.logout>
@type grep
<exclude>
key message
pattern login
pattern logout
</exclude>
</filter>
答案 0 :(得分:0)
尝试以下操作:
<filter login.logout>
@type grep
<exclude>
key message
pattern /login|logout/
</exclude>
</filter>
或
<filter login.logout>
@type grep
<or>
<exclude>
key message
pattern /login/
</exclude>
<exclude>
key message
pattern /logout/
</exclude>
</or>
</filter>
有关更多详细信息,请参见https://docs.fluentd.org/v1.0/articles/filter_grep。
答案 1 :(得分:0)
我能够通过分成两个过滤器来使其工作。
<filter ems>
@type grep
<exclude>
key message
pattern login
</exclude>
</filter>
<filter ems>
@type grep
<exclude>
key message
pattern logout
</exclude>
</filter>