1. 程式人生 > >系統日誌管理

系統日誌管理

1、日誌的檢視
日誌可以記錄下系統所產生的所有行為,並按照某種規範表達出來。我們可以使用日誌系統所記錄的資訊為系統進行排錯,優化系統的效能,或者根據這些資訊調整系統的行為。
收集你想要的資料,分析出有價值的資訊,可以提高系統、產品的安全性,可以幫助開發完善程式碼,優化產品。
日誌會成為在事故發生後查明“發生了什麼”的一個很好的“取證”資訊來源。日誌可以為審計進行審計跟蹤。系統用久了偶爾也會出現一些錯誤,我們需要日誌來給系統排錯,在一些網路應用服務不能正常工作的時候,我們需要用日誌來做問題定位。
日誌在linux中存放在/var/log/中,我們檢視一下其中有哪些日誌
這裡寫圖片描述
系統日誌主要是存放系統內建程式或系統核心之類的日誌資訊如 alternatives.log 、btmp 等等,應用日誌主要是我們裝的第三方應用所產生的日誌如 tomcat7 、apache2 等等
日誌資訊表:
這裡寫圖片描述

less /apt/history.log

這裡寫圖片描述
這是系統軟體近期更新資訊。
刪除git軟體來檢視日誌:

sudo apt-get remove --purge git

這裡寫圖片描述

檢視日誌:
這裡寫圖片描述
其他的日誌和這個差不多,一般都是時間和操作。但是有兩個日誌檔案和這些不同,他們不是ASCLL碼編寫的而是二進位制檔案。wtmp 、lastlog日誌用last命令開啟。
這裡寫圖片描述

2.日誌的配置
日誌的格式和輸出位置有兩種型別,一種是軟體開發商自己定義的日誌格式和輸出位置,另一種是系統提供的日誌服務程式。在ubuntu中是syslog
yslog 是一個系統日誌記錄程式,在早期的大部分 Linux 發行版都是內建 syslog,讓其作為系統的預設日誌收集工具,雖然時代的進步與發展,syslog 已經年老體衰跟不上時代的需求,所以他被 rsyslog (rocket-fast system for log)所代替了,較新的Ubuntu、Fedora 等等都是預設使用 rsyslog 作為系統的日誌收集工具。這樣能實時收集日誌資訊的程式都會有其守護程序如 rsyslog 的守護程序便是 rsyslogd。
啟動rsyslog程式,檢視程序:

sudo server rsyslog start
ps aux |grep syslog

這裡寫圖片描述
下面我們就配置syslog程式,他的配置檔案有兩個/etc/rsyslog.conf主要是配置的環境,也就是 rsyslog 的載入什麼模組,檔案的所屬者等。/etc/rsyslog.d/50-default.conf主要是配置的 Filter Conditions 。
rsyslog由三個部分組成,input ,parser(剖析),output。input和output前還有排隊模組,來實現高效的輸入輸出。input用於從各種各樣的來源收集message。output輸出到不同路徑。
這裡寫圖片描述

瞭解了 rsyslog 環境的配置檔案之後,我們看向 /etc/rsyslog.d/50-default.conf 這個配置檔案,這個檔案中主要是配置的 Filter Conditions,也就我們在流程圖中所看見的 Parser & Filter Engine,它的名字叫 Selectors 是過濾 syslog 的傳統方法,他主要由兩部分組成,facility 與 priority,其配置格式如下
這裡寫圖片描述

這裡寫圖片描述

這裡寫圖片描述
這裡寫圖片描述