日志分割
- 一、日志分割
- 二、 rotatelogs分割工具
- 三、第三方工具cronolog
- 四、日志分割
-
- 實驗一、使用Apache自帶的rotatelogs進行分割日志
- 實驗一、使用第三方工具cronolog進行分割
一、日志分割
1、随着網站的通路量增加,預設情況下Apache的單個日志檔案也會越來越大
- 日志檔案占用磁盤空間很大
-
檢視相關資訊不友善
2、對日志檔案進行分割
- Apache自帶rotatelogs分割工具實作
- 第三方工具cronolog分割
二、 rotatelogs分割工具
1、配置網站的日志檔案轉交給rotatelogs分割處理
2、配置格式
ErrorLog "| rotatelogs指令的絕對路徑-日志檔案路徑/網站名-error_%Y %m%d.log 86400”
CustomLog "| rotatelogs指令的絕對路徑1日志檔案路徑/網站名-access_%Y%m%d.log 86400" combined
實際生産環境中,一個伺服器絕大多數對應N個子域名站點,為了友善統一管理, 可以用虛拟主機的方式進行配置,并用網站名辨別日志檔案
三、第三方工具cronolog
1、源碼編譯安裝cronolog工具
2、配置網站日志檔案轉交給cronolog分割處理
3、配置格式
ErrorLog "| cronolog指令的絕對路徑 日志檔案路徑/網站名-error_ %Y%m%d.log"
CustomLog "| cronolog指令的絕對路徑 日志檔案路徑/網站名_ %Y%m%d.log" combined
四、日志分割
實驗一、使用Apache自帶的rotatelogs進行分割日志
[[email protected] opt]# iptables -F
[[email protected] opt]# setenforce 0
[[email protected] opt]# yum -y install httpd
[[email protected] opt]# which rotatelogs //找絕對路徑
/usr/sbin/rotatelogs
[[email protected] opt]# vim /etc/httpd/conf/httpd.conf
Listen 192.168.200.110:80
#Listen 80
ServerName www.kgc.com:80
[[email protected] opt]# ls /var/log/httpd/
[[email protected] opt]# systemctl start httpd
[[email protected] opt]# netstat -antp | grep 80
tcp 0 0 192.168.200.110:80 0.0.0.0:* LISTEN 17132/httpd
[[email protected] opt]# cd /var/log/httpd/
[[email protected] opt]# cat acces_log //空的
使用浏覽器通路192.168.200.110
[[email protected] opt]# cat acces_log //有内容
192.168.200.50 - - [05/Aug/2020:18:37:52 +0800] "GET / HTTP/1.1" 403 4897 "-" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/70.0.3538.102 Safari/537.36 Edge/18.18363"
[[email protected] opt]# vim /etc/httpd/conf/httpd.conf
ErrorLog "| /usr/sbin/rotatelogs -l logs/www.kgc.com.error_%Y%m%d.log 86400"
CustomLog "| /usr/sbin/rotatelogs -l logs/www.kgc.com.access_%Y%m%d.log 86400" combined
[[email protected] opt]# systemctl restart httpd
[[email protected] httpd]# httpd -t //檢查配置檔案文法
Syntax OK
[[email protected] httpd]# ls /var/log/httpd/ //檢視,沒有通路頁面,沒有access的日志
access_log error_log www.kgc.com.error_20200805.log
在浏覽器中通路192.168.200.110
[[email protected] httpd]# ls /var/log/httpd/
access_log www.kgc.com.access_20200805.log
error_log www.kgc.com.error_20200805.log
[[email protected] httpd]# cat www.kgc.com.access_20200805.log
192.168.200.1 - - [05/Aug/2020:18:51:09 +0800] "GET /noindex/css/fonts/Regular/OpenSans-Regular.ttf HTTP/1.1" 404 244
[[email protected] httpd]# date //檢視時間
2020年 08月 05日 星期三 18:53:42 CST
[[email protected] httpd]# date -s 09/05/20 //修改時間
2020年 09月 05日 星期六 00:00:00 CST
[[email protected] httpd]# systemctl restart httpd
[[email protected] httpd]# ls /var/log/httpd/
access_log error_log www.kgc.com.access_20200805.log www.kgc.com.error_20200805.log www.kgc.com.error_20200905.log
在浏覽器中通路192.168.200.110
[[email protected] httpd]# ls /var/log/httpd/
access_log error_log www.kgc.com.access_20200805.log www.kgc.com.access_20200905.log www.kgc.com.error_20200805.log www.kgc.com.error_20200905.log //有新的日志檔案
實驗一、使用第三方工具cronolog進行分割
[[email protected] ~]# cd /opt/
[[email protected] opt]# ls
rh
[[email protected] opt]# ls //xshell拉入cronolog壓縮包并檢視
cronolog-1.6.2-14.el7.x86_64.rpm rh
[[email protected] opt]# rpm -ivh cronolog-1.6.2-14.el7.x86_64.rpm //安裝cronolog的rpm包
[[email protected] opt]# which cronolog //檢視cronolog 絕對路徑
/usr/sbin/cronolog
[[email protected] opt]# cd /var/log/httpd/
[[email protected] httpd]# ls
access_log error_log
[[email protected] httpd]# vim /etc/httpd/conf/httpd.conf
CustomLog "| /usr/sbin/cronolog logs/www.kgc.com.access_%Y%m%d.log" combined
ErrorLog "| /usr/sbin/cronolog logs/www.kgc.com.error_%Y%m%d.log"
[[email protected] httpd]# systemctl restart httpd
[[email protected] httpd]# ls /var/log/httpd/
access_log error_log www.kgc.com.error_20200805.log
在浏覽器中通路192.168.200.110
[[email protected] httpd]# ls /var/log/httpd/
access_log error_log www.kgc.com.access_20200805.log www.kgc.com.error_20200805.log
[[email protected] httpd]# date -s 09/05/20
2020年 09月 05日 星期六 00:00:00 CST
[[email protected] httpd]# systemctl restart httpd
[[email protected] httpd]# ls /var/log/httpd/
access_log www.kgc.com.access_20200805.log www.kgc.com.error_20200905.log
error_log www.kgc.com.error_20200805.log
在浏覽器中通路192.168.200.110
[[email protected] httpd]# ls /var/log/httpd/
access_log www.kgc.com.access_20200805.log www.kgc.com.error_20200805.log
error_log www.kgc.com.access_20200905.log www.kgc.com.error_20200905.log