【轉】Unix系統日誌介紹和集中採集思路

msdnchina發表於2011-10-08

http://blog.csdn.net/bingzhuan/article/details/2833434

非常感謝原作者:5love

一 日誌作用

1、執行情況
反映系統當前執行情況,系統發生了那些動作等。
2、故障預警
預報可能發生的故障或已經發生的故障,便於及時處理。
3、故障分析處理
對已發生故障的原因、經過,便於故障分析處理。
4、安全、審計
記錄系統登入情況、命令執行情況等。
二 常用UNIX系統日誌檔案
1、solaris
/var/adm/
/var/adm/messages

2、hp unix
/var/adm/syslog/syslog.log
3、sco unix
/etc/log目錄

4、red hat
/var/log目錄

三 HP-UNIX日誌維護工作介紹
1. 常用日誌檔案
/etc/rc.log 執行記錄 用讀取文字檔案的方法,
/var/adm/syslog/syslog.log 一般系統日誌 注意提示資訊及對應的分析發生的相關問題。
/var/adm/sw/*.log 軟體安裝日誌 分析發生的相關問題。
/var/adm/wtmp 使用者登入資訊 用last 命令檢視
/var/adm/btmp 使用者登入失敗資訊 用lastb 命令檢視
/var/sam/log/samlog SAM 日誌
/var/spool/mqueue/syslog sendmail 日誌
/etc/shutdownlog 關機(shutdown)資訊
/usr/adm/diag/LOGxxx 用工具檢視的日誌
/var/adm/nettl.LOG* 網路日誌 由HP 工程師負責
/var/adm/crash core dump 檔案 由HP 工程師負責
2、日誌檔案的維護
(1)日誌檔案清除:
日誌檔案清理
執行以下命令清空日誌檔案:
# > 檔名 或者
# cat /dev/null > 檔名
注:如果刪除了這些檔案,將關閉登入記錄功能。
(2)日誌檔案定期清理
wtmp 和 btmp 檔案會無限制地增長,因此要定期檢查這兩個檔案。請定期刪除無用資訊,以
防止檔案過大。wtmp 和 btmp 檔案不是由負責維護它們的程式建立的。如果刪除了這些檔案,將關閉
登入記錄功能。
(3)日誌檔案的安全考慮
有些使用者登入時在登入提示符處輸入口令或部分口令。此類登入失敗情況將記錄在btmps檔案中,從
而暴露了口令或部分口令。如果安全性策略要求某個使用者以前的會話不能被其他使用者看到,則可能還需
要更改 /var/adm/wtmp 檔案的檔案保護設定。由於這些原因,應該對這些檔案設定檔案保護,使得只
有管理員可讀取該檔案。
chmod 400 /var/adm/btmp

3、HP-unix的常用的線上檢測工具
(1、STM
Support Tools Manager,這是HP-unix系統自帶的一個診斷和支援工具包。STM自帶了硬體測試、日誌檢視等工具包,日常維護中常用到的是它的日誌工具---logtool。
產生的日誌檔案位置:/var/stm/logs/os
由後臺程式diagmond、diaglogd支援。

(2、EMS
event monitoring service,HP unix事件告警服務。可以人工設定一些告警門限,透過告警門限自動監視系統執行情況。
配置工具:/etc/opt/resmon/lbin/monconfig
產生的日誌檔案位置:/var/opt/resmon/log/event.log
由後臺程式emsagent、p_client 支援
四、 HP-unix作業系統日誌檔案的生成過程
1、syslogd程式
syslogd是一個用於記錄系統資訊的後臺程式。
啟動指令碼位於/sbin/rc2.d/S220syslogd
如果ps –ef | grep syslog無匹配記錄,可以用上述指令碼路徑啟動syslog程式。
2、配置檔案syslog.conf,透過修改配置檔案,可以實現:
(1. 記錄到系統日誌中;
(2. 寫到系統控制檯上;
(3. 轉發給指定的使用者;
(4. 轉發給其他主機的syslogd。
3、syslog.conf的語法簡介:
舉例:
nvbrg2#[/]cat /etc/syslog.conf
# @(#)B.11.11_LR
#
# syslogd configuration file.
#
# See syslogd(1M) for information about the format of this file.
#
mail.debug /var/adm/syslog/mail.log
*.info;mail.none /var/adm/syslog/syslog.log
*.alert root
*.alert /dev/console
*.emerg *
*.info;mail.debug;*.alert;*.emerg @133.191.3.252
nvbrg2#[/]
4、HP-unix中syslog.conf中的配置引數簡介
syslog 訊息採用一種包含可選優先順序和裝置的標準格式。
優先順序指示訊息的緊急程度。裝置指示釋出訊息的子系統。
以下列出了 /usr/include/syslog.h 中定義的優先順序和裝置資源。
syslog 優先順序
LOG_EMERG 混亂狀況,通常廣播到所有使用者。
LOG_ALERT 應立即更正的狀況,如系統資料庫損壞。
LOG_CRIT 緊急狀況,如硬裝置錯誤。LOG_ERR一般錯誤。
LOG_WARNING 警告訊息。LOG_NOTICE不屬於錯誤但可能需要特別注意的狀況。
LOG_INFO 資訊性訊息。
LOG_DEBUG 該訊息包含通常僅在除錯程式時使用的資訊。
syslog 訊息採用一種包含可選優先順序和裝置的標準格式。
優先順序指示訊息的緊急程度。裝置指示釋出訊息的子系統。
以下列出了 /usr/include/syslog.h 中定義的優先順序和裝置資源。
介紹了 syslog 裝置資源訊息。
syslog 裝置資源訊息
訊息說明
LOG_KERN 由核心生成的訊息。任何使用者程式都無法生成這些訊息。
LOG_USER 由隨機使用者程式生成的訊息。如果未指定任何裝置,則為預設裝置標
識符。
LOG_MAIL 來自郵件系統的訊息。
LOG_DAEMON 來自 inetd、ftpd等系統守護程式的訊息。
LOG_AUTH 來自 login、su、getty等授權系統的訊息。
LOG_SYSLOG 由 syslogd 守護程式內部生成的訊息。
LOG_LPR 來自lp、lpsched等印表機假離線系統的訊息。
LOG_NEWS 來自新聞系統的訊息。LOG_UUCP來自 UUCP 系統的訊息。
LOG_CRON 來自 CRON 守護程式的訊息。
LOG_LOCAL0 - LOC_LOCAL7 保留供本地使用。

5、當前基礎系統組系統維護工作中的不利因素
(1、人員不足
(2、監視工作無法自動化,完全依賴於人力
(3、系統維護工作效率低下
五 UNIX系統日誌集中採集思路


1、日誌採集方法:
(1)透過修改各系統日誌配置檔案,將日誌資訊儲存本地一同時,轉發給日誌服一份。
(2)透過指令碼程式,定期將日誌檔案透過logger工具傳入集中日誌伺服器。
在日誌伺服器側,將日誌資訊按一定方式分欄位,匯入mysql資料庫。
製作查詢頁面,根據需要,查詢系統日誌訊息。
2、日誌集中優點
(1、更易於日誌檔案分析- 集中式日誌可以使管理員在一臺伺服器上對各系統日誌情況進行集中檢視分析,提高效率。
(2、增強了安全性 - 日誌檔案在本機記錄的同時,在集中日誌伺服器上也進行了記錄,提高了日誌檔案儲存的可靠性。
(3、簡化了日誌歸檔 - 各系統日誌歸檔工作可以透過在集中日誌伺服器的一條mysql語句完成,將複雜、麻煩的工作簡單化。
3、缺點:
syslogd 僅支援使用 UDP 進行轉發。UDP是一個“無連線”協議,它不提供流控制,也不保證訊息送達。同樣地,它可能會丟失轉發的日誌訊息。
syslogd目前僅能對系統級日誌資訊,按資訊的內容自動區分欄位,匯入資料庫。但對於各系統資料庫、應用系統本身產生的告警雖然可以收集,但無法按資訊內容區分欄位入庫,有待於在下一步工作中改進。
六 下一步工作的思考
1、 日誌系統只提供了一個監視系統執行情況的工具,但分析處理具體故障,還需要根據具體問題具體分析,最終故障的解決依賴於我們維護水平的提高,今後我們還需要多學習、多思考、多總結。

2、 集中日誌程式對資料庫、應用系統事件日誌的集中採集功能需要改進和進一步最佳化,方便維護工作。

3、 長遠來看,不僅系統日誌需要集中,各系統主機執行效能指標都需要集中,便於提高維護工作效率。

[@more@]

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/161195/viewspace-1055498/,如需轉載,請註明出處,否則將追究法律責任。

相關文章