最近我们在几分钟内收到了一条消息填写/var/log/libvirt/qemu/.log,由于根分区被填满(20分钟以上的分钟),重复的一行会导致我们的系统崩溃。
“阻止设备中的I / O错误'drive-virtio-disk0':不允许操作(1)”
有没有办法确保不会将重复的行推入日志,或者是一种限制该目录填满的方法? Logstash maxsize对我们不起作用,因为我们在每日cronjob上运行它。
答案 0 :(得分:3)
这取决于您使用的日志实用程序(rsyslog或syslog-ng)
Rsyslog 可以通过添加如下行来删除重复的邮件: "最后一条消息重复3044次"。 要启用此选项,您应添加:
$RepeatedMsgReduction on
到/etc/rsyslog.conf
我不知道 syslog-ng 是否可以减少这种情况。
syslog-ng和rsyslog都可以完全删除与某些模式匹配的行:
rsyslog - 请参阅本手册:http://www.rsyslog.com/discarding-unwanted-messages/
syslog-ng - 查看过滤器。有一些例子如何做到:https://serverfault.com/questions/540038/excluding-some-messages-from-syslog-ng