Linux 日誌管理——rsyslog&logrotate日誌管理【CentOS】

包括rsyslog 系統日誌管理和logrotate日誌輪轉mysql

  • rsyslog 系統日誌管理

關注問題:哪類程序產生的什麼日誌,存放路徑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   查看網站訪問日誌

  • rsyslogd配置
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&LEVEL

facility 是系統對某種類型APP事件的定義。如AUTHPRIV是安全事件,CRON是計劃任務事件。用來收集同類程序日誌。

man 3 syslog 查看日誌類型級別手冊

設備類型

level級別

  • logrotate日誌輪轉

爲了節省空間和整理方便,日誌文件常常須要按!時間或!大小等維度分紅多份,刪除時間久遠的日誌文件。

按照配置進行輪轉
主配置文件:/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

相關文章
相關標籤/搜索