系統日誌

系統日誌

1.系統日誌默認分類

/var/log/messages                       系統服務及日誌,包括服務的信息,報錯等等

/var/log/secure                              系統認證信息日誌

/var/log/maillog                             系統郵件服務信息

/var/log/cron                                 系統定時任務信息

/var/log/boot.log                           系統啓動信息


2.
日誌管理服務    rsyslog.service

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

(2).rsyslog                              日誌分類

vim /etc/rsyslog.conf                   主配置文件 


格式:   日誌設備(類型).(連接符號)日誌級別  日誌處理方式(action)


日誌設備(可以理解爲日誌類型):

———————————————————————-

auth                                           pam產生的日誌

authpriv                                     ssh,ftp等登錄信息的驗證信息

cron                                           時間任務相關

kern                                         內核

lpr                                             打印

mail                                         郵件

mark(syslog)–rsyslog               服務內部的信息,時間標識

news                                         新聞組

user                                          用戶程序產生的相關信息

uucp                                         unix to unix copy, unix主機之間相關的通訊


日誌級別

———————————————————————-

debug                              有調式信息的,日誌信息最多

info                                  一般信息的日誌,最常用

notice                              最具有重要性的普通條件的信息

warning                           警告級別

err                                   錯誤級別,阻止某個功能或者模塊不能正常工作的信息

crit                                   嚴重級別,阻止整個系統或者整個軟件不能正常工作的信息

alert                                需要立刻修改的信息

emerg                             內核崩潰等嚴重信息

none                               什麼都不記錄


服務.日誌級別                 /存放文件

*.*                                    /var/log/freya



表示將系統任何類型、任何級別的日誌信息存放在/var/log/westos下,上圖用cat  /var/log/freya來查看日誌信息

注意:從上到下,級別從低到高,記錄的信息越來越少詳細的可以查看手冊: man 3 syslog

連接符號

———————————————————————-

.xxx: 表示大於等於xxx級別的信息

.=xxx:表示等於xxx級別的信息

.!xxx:表示在xxx之外的等級的信息


#####
實例####
1.
記錄到普通文件或設備文件::
*.*                                  /var/log/file.log          

*.*                                  /dev/pts/0
測試: logger -p local3.info ‘KadeFor is testing thersyslog and logger ‘   logger命令用於產生日誌

2.
發送給用戶(需要在線才能收到)
*.*                                   root
*.*                                   root,kadefor,up01        
使用,號分隔多個用戶
*.*                                   *                                    *
號表示所有在線用戶

3.
忽略,丟棄
local3.*                           ~                                   
忽略所有local3類型的所有級別的日誌

4.
執行腳本::
local3.*                          ^/tmp/a.sh                     ^
號後跟可執行腳本或程序的絕對路徑
                                                                             
日誌內容可以作爲腳本的第一個參數.
                                                                             
可用來觸發報警

3.日誌同步

(1)步驟

①systemctl stop firewalld                   關閉兩臺主機的火牆

②配置日誌發送方 (vim  /etc/rsyslog.conf) 

*.*             @172.25.0.11                     通過udp協議把日誌發送到11主機



注意@:udp,@@:tcp,當需要同步到外部的主機時,用tcp協議(@@)更加安全

重啓服務:systemctl  restart  rsyslog.service

③配置日誌接受方 vim  /etc/rsyslog.conf) 


15 $ModLoad imudp                           日誌接收插件

16 $UDPServerRun 514                     日誌接收插件使用端口

重啓服務:systemctl  restart  rsyslog.service

④測試                    

> /var/log/messages                           兩邊都做

logger test message                           日誌發送方

⑤watch -n 1 ' /var/log/messages'        日誌接收方


當規定日誌採集格式 ,在上述步驟的基礎上,在發送方的/etc/rsyslog.conf 配置文件下做如下更改 

                  

$template freya, "%timegenerated% %FROMHOST-IP% %syslogtag%%msg%\n"

%timegenerated%                             顯示日誌時間

%FROMHOST-IP%                           顯示主機ip
%syslogtag%                                    日誌記錄目標
                                 

%msg%                                             日誌內容

\n                                                       換行

$ActionfileDefaultTemplate freya

*.info;mail.none;authpriv.none;cron.none               /var/log/messages;<<freya>>

                 改完配置文件後,一定要記得重啓服務
4.日誌分析工具journal(systemd-journald是該進程名稱)

                  

journalctl                                       直接執行,瀏覽系統日誌

-n 3                                                顯示最新3                                                          

-p err                                             顯示報錯

-f                                                   監控日誌

--since --until                                --since "[YYYY-MM-DD] [hh:mm:ss]"從什麼時間到什麼時間的日誌

-o verbose                                   顯示日誌能夠使用的詳細進程參數     

          _PID=(進程pid+ _SYSTEMD_UNIT=(服務名稱)

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/
 system.journal user-1000.journal


5.
時間同步 

1.
服務端

yum install chrony -y                       安裝服務

vim /etc/chrony.conf                       主配置文件


22 allow 172.25.0.0/24                  允許誰去同步我的時間  

29 local stratum 10                        不去同步任何人的時間,時間同步服務器級別


systemctl restart chronyd

systemctl stop firewalld


2.
客戶端

                  更改時間以及把時間同步到硬盤和系統上

                  

vim /etc/chrony.conf

  3 server 0.rhel.pool.ntp.orgiburst====>刪掉

  4 server 1.rhel.pool.ntp.orgiburst====> 刪掉 ====>  server 客戶IP  iburst

  5 server 2.rhel.pool.ntp.orgiburst====>刪掉

  6 server 3.rhel.pool.ntp.orgiburst====>刪掉

systemctl restart chronyd


測試結果:
                  兩邊>/var/log/messages清空日誌

                  兩邊watch -n 1 date監控

                  
5.timedatectl
命令
timedatectl     status                                  
顯示當前時間信息
                      set-time                               
設定當前時間
                      set-timezone                       
設定當前時區
                      set-local-rtc 0|1                   
設定是否使用utc時間



發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章