日誌是用來記錄系統運行狀態的歷史事件,主要記錄特定時間發生的事件,同時根據日誌級別,事件的關鍵性程序,一般叫做LogLevel.服務器
syslog: 系統級別:syslogd 內核級別:klogd rsyslog特色: 多線程: UDP,TCP,SSL,TLS協議 支持MySQL, PGSQL,ORACLE日誌存儲 強大的過濾器,可實現過濾日誌信息中任何部分 自定義輸出格式 Elasticsearch分佈式日誌,logstash日誌,kibans = ELK
facility:設施,從功能或程序上對日誌進行分類 auth,authpriv,cron,daemon,kernel,lpr,mail,mark,news,security,user,uucp,local0-local7,syslog priority:日誌級別 debug,info,notice,warning,error,critical,alert,emergy 指定級別: *:全部級別 none:沒有級別 priority:此級別及更高級別的日誌信息 =priority:此級別 facility.prority /var/log/messages
主程序:rsyslogd 配置文件:/etc/rsyslog.conf kern.* /dev/console(內核日誌記錄在終端輸出,能夠用dmseg) *.info;mail.none;authpriv.none;cron.none /var/log/messages(除了mail,authpriv,cron以外全部的日誌記錄在messages文件中) mail.* -/var/log/maillog(-表示異步寫入) uucp,news.crit /var/log/spooler(表示uucp和news同級別crit記錄在spooler文件中) local2.* /var/log/sshd.log (自定義,如把/etc/ssh/sshd_conf中的SyslogFacility local2在/etc/rsyslog.conf定義local2.* /var/log/sshd.log,這樣ssh登錄的log記錄在sshd.log中)
RULES: facility.priority target target: 文件路徑:記錄於指定的日誌文件中,一般應該在/var/log目錄下; 用戶:將日誌通知給指定用戶: *指全部用戶 日誌服務器:@host host:必需要監聽在tcp或udp協議514端口上提供服務 管道:|COMMAND
事件產生的日期時間 主機 進程(pid) 事件內容 某些日誌記錄是進進制格式:(last,lastb,lastlog) /var/log/wtmp:當前系統上成功登錄的日誌(last指令查詢) /var/log/btmp:當前系統上失敗的登陸嘗試(lastb指令查詢) lastlog命令:顯示當前系統每個用戶最近一次的登錄時間
# Provides UDP syslog reception $ModLoad imudp $UDPServerRun 514 # Provides TCP syslog reception $ModLoad imtcp $InputTCPServerRun 51 以上配置同時啓動TCP和UDP
@IP (用UDP協議發送log到服務器) @@IP(用TCP協議發送log到服務器)