Linux 日志“丢失数据”是一个常见但原因复杂的问题,通常不是真的凭空消失,而是未被记录、被覆盖、被过滤或未被采集到。下面按常见原因分类说明:
最常见原因。
/var/log/messages 或 /var/log/syslog 只保留最近几天.gz 或被删除logrotate 按大小/时间切割rotate 4)ls -lh /var/log/
cat /etc/logrotate.conf
cat /etc/logrotate.d/*
fsync/run/log(tmpfs)systemd-journald 若配置为 volatileStorage=auto
# 或
Storage=volatile
Storage=persistentsync 模式(性能有损耗)*.info;mail.none;authpriv.none /var/log/messages
rsyslog.conf / journald.confdf -h
df -i
> 而非 >>> 为 >>SystemMaxUse)journalctl --disk-usage
[Journal]
Storage=persistent
SystemMaxUse=2G
MaxRetentionSec=30d
如果你用:
可能原因:
docker logs 被 rotatejson-file + max-sizeLinux 日志“丢失”,90% 是轮转 + 缓冲 + 级别 + 磁盘问题,而不是系统 bug。
如果你愿意,可以告诉我:
我可以帮你精准定位。