歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
您现在的位置: Linux教程網 >> UnixLinux >  >> Linux基礎 >> Linux技術

Linux下日志系統詳解

Linux下日志系統詳1.linux系統上有兩個日志服務syslog和syslog-ng
syslog服務有兩個進程syslogd和klogd
syslogd: 系統產生的日志信息
klogd:內核產生的日志信息
klogd:在系統啟動時內核產生日志輸出至物理終端(/dev/console)並存放至/var/log/dmesg文件中
查看klogd產生的日志信息可通過 dmesg 和 cat /var/log/dmesg 命令查看
syslogd:在系統啟動後,由各子系統產生日志並存放至
/var/log/messages: 除內核日志信息外大部分日志信息; /var/log/maillog: 郵件系統產生的日志信息; /var/log/secure: 安全相關的日志,如用戶登入等2.syslog配置文件在/etc/syslog.conf 輸寫格式為:日志來源.級別 存放路徑 日志來源有以下幾種: auth # 認證
authpriv # 權限,授權
cron # 任務計劃
daemon # 守護進程
kern # 內核
lpr # 打印
mail # 郵件
mark # 標記
news # 新聞
security # 安全
syslog # syslog本身
user # 用戶
uucp # unix系統之間傳送文件
local0 到 local7 # 用戶自定義
* # 所有的日志來源
級別:以下從低至高
debug # 程序或系統調試信息
info # 普通信息
notice # 不影響正常功能,需要注意的消息
warning/warn # 可能影響系統功能,但需提醒用戶的重要事件
err/error # 錯誤信息
crit # 比較嚴重的
alert # 必須立馬處理
emerg/panic # 驚恐會導致系統崩潰
* # 表示所有日志級別
none # 跟* 相反,表示不顯示
存放路徑:
絕對路徑 # 普通文件 如: /var/log/messages
| # 管道 通過管道送給其他的命令處理
終端 # 終端 如:/dev/console
@HOST # 遠程主機 如: @172.16.1.1
用戶 # 系統用戶 如: root
* # 登錄到系統上的所有用戶,如emerg系統默認定義
3.舉例說明:
mail.info /var/log/mail.log # 表示將mail級別為info及info以上級別的信息
auth.=info @172.16.1.1 # 表示將auth的info的信息記錄到172.16.1.1主機 user.!=error /var/log/messages # 表示記錄user相關的,不包括error級別的信息
user.!error /var/log/messages # 將user.error以下級別的信息
*.info /var/log/messages # 表示記錄所有的日志信息的info級別
mail.* /var/log/mail.log # 表示記錄mail所有級別的信息
*.* /var/all.log # 所有日志來源的所有級別信息
cron.info;mail.info //var/log/mail.log # 多個日志來源可以用";" 隔開
cron,mail.info /var/log/mail.log # 與cron.info;mail.info功能相同
mail.*;mail.!=info /var/log/mail.log # 表示mail除info級別外所有信息
4.日志需要滾動切割:當日志文件達到多大或多長時間進行切割,刪除或創建 配置文件存放至/etc/logrotate.conf 且每天執行/etc/cron.daily/logrotate 計劃任務

5.部署一個日志遠程服務器:/etc/rc.d/init.d/syslog服務腳本配置文件在/etc/sysconfig/syslogvim /etc/sysconfig/syslog中將SYSLOGD_OPTIONS="-m 0" 改成SYSLOGD_OPTIONS="-m 0 -r"
本文出自 “夏維柳” 博客,請務必保留此出處http://willow.blog.51cto.com/6574604/1770366
Copyright © Linux教程網 All Rights Reserved