A. 使用 cronolog 為每一天建立一個(gè)新的日志
從http://cronolog.org/download/ 可以下載 cronolog 程序,把下載到的 cronolog 程序并放到Apache的bin (也即C:/Program Files/Zend/Apache2/bin) 目錄下(詳細(xì)參數(shù)參見:http://cronolog.org/usage.html)
主配置文件中的使用方法
ErrorLog "|bin/cronolog logs/error_%Y%m%d.log"
CustomLog "|bin/cronolog logs/access_%Y%m%d.log" combined
虛擬主機(jī)配置文件中的使用方法
ServerAdmin webmaster@localhost
DocumentRoot "E:/htdocs"
ServerName localhost
ErrorLog "|bin/cronolog logs/localhost/error_%Y%m%d.log"
CustomLog "|bin/cronolog logs/localhost/access_%Y%m%d.log" combined
B. 使用 rotatelogs 每隔一天記錄一個(gè)日志
rotatelogs 是 Apache 2.2 中自帶的管道日志程序,參數(shù)如下(參見:http://lamp.linux.gov.cn/Apache/ApacheMenu/programs/rotatelogs.html)
語法
rotatelogs [ -l ] logfile [ rotationtime [ offset ]] | [ filesizeM ]
選項(xiàng)
-l
使用本地時(shí)間代替GMT時(shí)間作為時(shí)間基準(zhǔn)。注意:在一個(gè)改變GMT偏移量(比如夏令時(shí))的環(huán)境中使用-l會(huì)導(dǎo)致不可預(yù)料的結(jié)果。
logfile
它加上基準(zhǔn)名就是日志文件名。如果logfile中包含”%”,則它會(huì)被視為用于strftime()的格式字符串;否則它會(huì)被自動(dòng)加上以秒為單位的”.nnnnnnnnnn”后綴。這兩種格式都表示新的日志開始使用的時(shí)間。
rotationtime
日志文件滾動(dòng)的以秒為單位的間隔時(shí)間。
offset
相對于UTC的時(shí)差的分鐘數(shù)。如果省略,則假定為”0″并使用UTC時(shí)間。比如,要指定UTC時(shí)差為”-5小時(shí)”的地區(qū)的當(dāng)?shù)貢r(shí)間,則此參數(shù)應(yīng)為”-300″。
filesizeM
指定以filesizeM文件大小滾動(dòng),而不是按照時(shí)間或時(shí)差滾動(dòng)。
主配置文件中的使用方法
ErrorLog "|bin/rotatelogs -l logs/error_%Y%m%d.log 86400"
CustomLog "|bin/rotatelogs -l logs/access_%Y%m%d.log 86400" combined
虛擬主機(jī)配置文件中的使用方法
ServerAdmin webmaster@localhost
DocumentRoot "D:/www"
ServerName localhost
ErrorLog "|bin/rotatelogs -l logs/localhost/error_%Y%m%d.log 86400"
CustomLog "|bin/rotatelogs -l logs/localhost/access_%Y%m%d.log 86400" combined
PS1:這兩個(gè)管道日志文件程序還有一點(diǎn)不同之處是使用 cronolog 時(shí)如果日志是放在某個(gè)不存在的路徑則會(huì)自動(dòng)創(chuàng)建目錄,而使用 rotatelogs 時(shí)不能自動(dòng)創(chuàng)建,這一點(diǎn)要特別注意。
PS2:有關(guān) Apache 日志文件的更多信息請參見:
新聞熱點(diǎn)
疑難解答