1. 程式人生 > >liunx基本命令(十一)系統日誌管理

liunx基本命令(十一)系統日誌管理

一、系統日誌預設分類

/var/log/messages ##系統服務及日誌,包括服務的資訊,報錯等等
/var/log/secure ##系統認證資訊日誌
/var/log/maillog ##系統郵件服務資訊
/var/log/cron ##系統定時任務資訊
/var/log/boot.log ##系統啟動資訊

二、日誌管理服務rsyslog


vim /etc/rsyslog.conf##系統日誌配置檔案

日誌裝置(型別).(連線符號)日誌級別 日誌處理方式(action)

重啟系統日誌服務後目錄下會有ltmsg目錄。

日誌管理服務有兩個基本作用

(1)負責採集日誌和分類存放日誌

(2)日誌分類

systemctl restart rsyslog

 ##重啟系統日誌服務

1、日誌裝置(型別).(連線符號)日誌級別  

(1)日誌裝置(日誌型別)

auth           ##pam產生的日誌
authpriv    ##ssh,ftp等登入資訊的驗證資訊
cron          ##時間任務相關
kern          ##核心
lpr             ##列印
mail          ##郵件
mark(syslog)–rsyslog ##服務內部的資訊,時間標識
news         ##新聞組
user          ##使用者程式產生的相關資訊
uucp          ##unix to unix copy, unix主機之間相關的通訊
local 1~7
  ##自定義的日誌裝置

(2)日誌級別

(7)debug       ##除錯級。有調式資訊的,日誌資訊最多
(6)info           ##通知級。一般資訊的日誌,最常用
(5)notice      ##注意級。最具有重要性的普通條件的資訊
(4)warning   ##警告級。
(3)err            ##錯誤級。阻止某個功能或者模組不能正常工作的資訊
(2)crit            ##臨界級。嚴重級別,阻止整個系統或者整個軟體不能正常工作的資訊
(1)alert         ##警戒級。需要立刻修改的資訊
(0)emerg     ##致命級。核心崩潰等嚴重資訊
none
        ##什麼都不記錄

注意:從上到下,級別從低到高,記錄的資訊越來越少

詳細的可以檢視手冊: man 3 syslog

(3)連線符號

.xxx ##表示大於等於xxx級別的資訊,例如.err 表示34567所有級別的日誌

.=xxx ##表示等於xxx級別的資訊
.!xxx ##表示在xxx之外的等級的資訊

三、日誌處理

1. 記錄到普通檔案或裝置檔案

*.*     /var/log/file.log   ##絕對路徑
*.*     /dev/pts/0

測試:

logger -p local3.info ‘KadeFor is testing the rsyslog and logger‘ ## logger 命令用於產生日誌


2. 傳送給使用者(需要線上才能收到)

*.*   root
*.*   root,kadefor,westos    ## 使用,號分隔多個使用者
*.*   *        ## *號表示所有線上使用者

3. 忽略,丟棄

local3.*   ~       ## 忽略所有local3型別的所有級別的日誌

4. 執行指令碼

local3.*    ^/tmp/a.sh      

# ^號後跟可執行指令碼或程式的絕對路徑

# 日誌內容可以作為指令碼的第一個引數.
# 可用來觸發報警

四、日誌同步

首先,關閉雙方的防火牆

再配置雙方的配置檔案

日誌傳送方

vim /etc/rsyslog.conf

通過UDP協議把日誌傳送到11主機,@表示UDP,@@表示TCP



日誌接受方

vim /etc/rsyslog.conf

如果是UDP就去掉15,16行的“#”,TCP去掉19,20行的。


最後再重啟雙方的日誌服務


測試;

傳送方重啟sshd服務


日誌接收方執行

> /var/log/messages##清空日誌

tail -f /var/log/message


五、日誌分析工具journal

1、journald


journalctl ##直接執行,瀏覽系統日誌
-n 5##顯示最新5條,如果有時間限制,就如上圖所示,顯示前5條。
-p err##顯示報錯

--since --until ## 從什麼時間到什麼時間的日誌

-f##監控日誌

-o verbose ##顯示日誌能夠使用的詳細程序引數



2、systemd-journald服務

可以收集來自核心,啟動過程,標準輸出,系統日誌,守護程序和執行期間的錯誤訊息。

預設情況下,systemd日誌儲存在/run/log/journal中,系統重啟時這些日誌會被刪除。

如果將日誌存在/var/log/journal中,就會永久儲存。

實現步驟:

新建日誌目錄


更改目錄許可權




或者

chown root.systemd-journal /var/log/journal

chmod 2755 /var/log/journal

重啟日誌服務


目錄下會產生日誌檔案

六、時間同步

1、服務端

yum install chrony -y##安裝服務

vim /etc/chrony.conf##主配置檔案


##允許誰去同步我的時間


##刪除30行“#”,表示不去同步任何人的時間,自己作為時間同步伺服器


2、客戶端

vim /etc/chrony.conf

server 服務端主機ip iburst


3、雙方重啟時間同步服務,關閉雙方防火牆

systemctl restart chronyd
systemctl stop firewalld


測試:chronyc sources -v


七、timedatectl

timedatectl status##顯示當前時間資訊


timedatectlset-time##設定當前時間


timedatectl list-timezone##檢視所有時區

timedatectlset-timezone##設定當前時區

timedatectlset-local-rtc 0|1 ##設定是否使用utc時間(本地時間)