journalctl 日志管理

2024-08-01 11:50:00
丁国栋
原创 120
摘要:如何使用journalctl管理系统日志。

查看日志占用的磁盘空间

sudo journalctl --disk-usage


设置日志

sudo journalctl --vacuum-size=500M


清理日志

清理之前可以使用sudo journalctl --flushsudo journalctl --rotate 命令将日志写入文件和轮换日志。

sudo journalctl --vacuum-time=1w


可以使用ncdu 以及ncdu -x查询文件系统的使用情况,-x参数可以让ncdu只查询目录所在的文件系统的使用情况,而不会包含其他文件系统,这在使用ncdu -x /时特别有用,当然可以使用--exclude-L 或--follow-symlinks来控制范围。


journalctrl 其他用法


  1. 查看日志并追踪新内容 journalctl -f
  2. 查看内核日志 journalcrl -k
  3. 查看Apache2的systemd日志 journalctl -u apache2
  4. 查看指定时间范围的日志journalctl -u apache2 --since='2024-08-01 17:00' --until='2024-08-04 17:30'
  5. 筛选错误级别:journalctl -p crit 筛选多个错误 journalctl -p crit..err,也可以使用 journalctl -p 2..3 表示,常见的错误级别有: "emerg" (0), "alert" (1),"crit" (2), "err" (3), "warning" (4), "notice" (5), "info" (6), "debug" (7),可以参见man journalctl


以下是使用 journalctl 查看系统错误日志的一些常用的命令和选项:

  1. 查看所有的错误日志,可以使用以下命令:journalctl -p err
  2. 查看特定时间段的错误日志使用 --since 和 --until 选项。如:journalctl -p err --since "2023-10-20" --until "2023-10-21"
  3. 查看最新的错误日志可以使用 -n 选项:journalctl -p err -n 100 显示最近的 100 条错误日志。
  4. 持续查看错误日志可以使用 -f 选项:journalctl -p err -f
  5. 查看特定服务的错误日志使用 -u 选项。例如查看 sshd 服务的错误日志:journalctl -u sshd -p err
  6. 查看系统启动后的错误日志使用:journalctl -b -p err
  7. 按时间倒序查看:journalctl -p err --reverse

rsyslog 可以与 systemd-journald 一起使用。如果不太习惯使用 journalctl 命令来查看日志,可以安装 rsyslog 把日志记录到文件,这样就可以使用传统的方式来查看日志了。

--

发表评论
博客分类