1. 程式人生 > >Linux 124課程 10、分析存儲日誌

Linux 124課程 10、分析存儲日誌

日誌

1、Linux 7中日誌的基本系統架構
  進程和操作系統內核在發生事件時,對事件做相應的記錄;
  
  RHEL7 當中有兩個服務負責處理日誌;
  journald 可以收集來自內核/啟動過程/標準輸出/系統日誌/進程運行中期間的相關日誌信息; 系統重啟,日誌消失; 默認的存儲路徑 /run/log/journal

  rsyslog 可以根據服務類型和優先級分類日誌進行保存;
  系統重啟後,日誌不會消失; 默認的存儲路徑 /var/log
  
  /var/log/message 大多數syslog消息記錄的位置
  /var/log/secure 安全與認證相關的日誌信息
  /var/log/maillog 郵件相關日誌信息

  /var/log/corn 任務計劃相關的日誌
  /var/log/boot.log

  journalctl 查看journal 相關日誌
2、查看 syslog文件條目
  (1)日誌的安全級別
  rsyslog 它的配置後文件 /etc/rsyslog.conf
  
  日誌級別 可以通過 man rsyslog.config 查找相應的幫助信息
  優先級 code 安全信息
  debug 0 調試級別信息
  Info 1 信息性事件
  Notice 2 正常信息,有重要情況才會通知

  Wanring 3 警告狀況
  Err 4 非常嚴重的錯誤情況
  Crit 5 嚴重情況
  Alert 6 必須要采取措施
  Emerg 7 系統不可用
  
vim /etc/rsyslog.conf
vim /etc/rsyslog.d

tail -f /var/log/secure
tail -f /var/log/message

  自定義日誌文件(不太看得懂)
  cd /etc/rsyslog.d/
  touch debugtest.conf
  vim debugtest.conf

  Local7.debug /var/log/debug-message
  Systemctl restart rsyslog.service
  Logger -p local7.debug “this is debug-message test”
  
  日誌的輪詢: logrotate
  防止日誌文件空間被占滿,會自動對日誌文件做備份;
  
配置文件的位置 vim /etc/logrotate.conf

weekly 每周輪詢一次
Hourly
Daily
datefomate
Rotate 4 備份數量,備份四次
Create 是否創建新的日誌文件
Dateext 是否寫入日期
Compress 是否壓縮日誌文件
Missingok 日誌輪詢期間,出現錯誤被忽略

Include /etc/logrotate.d
/var/log/corn
/var/log/maillog
/var/log/messages
{ sharedscripts
  Postrotate
  Endscript }
  
  Man logrotate
systemctl restart rsyslog.service

3、發現和解釋日誌記錄在系統日誌內容。

cd /run/log/jorunal jorunal 日誌查看不是直接查看jorunal中的文件內容
Journal 日誌自帶索引功能

Journalctl 查看所有的journal 日誌
Journalctl --跟選項
-f
  --since “2016-10-15” --until “2016-10-16”
  --priority 通過優先級類型過慮相關日誌
  --unit rsyslog.service
  --unit sshd.service
  _UID=1000
  

配置systemd-journald日誌, 儲存在磁盤上而不是在內存中的日誌。
  在/var/log 創建一個目錄 journal
  mkdir journal 默認生成為root權限來管理該文件夾
  Cat /etc/passwd | grep journal
  Cat/etc/group | grep journal
  Systemd-journal:x:190: 使用Systemd-journal組權限進行管理
  chown :systemd-journal journal
  chmod 2755 jorunal/
  ls -ld /run/log/journal
  
  Killall -USR1 systemd-journald

4、時間同步和時區配置
date -s 修改時間,臨時生效

timedatectl 可以看見現在系統的時間狀態
timedatectl set-time “2010-08-08 08:00:00” 設置時間,重啟仍然生效
   set-timezone Asia/Dubai
  
tzselect 查詢時區 查詢timezone

NTP 網絡時間協議,專門用於和網絡進行時間服務同步時間;
Timedatectl set-ntp true 打開ntp功能

NTP使用的服務名 chronyd.service
NTP 服務的配置文件
vim /etc/chrony.conf
sesrver classroom.example.com inbrust
systemctl restart chronyd.service
chronyc source -v 看客戶端詳細信息

Linux 124課程 10、分析存儲日誌