看了网上很多log4php的文章,大多是v0.8、v0.9的,都很旧了,按上面的做总是不对,现在都出到v2.0了,好了,我就给大家说说此版本的如何配置!
1、先上http://www.apache.org/dyn/closer.cgi/incubator/log4php/2.0.0/apache-log4php-2.0.0-incubating-src.zip
下载log4php
2、把压缩包的.\src\main\php中的文件解压到工程下的.\library\log4php
3、在工程文件下新建一个文件 log4php.properties 内容如下:
log4php.threshold = WARN
log4php.rootLogger = WARN, default
#log4php.appender.ht = LoggerAppenderRollingFile
#log4php.appender.ht.File = e:\wwwroot\example.log
#log4php.appender.ht.layout = LoggerLayoutPattern
#log4php.appender.ht.layout.ConversionPattern = "%d %-5p: %m (%F:%L)%n"
log4php.appender.default = LoggerAppenderDailyFile
log4php.appender.default.layout = LoggerLayoutPattern
log4php.appender.default.layout.ConversionPattern = "%d{ISO8601} [%p] %c: %m (at %F line %L)%n"
log4php.appender.default.datePattern = Ymd
log4php.appender.default.file = logs/errorLog_%s.log
可以参考管网的手册:
4、在站点入口配置的php文件中加一行
define('LOG4PHP_DIR', APPLICATION_PATH ."/library/log4php");
5、在输出错误的函数中这样写:
date_default_timezone_set('Asia/Hong_Kong');
//设置日志显示时间所在的时区
require_once(LOG4PHP_DIR."/Logger.php");
Logger::configure(APPLICATION_PATH."/log4php.properties");
//APPLICATION_PATH是工程目录的路径哦
$logger = @Logger::getLogger("ht");
$logger->error($msg); //输出错误 $msg
//$logger->info($msg); //输出信息 $msg
//$logger->warn($msg); //输出警告 $msg
date_default_timezone_set('UTC'); //设置回原来的时区
OK,运行后,可以看到工程目录的logs目录下生成了日志文件 ......