linux日誌文件

 

日誌文件vim

 

日誌文件記錄本機什麼時候何事何人所爲安全

 

日誌文件在管理中做用服務器

1,系統故障排錯ide

2,統計訪問量測試

 

日誌軟件:rpm  -q  rsyslogspa

文件列表:rpm  -ql  rsyslog命令行

配置文件:rpm  -qc  rsyslogunix

 

日誌文件默認位置:ls  /var/log調試

#:某些第3方軟件的日誌文件存在於本身的目錄中的log目錄中或其餘位置rest

 

常見的日誌文件(/var/log):

#:文件類型用file命令查多很多天志文件是純文本文件可用cat、head查看還有些二進制(data)日誌文件需用專用命令查看

secure : 安全相關,主要是用戶認證,如登陸 、建立和刪除帳號 、sudo
audit/audit.log:審計日誌.跟用戶帳號相關
messages:記錄系統和軟件的絕大多數消息.如服務啓動 、中止 、服務錯誤等.
boot.log:系統啓動日誌.能看到啓動流程.
cron:計劃任務日誌.會記錄crontab計劃任務的建立執行信息.
dmesg:硬件設備信息(device).純文本,也能夠用dmesg命令查看.
yum.log:yum軟件的日誌,記錄yum安裝卸載軟件的記錄.
lastlog:最後登陸的日誌.lastlog查看(二進制日誌文件)
btmp:登陸失敗的信息(bad).lastb(二進制日誌文件)
wtmp:正確登陸的全部用戶命令(who、w).last(二進制日誌文件)

 

 

rsyslog日誌程序的配置文件:rpm -qc rsyslog 查的結果以下
/etc/logrotate.d/syslog 日誌輪轉(切割輪替)策略文件
/etc/rsyslog.conf 主配置文件
/etc/sysconfig/rsyslog 環境設置配置文件


                                      

cat /etc/rsyslog.conf  主配置文件
格式:  類別.等級   日誌文件路徑
#kern.* /dev/console
*.info;mail.none;authpriv.none;cron.none  /var/log/messages
authpriv.* /var/log/secure
mail.* -/var/log/maillog
cron.* /var/log/cron
*.emerg :omusrmsg:*
uucp,news.crit /var/log/spooler
local7.* /var/log/boot.log
local3.notice /var/log/user.log 添加此行用於logger測試案例
第一列爲日誌類型和日誌優先級的組合每一個類型和優先級的組合稱爲一個選擇器後面一列爲保存日誌的文件服務器或輸出日誌的終端。rsyslog 進程根據選擇器決定如何操做日誌

                                                   

日誌類別:man 3 syslog
:日誌類別主要是用來區分軟件服務.
LOG_AUTH 安全或受權信息
LOG_AUTHPRIV  安全或受權信息 (私有)
LOG_CRON 計劃任務
LOG_DAEMON  系統守護進程 without separate facility value
LOG_FTP ftp進程相關
LOG_KERN 內核消息 (these can't be generated from user processes)
LOG_LOCAL0 through LOG_LOCAL7 本地自定義
LOG_LPR 打印子系統
LOG_MAIL 郵件子系統
LOG_NEWS 新聞組子系統
LOG_SYSLOG 系統消息(8)
LOG_USER (default) 通常用戶的等級的消息
LOG_UUCP UUCP subsystem unix like機器自己相關子系統

日誌等級level:man 3 syslog
:等級主要用來區分某個軟件中日誌的分類.
LOG_EMERG 疼痛級,嚴重錯誤
LOG_ALERT 報警.必須當即採起措施
LOG_CRIT 較嚴重
LOG_ERR 錯誤
LOG_WARNING  警告
LOG_NOTICE 提示信息.normal, but significant, condition
LOG_INFO  信息
LOG_DEBUG 調試級信息
:等級爲none表示不記錄任何信息.
練習:要求建立一個跟messages日誌文件相同的日誌規則,將日誌記錄到/var/log/my.log文件中.
vim /etc/rsyslog.conf 執行以下操做
*.info;mail.none;authpriv.none;cron.none  /var/log/messages 找到此行
*.info;mail.none;authpriv.*;cron.none  /var/log/my.log 添加此行

重啓rsyslog服務:systemctl restart rsyslog
查看日誌: cat /var/log/my.log
 
logger 命令
logger Shell命令能夠經過該命令使用 rsyslog 的系統日誌模塊還能夠從命令行直接向系統日誌文件寫入一行信息
 
logger命令的語法爲
logger [-i] [-f filename] [-p priority] [-t tag] [message...]
每一個選項的含義以下
-f filename: filename 文件的內容做爲日誌
-i:每行都記錄 logger 進程的ID。
-p priority:指定優先級優先級必須是形如 facility.priority 的完整的選擇器默認優先級爲 user.notice。
-t tag:使用指定的標籤標記每個記錄行
message:要寫入的日誌內容多條日誌以空格爲分隔若是沒有指定日誌內容而且 -f filename 選項爲空那麼會把標準輸入做爲日誌內容

例如ping命令的結果寫入日誌
建立ping的日誌:ping -c 3 127.0.0.1 | logger -it logger_test -p local3.notice
建立ping的日誌:ping -c 3 127.0.0.5 | logger -it logger_test -p local3.notice
查看日誌文件:cat /var/log/user.log
查看到的日誌內容:Oct 6 12:48:53 kevein logger_test[22484]: 64 bytes from 192.168.0.1: icmp_seq=10 ttl=253 time=931 ms
發現ping命令的結果成功輸出到 /var/log/userlog 文件
 
命令 logger -it logger_test -p local3.notice 各選項的含義
-i:在每行都記錄進程ID;
-t logger_test:每行記錄都加上「logger_test」這個標籤
-p local3.notice:設置日誌類型和優先級

相關文章
相關標籤/搜索