使用 patterndb 时如何处理 syslog-ng 解析器故障
how can i handle syslog-ng parser failure when using a patterndb
我们每天使用 syslog-ng 解析数百万条消息,并且正在实施 patterndb。
由于消息的组成方式不一致,在一小部分情况下,我的模式不足以捕获消息的字段(间距关闭,或者有时一个字段完全丢失)。
我该如何处理这些情况?理想情况下,我的日志目标中的解析器条目将评估为 false(如过滤器)并且它将被我的后备日志目标捕获。
尝试设置 drop-unmatched(是)(需要 syslog-ng OSE 3.11 或更高版本):
parser pattern_db {
db-parser(
file("/opt/syslog-ng/var/db/patterndb.xml")
drop-unmatched(yes)
);
};
此外,最近的 syslog-ng 版本有几个不同的解析器,对于某些日志消息可能比 patterndb 更好,例如,JSON and key=value parsers.
我们每天使用 syslog-ng 解析数百万条消息,并且正在实施 patterndb。
由于消息的组成方式不一致,在一小部分情况下,我的模式不足以捕获消息的字段(间距关闭,或者有时一个字段完全丢失)。
我该如何处理这些情况?理想情况下,我的日志目标中的解析器条目将评估为 false(如过滤器)并且它将被我的后备日志目标捕获。
尝试设置 drop-unmatched(是)(需要 syslog-ng OSE 3.11 或更高版本):
parser pattern_db {
db-parser(
file("/opt/syslog-ng/var/db/patterndb.xml")
drop-unmatched(yes)
);
};
此外,最近的 syslog-ng 版本有几个不同的解析器,对于某些日志消息可能比 patterndb 更好,例如,JSON and key=value parsers.