######unit.10系統日誌###########
###1.系統日誌默認分類
/var/log/messages ###系統服務及日誌,包括服務的信息,報錯等等
/var/log/secure ###系統認證信息日誌
/var/log/maillog ###系統郵件服務信息
/var/log/cron ###系統定時任務信息
/var/log/boot.log ###系統啓動信息
###2.日誌管理服務rsyslog
###服務功能###
這個服務是用來管理系統日誌的進程
1.rsyslog負責採集日誌和分類存放日誌
2.rsyslog日誌分類
vim /etc/rsyslog.conf ###主配置文件
服務.日誌級別 /存放文件
*.* /var/log/westos
systemctl restart rsyslog
###格式
日誌設備(類型).(連接符號)日誌級別 日誌處理方式(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
測試:logger -p local3.info 'KadeFor is testing the rsyslog and logger' logger 命令用於產生日誌
2.發送個用戶(需要在線才能收到)
*.* root
*.* root,kadefor,up01 ###使用,號分隔多個用戶
*.* * ###*號表示所有在線用戶
3.忽略,丟棄
local.* ~ ###忽略所有local3類型的素有級別日誌
4.執行腳本:
local3.* ^/tmp/a.sh ###^號後跟可執行腳本或程序的絕對路徑
###日誌內容可以作爲腳本的第一個參數
###可用來觸發警報
###3.日誌同步
systemcel stop firewalld ###關閉火牆(關閉兩臺主機的火牆)
配置日誌發送方
*.* @ip(172.25.18.11) ###通過udp協議把日誌發送到11主機,@udp @@tcp
配置日誌接受方
15 $ModLoad imudp ###日誌接收插件
16 $UDPServerRun 514 ###日誌接受插件使用端口
> /var/log/messages ###清空日誌
logger test message ###日誌發送方
tail -f /var/log/message ###日誌接收方
###日誌採集格式
$template WESTOS ,"%timegenerated% %FROMHOST-IP% %syslogtag% %msg%\n"
%timegenerated%
%FROMHOST-IP%
%syslogtag%
%msg%
\n
$ActionfileDefaultTemplate WESTOS
*.info;mail.none;authpriv.none;cron.none /var/log/messages;<<westos>>
###4.日誌分析工具journal
systemd-journald ###進程名稱
journalctl ###直接執行,瀏覽系統日誌
-n 5 ###顯示最新5條
-p err ###顯示報錯
-f ###監控日誌
--since --until ###--since"[YYYY-MM-DD][hh:mm:ss]"什麼時間到什麼時間的日誌
-o verbose ###顯示日誌能夠使用的詳細進程參數
###_SYSTEMD_UNIT=sshd.service服務名稱
###_PID=1818進程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/XXXXXXXXXXX
system.journal user-1000.journal