Journal 日志管理
在Systemd出现之前,Linux系统及各应用的日志都是分别管理的,
Systemd开始统一管理了所有Unit的启动日志,这样带来的好处就是可以只用一个 journalctl命令,查看所有内核和应用的日志。
1.Journal默认配置文件路径
/etc/systemd/journald.conf
2.Journal配置文件
mkdir /var/log/journal # 持久化保存日志的目录 mkdir /etc/systemd/journald.conf.d cat > /etc/systemd/journald.conf.d/99-prophet.conf <<EOF [Journal] # 持久化保存到磁盘 Storage=persistent # 压缩历史日志 Compress=yes SyncIntervalSec=5m RateLimitInterval=30s RateLimitBurst=1000 # 最大占用空间 10G SystemMaxUse=10G # 单日志文件最大 200M SystemMaxFileSize=200M # 日志保存时间 2 周 MaxRetentionSec=2week # 不将日志转发到 syslog ForwardToSyslog=no EOF
systemctl restart systemd-journald
3.Journal日常操作
== 查看内核日志 $ journalctl -k == 查看指定服务日志 $ journalctl -u docker.serivce == 查看指定日期日志 $ journalctl --since="2018-09-21 10:21:00" -u docker $ journalctl --since="2018-09-21 10:21:00" --until="2018-09-21 10:22:00" -u docker == 查看指定级别日志 $ journalctl -p 3 -u docker.service 操作系统提供了从0 (emerg) 到 7 (debug) 一共7个级别的日志,7个级别的含义为: 0: emerg 1: alert 2: crit 3: err 4: warning 5: notice 6: info 7: debug == 查看日志占用的磁盘空间 $ journalctl --disk-usage == 设置日志占用的空间 $ journalctl --vacuum-size=500M == 设置日志保存的时间 $ journalctl --vacuum-time=1month