分析和存儲日誌(二)
1、通過journalctl查找事件
systemd日誌將日誌數據存儲在帶有索引的結構化二進制文件中。此數據包含與日誌事件相關的額外信息。在紅帽7中,systemd日誌默認存儲在/run/log中,其內容會在重啓後予以清除。
命令:journalctl
journalctl -n 5 默認-n顯示最後10條
journalctl -f 追蹤輸出最後10條記錄
journalctl -p 可以接受已知優先級的名稱或編號作爲參數,進行過濾
例: journalctl -p error 輸出過濾優先級爲error或以上的日誌
以粗體突出顯示notice或warning的消息,以紅色突出顯示error和更高的消息
journalctl命令有兩個選項,可以將輸出限制爲特點的時間範圍,分別是--since和--until選項。兩個選項都接受格式爲YYYY-MM-DD hh:mm:ss的時間參數,這兩個選項還接受yesterday、today和tomorrow作爲有效參數
journalctl --since today 輸出當天記錄
journalctl --since “2015-11-01 20:00:30” --until “2015-11-03 20:00:00”
2、保存systemd日誌
默認情況下systemd日誌保存在/run/log/journal中,系統重啓後它會被清除。
若存在/var/log/journal目錄,該日誌會改爲記錄在這個目錄中。
配置文件 /etc/systemd/journald.conf
作爲root用戶創建目錄/var/log/journal
修改擁有用戶和擁有組,並具有權限2755
chown root:systemd-journal /var/log/journal
chmod 2755 /var/log/journal
重啓系統或者以root身份發送特殊信號USR1 到systemd-journald進程
killall -USR1 systemd-journald
由於systemd日誌爲永久日誌,可通過journalctl -b 顯示系統上一次啓動以來的日誌消息,以檢查輸出
3、保持準確的時間
網絡事件協議NTP是計算機用於通過互聯網提供並獲取正確時間信息的一種標準方法。計算機可以通過互聯網上的公共NTP服務獲取正確的時間信息。另一選擇是通過高質量硬件時鐘爲本地客戶端提供準確時間。
timedatectl命令簡要顯示當前的時間關係系統設置,如系統的當前時間、時區和NTP同步設置
timedatectl 當前時間相關係統設置
timedatectl list-timezones 列出時區數據庫信息
timedatectl set-timezone 設置時區
timedatectl set-time YYYY-MM-DD hh:mm:ss 設置日期 時間
timedatectl set-ntp true/false 啓用或禁用NTP同步
配置和監控chronyd
chronyd服務通過與配置的NTP服務器同步或者沒有網絡情況下與計算的RTC時鐘漂移值同步,該值記錄在/etc/chrony.conf配置文件中指定的driftfile中
可以在/etc/chrony.conf配置文件中配置兩種類型的時間源,分別是server和peer
server比本地NTP服務器高一個級別,而peer則屬於同一級別,可指定多個server和多個peer
例:server 0.rhel.pool.ntp.org iburst
chronyc sources 查看時間源
chronyc sources -v 包含額外的詳細輸出