Journalctl 使用與管理技巧



前言

  • 因為 CentOS 上太常用到 journalctl 了,本篇紀錄一下使用方式與設定檔。



A) 使用方式

  • 跟隨 (follow) 目前所有的 log,類似 tail -f 的效果:
1
    journalctl -f 
  • 跟隨 (follow) 某 service 的 log,類似 tail -f 的效果:
1
2
3
4
    journalctl -f -u <service_name>
    
    # OR
    journalctl -fu <service_name>
  • 顯示最後的日誌 (end)
1
2
3
4
    journalctl -e 
    
    # 同時顯示 catalog
    journalctl -xe
  • 只列出時間內的日誌,例如過去 1 小時內:
1
    journalctl --since -1h
  • 結合前面,可以針對某 service 列出 1 小時內的日誌:
1
    journalctl -u <service_name> --since -1h



B) 管理技巧

Runtime 指令

  • 確認目前 journalctl 已經使用的硬碟空間:
1
    journalctl --disk-usage
  • 刪除超過指定時間的日誌檔:
1
    journalctl --vacuum-time=2d
  • 刪除超過某大小的日誌檔:
1
    journalctl --vacuum-size=200M

設定檔

  • 編輯 /etc/systemd/journald.conf
1
    SystemMaxUse=300M

Note

  • 預設是 Disk 總量的 10%、但不超過 4G



REF


主題 StackJimmy 設計