在 Debian(以及大多数 Linux 发行版)里,“日志级别”通常指 内核日志级别(kernel log level) 和 系统日志服务(rsyslog / journald)的日志级别。下面分别说明。
cat /proc/sys/kernel/printk
输出示例:
4 4 1 7
含义:
数字越小,级别越高:
0 emerg
1 alert
2 crit
3 err
4 warn
5 notice
6 info
7 debug
sudo sysctl -w kernel.printk="3 4 1 7"
或
echo "3 4 1 7" | sudo tee /proc/sys/kernel/printk
编辑 /etc/sysctl.conf:
sudo nano /etc/sysctl.conf
添加:
kernel.printk = 3 4 1 7
生效:
sudo sysctl -p
/etc/rsyslog.conf
/etc/rsyslog.d/*.conf
emerg
alert
crit
err
warning
notice
info
debug
*.warning /var/log/syslog
或忽略 debug/info:
*.info;mail.none;authpriv.none /var/log/messages
修改后重启:
sudo systemctl restart rsyslog
/etc/systemd/journald.conf
MaxLevelStore=info
MaxLevelSyslog=info
可选值:
emerg alert crit err warning notice info debug
生效:
sudo systemctl restart systemd-journald
journalctl -p err
journalctl -p warning
减少日志量(生产环境)
kernel:4 或 3
rsyslog:warning
journald:notice/info
调试问题
kernel:7
rsyslog:debug
journald:debug
如果你能说明是 内核日志 / rsyslog / journald / 某个具体服务,我可以给你更精确的修改示例。