標籤:日誌
系統日誌預設分類
/var/log/messages 系統服務及日誌,包括服務的資訊,報錯等等
/var/log/secure 系統認證資訊日誌
/var/log/maillog 系統郵件服務資訊
/var/log/cron 系統定時任務資訊
/var/log/boot.log 系統啟動資訊
日誌管理服務rsyslog
1.rsyslog負責採集日誌和分類存放日誌
2.rsyslog日誌分類
vim /etc/rsyslog.conf 主設定檔
服務.記錄層級 /存放檔案
*.* /var/log/westos
systemctl restart rsyslog 重啟Log Service
格式
日誌裝置(類型).(串連符號)記錄層級 Tlog方式(action)
日誌裝置(可以理解為日誌類型):
auth pam產生的日誌
authpriv ssh,ftp等登入資訊的驗證資訊
cron 時間任務相關
kern 核心
lpr 列印
mail 郵件
mark(syslog)–rsyslog 服務內部的資訊,時間標識
news 新聞群組
user 使用者程式產生的相關資訊
uucp unix to unix copy, unix主機之間相關的通訊
local 1~7 自訂的日誌裝置
記錄層級
———————————————————————-
debug 有調式資訊的,日誌資訊最多
info 般資訊的日誌,最常用
notice 最具有重要性的普通條件的資訊
warning 警告層級
err 錯誤層級,阻止某個功能或者模組不能正常工作的資訊
crit 嚴重層級,阻止整個系統或者整個軟體不能正常工作的資訊
alert 需要立刻修改的資訊
emerg 核心崩潰等嚴重資訊
none 什麼都不記錄
注意:從上到下,層級從低到高,記錄的資訊越來越少
詳細的可以查看手冊: man 3 syslog
串連符號
———————————————————————-
.xxx: 表示大於等於xxx層級的資訊
.=xxx:表示等於xxx層級的資訊
.!xxx:表示在xxx之外的等級的資訊
執行個體
1. 記錄到普通檔案或裝置檔案::
*.* /var/log/file.log 絕對路徑
*.* /dev/pts/0
2. 發送給使用者(需要線上才能收到)
*.* root
*.* root,kadefor,up01 使用,號分隔多個使用者
*.* * *號表示所有線上使用者
3. 忽略,丟棄
local3.* ~ 忽略所有local3類型的所有層級的日誌
4. 執行指令碼::
local3.* ^/tmp/a.sh ^號後跟可執行指令碼或程式的絕對路徑
日誌內容可以作為指令碼的第一個參數.
可用來觸發警示
日誌同步
systemctl stop firewalld 關閉兩台主機的火牆
配置日誌發送方
*.* @172.25.0.11 通過udp協議把日誌發送到11主機,@udp,@@tcp
配置日誌接受方
15 $ModLoad imudp 日誌接收外掛程式
16 $UDPServerRun 514 日誌接收外掛程式使用連接埠
netstat -anulpe | grep rsyslog
udp 0 0 0.0.0.0:514 0.0.0.0:* 0 122073 32654/rsyslogd
udp6 0 0 :::514 :::* 0 122074 32654/rsyslogd
測試
> /var/log/messages 兩邊都作
logger test message 日誌發送方
tail -f /var/log/message 日誌接收方
cat /var/log/message
1.更改發送方設定檔,完成後重啟服務
650) this.width=650;" src="https://s3.51cto.com/wyfs02/M00/9C/9F/wKiom1lzWb_y6DLXAABxVEJf42g553.png" style="float:none;" title="Screenshot from 2017-07-22 14-27-41.png" alt="wKiom1lzWb_y6DLXAABxVEJf42g553.png" />
2.更改接收方設定檔,查看監聽連接埠,完成後重啟服務
650) this.width=650;" src="https://s4.51cto.com/wyfs02/M01/9C/9F/wKioL1lzWezRpDeGAAAqH_m370w177.png" title="Screenshot from 2017-07-22 14-21-35.png" alt="wKioL1lzWezRpDeGAAAqH_m370w177.png" />
650) this.width=650;" src="https://s1.51cto.com/wyfs02/M02/9C/9F/wKiom1lzWb3zzNbCAABCZ8HOBI0418.png" style="float:none;" title="Screenshot from 2017-07-22 16-12-56.png" alt="wKiom1lzWb3zzNbCAABCZ8HOBI0418.png" />
3.測試結果
650) this.width=650;" src="https://s3.51cto.com/wyfs02/M02/9C/9F/wKioL1lzWb6Cz12dAACcr1Ouw-w052.png" style="float:none;" title="Screenshot from 2017-07-22 15-55-44.png" alt="wKioL1lzWb6Cz12dAACcr1Ouw-w052.png" />
日誌採集格式
$template WESTOS, "%timegenerated% %FROMHOST-IP% %syslogtag% %msg%\n"
%timegenerated% 顯示日誌時間
%FROMHOST-IP% 顯示主機ip
%syslogtag% 日誌記錄目標
%msg% 日誌內容
\n 換行
$ActionfileDefaultTemplate WESTOS
*.info;mail.none;authpriv.none;cron.none /var/log/messages;<<WESTOS>>
日誌分析工具journal
systemd-journald 進程名稱
journalctl 直接執行,瀏覽系統日誌
-n 3 顯示最新3條
-p err 顯示報錯
-f 監控日誌
--since --until --since "[YYYY-MM-DD] [hh:mm:ss]" 從什麼時間到什麼時間的日誌
-o verbose 顯示日誌能夠使用的詳細進程參數
_SYSTEMD_UNIT=sshd.service服務名稱
_PID=1182進程pid
對systemd-journald管理
預設情況下此程式會忽略重啟前的日誌資訊,如不忽略:
mkdir /var/log/journal
chown root:systemd-journal /var/log/journal
chmod 2755 /var/log/journal
killall -1 systemd-journald
ls /var/log/journal/4513ad59a3b442ffa4b7ea88343fa55f
system.journal user-1000.journal
Linux系統日誌