


apache 的輪換日志
使用cronolog可以格式化日志文件的格式,比如按時間分割,易于管理和分析。
當apache日志太大了 也會嚴重影響服務器效率
cronolog的安裝配置非常簡單,簡要說明如下:
1.下載軟件
http://cronolog.org/download/index.html
2.解壓縮
gzip -d cronolog-1.6.2.tar.gz
tar xf cronolog-1.6.2.tar
2.進入相應的目錄./configure
3.make
4.make install
5.修改apache配置文件
自定義日志格式
CustomLog "|/usr/local/sbin/cronolog /opt/apache/logs/access_log.%Y%m%d" combined
如果在虛擬站點中也可以自定義日志的存放方式
我用的方式
CustomLog "|/usr/local/sbin/cronolog /usr/local/apache/logs/%Y%m%d/access_log.%Y%m%d.%H" combined
#每1個小時寫1個log文件,自動刪除log的文件在crontab -e配置
自動刪除7天前的log腳本
用root帳號 crontab -e
然后輸入
10 22 * * * /usr/local/apache/bin/rmlog.sh
然后esc shift+: x 回車保存文件
每天22點10分就會自動運行該腳本
rmlog.sh腳本代碼
#!/bin/bash
shlog=/usr/local/apache/logs/sh.log
logpath="/usr/local/apache/logs/"
today=$(date +%Y%m%d)
file="access_log".$today
oldfile="$logpath"$(date +%Y%m%d --date='7 days ago')
echo $oldfile
#if [ -f $oldfile ]
#then
rm -rf $oldfile >>$shlog 2>&1
echo "[$(date +%Y%m%d)][$(date +%T)][$oldfile] Delete Success!">>$shlog
#else
# echo "[$(date +%Y%m%d)][$(date +%T)][$oldfile] No Old File!">>$shlog
#fi
這段腳本每次執行輸出執行結果到一個sh.log文件中以讓自己知道 執行結果
[root@server3 ~]# date
二 1月 9 09:47:22 CST 2007
[root@server3 ~]# /usr/local/apache2/bin/httpd -v
Server version: Apache/2.0.54
Server built: Sep 1 2006 16:58:34
[root@server3 ~]#
CustomLog "|/usr/local/apache2/bin/rotatelogs /usr/local/apache2/logs/music-access_log.%Y%m%d 86400 480" combined
TransferLog "|/usr/local/apache2/bin/rotatelogs /usr/local/apache2/logs/music-access_log.%Y%m%d 86400 480"
關鍵字:apache 輪換 日志
新文章:
- CentOS7下圖形配置網絡的方法
- CentOS 7如何添加刪除用戶
- 如何解決centos7雙系統后丟失windows啟動項
- CentOS單網卡如何批量添加不同IP段
- CentOS下iconv命令的介紹
- Centos7 SSH密鑰登陸及密碼密鑰雙重驗證詳解
- CentOS 7.1添加刪除用戶的方法
- CentOS查找/掃描局域網打印機IP講解
- CentOS7使用hostapd實現無AP模式的詳解
- su命令不能切換root的解決方法
- 解決VMware下CentOS7網絡重啟出錯
- 解決Centos7雙系統后丟失windows啟動項
- CentOS下如何避免文件覆蓋
- CentOS7和CentOS6系統有什么不同呢
- Centos 6.6默認iptable規則詳解