2011-08-29
很多人在写php代码时并不直接调试,而是喜欢用log。log4php是一款强大的工具。2011年8月最新版为2.1版。
下载:
http://logging.apache.org/log4php/download.html
直接下载source,linux下: apache-log4php-2.1.0-src.tar.gz windows下: apache-log4php-2.1.0-src.zip
本人在windows下测试。国内也可以直接用http://mirror.bjtu.edu.cn/apache//logging/log4php/2.1.0/apache-log4php-2.1.0-src.tar.gz http://mirror.bjtu.edu.cn/apache//logging/log4php/2.1.0/apache-log4php-2.1.0-src.zip 这个镜像下载。 下载完成后,解压main目录下的php目录,到项目下的libs,并将php重命名为log4php目录。
假设我的测试项目是feedback。 在跟目录下新建log4php的配置文件log4php.properties
log4php.threshold = DEBUG
log4php.rootLogger = WARN, default
#log4php.appender.fdidx = LoggerAppenderRollingFile
#log4php.appender.fdidx.File = d:/log4php/feedback.log
#log4php.appender.fdidx.layout = LoggerLayoutPattern
#log4php.appender.fdidx.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/error_%s.log
该properties会适用default规则。
再在根下新建index.php
<html>
<head>
<meta content="text/html; charset=UTF-8" http-equiv="Content-Type"></meta>
</head>
<body>
';
echo '中国人';
//设置日志显示时间所在的时区
require_once(LOG4PHP_DIR."/Logger.php");
Logger::configure(APPLICATION_PATH."/log4php.properties");
//APPLICATION_PATH是工程目录的路径
$logger = @Logger::getLogger("index");
$msg = "error error !!!";
$logger->error($msg); //输出错误 $msg
//$logger->info($msg); //输出信息 $msg
//$logger->warn($msg); //输出警告 $msg
?>
</body>
</html>
执行,可以看到根目录下有一个logs目录,下面有一个debug_20110829.log文件。内容为
2011-08-29 15:32:28,047 [ERROR] fdidx: error error !!! (at D:myphpfeedbackindex.php line 20)
2011-08-29 15:32:28,048 [WARN] fdidx: warn 警告 (at D:myphpfeedbackindex.php line 24)
可以看到,info没有输出。因为配置里面debug是最低级别。
参考: http://blog.csdn.net/cjy37/article/details/5610437
如非注明转载, 均为原创. 本站遵循知识共享CC协议,转载请注明来源
FEATURED TAGS
css
vc6
http
automake
linux
make
makefile
voip
乱码
awk
flash
vista
vi
vim
javascript
pietty
putty
ssh
posix
subversion
svn
windows
删除
编译
多线程
wxwidgets
ie
ubuntu
开源
c
python
bash
备份
性能
scp
汉字
log
ruby
中文
bug
msn
nginx
php
shell
wordpress
mqueue
android
eclipse
java
mac
ios
html5
js
mysql
protobuf
apache
hadoop
install
iocp
twisted
centos
mapreduce
hbase
thrift
tutorial
hive
erlang
lucene
hdfs
sqoop
utf8
filter
草原
yarn
ganglia
恢复
scrapy
django
fsimage
flume
tail
flume-ng
mining
scala
go
kafka
gradle
cassandra
baas
spring
postgres
maven
mybatis
mongodb
https
nodejs
镜像
心理学
机器学习
Keras
theano
anaconda
docker
spark
akka-http
json
群论
区块链
加密
抽象代数
离散对数
同余
欧拉函数
扩展欧几里德算法
ES6
node-inspect
debug
win10
vscode
挖矿