包括rsyslog 系統日誌管理和logrotate日誌輪轉mysql
關注問題:哪類程序產生的什麼日誌,存放路徑sql
rsyslogd: 系統專職日誌程序,處理絕大部分日誌記錄,系統操做有關的信息。
各種應用程序均可以以本身的方式記錄日誌。vim
ps aux | grep rsyslogd 查看rsyslogd程序安全
tail -10 /var/log/messages 系統主日誌文件 tail -f /var/log/messages 動態查看日誌文件尾部 tailf /var/log/secure 認證、安全
tail /var/log/yum.log yum tail /var/log/maillog 跟郵件postfix相關 tail /var/log/cron crond、at進程產生的日誌 tail /var/log/dmesg 和系統啓動相關 tail /var/log/audit/audit.log 系統審計日誌 tail /var/log/mysqld.log MySQL tail /var/log/xferlog 和訪問FTP服務器相關 tail /var/log/wtmp 當前登陸的用戶(命令:w) tail /var/log/btmp 最近登陸的用戶(命令last) tail /var/log/lastlog 全部用戶的登陸狀況(命令lastlog )
網站日誌管理服務器
yum install -y httpd systemctl start httpd systemctl stop firewalld
設置橋接網絡
systemctl restart network ip a
輸入IP地址訪問網絡異步
tailf /var/log/httpd/access_log 查看網站訪問日誌
yum install logrotate systemctl start rsyslog.service
rpm -qc rsyslog 查看日誌配置文件 /etc/rsyslog.conf rsyslogd主配置文件 /etc/sysconfig/rsyslog rsyslogd相關文件 /etc/logrotate.d/syslog 和日誌輪轉(切割)相關文件
主配置文件
vim /etc/rsyslog.confide
RULES 規則,是一套生成日誌,以及存儲日誌的策略。post
RULES 設備 +級別 +存放位置
RULES FACILITY +LEVEL +FILE網站
authpriv.* /var/log/secure(SSH信息)
mail.* -/var/log/maillog(發郵件 -, 表示使用異步的方式記錄, 由於日誌會比較大
cron.* /var/log/cron(建立任務)
*.info;mail.none;authpriv.none;cron.none /var/log/messages
系統日誌排除了郵件,認證,計劃日誌。
facility 是系統對某種類型APP事件的定義。如AUTHPRIV是安全事件,CRON是計劃任務事件。用來收集同類程序日誌。
man 3 syslog 查看日誌類型級別手冊
設備類型
level級別
爲了節省空間和整理方便,日誌文件常常須要按!時間或!大小等維度分紅多份,刪除時間久遠的日誌文件。
按照配置進行輪轉
主配置文件:/etc/logrotate.conf (決定每一個日誌文件如何輪轉)
子配置文件夾:/etc/logrotate.d/* 自定義配置,便於管理
vim /etc/logrotate.conf 編輯主配置文件
=全局設置==
weekly //輪轉的週期,一週輪轉
rotate 4 //保留4份
create //輪轉後建立新文件
dateext //使用日期做爲後綴
#compress //是否壓縮
include /etc/logrotate.d //包含該目錄下的子配置文件
/var/log/wtmp { //對某日誌文件設置輪轉的方法
monthly //一月輪轉一次
minsize 1M //最小達到1M才輪轉,monthly and minsize(同時達到兩個條件)
create 0664 root utmp //輪轉後建立新文件,並設置權限
rotate 1 //保留一份
/var/log/btmp {
missingok //丟失不提示
monthly //每個月輪轉一次
create 0600 root utmp //輪轉後建立新文件,並設置權限
rotate 1 //保留一份
}
yum日誌輪轉實例
輪轉的目標文件/var/log/yum.log
vim /etc/logrotate.d/yum /var/log/yum.log { missingok //丟失不執行 # notifempty //空文件不論轉 # maxsize 30k //達到30k輪轉, daily or size # yearly //或者一年一輪轉 daily //縮小週期到1天 rotate 3 //輪轉保留3次 create 0777 root root }
date 04011000
/usr/sbin/logrotate -s /var/lib/logrotate/logrotate.status /etc/logrotate.conf
ls /var/log/yum* 日誌文件已經出現多個
grep ‘yum’ /var/lib/logrotate/logrotate.status //記錄全部日誌文件最近輪轉的時間 「/var/log/yum.log」 2019-3-31-10:0:23