Syslog 丢日志是运维中很常见的问题,通常不是“Syslog 本身坏了”,而是配置、性能、网络或资源限制导致的。下面按最常见原因给你一个系统排查思路。
Syslog 服务器(rsyslog / syslog-ng)在以下情况会丢:
fsync)✅ 表现:
imuxsock / imtcp 丢弃统计增加/var/log 正常但部分日志缺失✅ 检查:
# rsyslog
grep -i "discarded" /var/log/messages
✅ 解决:
# rsyslog 示例:开启磁盘辅助队列
$WorkDirectory /var/spool/rsyslog
$ActionQueueType LinkedList
$ActionQueueFileName fwdRule1
$ActionResumeRetryCount -1
$ActionQueueSaveOnShutdown on
如果你用的是 UDP 514:
✅ 解决建议:
# 发送端
*.* @@logserver:514
✅ 排查:
tcpdump -i eth0 udp port 514
netstat -su | grep "packet receive errors"
应用写 /dev/log 太快:
imuxsock 丢弃✅ 检查:
cat /proc/sys/net/core/rmem_max
✅ 增大:
sysctl -w net.core.rmem_max=26214400
stop / discarderr vs info)✅ 检查:
rsyslogd -N1
df -h
df -i
| 位置 | 排查点 |
|---|---|
| 应用端 | 是否成功 write /dev/log |
| 本机 syslog | 是否收到 |
| 网络 | TCP/UDP 是否通 |
| 远端 syslog | 是否写入文件 |
| 存储 | 磁盘 / 权限 |
你可以直接贴:
discarded 信息我可以帮你直接改配置,而不是泛泛而谈。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。