Log4php使用指南
一、Log4php简介
Log4php是Log4xx系列日志组件之一,是Log4j迁移到php的版本,主要用来记录日志信息,支持多种输入目的地,包括:日志文件、日志回滚文件、数据库、日志服务器等等;同时,还支持多种输入格式。
二、Log4php的搭建
(一)下载Log4php
到Log4php的官方网站就可以下载到Log4php,目前最新的版本是0.9,下载的地址是:
http://www.vxr.it/log4php/download.html
下载后,直接解压就可以。
(二)在工程里使用Log4php
1、工程的目录
工程的目录结构如下:
(1)include文件夹:包含第三方库的引用
(2)images文件夹:包含网站的图片
(3)js文件夹:包含网站的脚本文件
(4)css文件夹:包含网站的样式表
在include文件下,建立Log4php目录,然后将刚才解压的Log4php目录下的src文件夹下的log4php文件夹拷贝到该目录下,如下图所示:

以上完成了工程目录结构的创建。
2、创建Log4php的配置文件
在项目目录下,建立log4php.properties文件,内容如下:
- log4php.rootLogger=DEBUG, A1
- log4php.appender.A1=LoggerAppenderRollingFile
- log4php.appender.A1.file=webdisk.log
- log4php.appender.A1.layout=LoggerLayoutTTCC
- log4php.appender.A1.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss} [%t] %C{1}:%M %p %m%n
- log4php.appender.A1.MaxFileSize=1024
- log4php.appender.A1.MaxBackupIndex=3
3、创建测试页
在项目目录下创建test_log.php文件,内容如下:
- <?php
- define(LOG4PHP_DIR, "include/log4php");
- require_once(LOG4PHP_DIR . '/LoggerManager.php');
- $str = "here is test string!";
- echo "这里是PHP的输出, 与log4php无关哟!<br>";
- $logger = LoggerManager::getLogger('test');
- if ("" != $str) {
- $logger->debug("str的值不为空! 它的值为: " . $str . "<br>");
- }
- if (strlen($str) > 4) {
- $logger->debug("str的长度大于4!" . "<br>");
- }
- LoggerManager::shutdown();
- ?>
创建完成后,工程的目录结构如下:

运行该文件,会在目录下生成webdisk.log文件,此时项目的目录结构如下:

日志文件的内容如下:

版权声明:本文为博主原创文章,未经博主允许不得转载。
Log4php使用指南的更多相关文章
- JavaScript权威指南 - 函数
函数本身就是一段JavaScript代码,定义一次但可能被调用任意次.如果函数挂载在一个对象上,作为对象的一个属性,通常这种函数被称作对象的方法.用于初始化一个新创建的对象的函数被称作构造函数. 相对 ...
- UE4新手之编程指南
虚幻引擎4为程序员提供了两套工具集,可共同使用来加速开发的工作流程. 新的游戏类.Slate和Canvas用户接口元素以及编辑器功能可以使用C++语言来编写,并且在使用Visual Studio 或 ...
- JavaScript权威指南 - 对象
JavaScript对象可以看作是属性的无序集合,每个属性就是一个键值对,可增可删. JavaScript中的所有事物都是对象:字符串.数字.数组.日期,等等. JavaScript对象除了可以保持自 ...
- JavaScript权威指南 - 数组
JavaScript数组是一种特殊类型的对象. JavaScript数组元素可以为任意类型,最大容纳232-1个元素. JavaScript数组是动态的,有新元素添加时,自动更新length属性. J ...
- const extern static 终极指南
const extern static 终极指南 不管是从事哪种语言的开发工作,const extern static 这三个关键字的用法和原理都是我们必须明白的.本文将对此做出非常详细的讲解. co ...
- Atitit.研发管理软件公司的软资产列表指南
Atitit.研发管理软件公司的软资产列表指南 1. Isv模型下的软资产1 2. 实现层面implet1 3. 规范spec层1 4. 法则定律等val层的总结2 1. Isv模型下的软资产 Sof ...
- HA 高可用软件系统保养指南
又过了一年 618,六月是公司一年一度的大促月,一般提前一个月各系统就会减少需求和功能的开发,转而更多去关注系统可用性.稳定性和管控性等方面的非功能需求.大促前的准备工作一般叫作「备战」,可以把线上运 ...
- 第六代智能英特尔® 酷睿™ 处理器图形 API 开发人员指南
欢迎查看第六代智能英特尔® 酷睿™ 处理器图形 API 开发人员指南,该处理器可为开发人员和最终用户提供领先的 CPU 和图形性能增强.各种新特性和功能以及显著提高的性能. 本指南旨在帮助软件开发人员 ...
- Visual Studio Code 配置指南
Visual Studio Code (简称 VS Code)是由微软研发的一款免费.开源的跨平台文本(代码)编辑器.在我看来它是「一款完美的编辑器」. 本文是有关 VS Code 的特性介绍与配置指 ...
随机推荐
- [HAL]5.中断里调用HAL_Delay()进入死循环的原因
中断里调用HAL_Delay()进入死循环的原因 摘自:http://blog.csdn.net/alwxkxk/article/details/47204677 CUBE生成的程序中, SysTi ...
- MySql必知必会实战练习(三)数据过滤
在之前的博客MySql必知必会实战练习(一)表创建和数据添加中完成了各表的创建和数据添加,MySql必知必会实战练习(二)数据检索中介绍了所有的数据检索操作,下面对数据过滤操作进行总结. 1. whe ...
- Asp.Net构架(Http请求处理流程) - Part.1
引言 我查阅过不少Asp.Net的书籍,发现大多数作者都是站在一个比较高的层次上讲解Asp.Net.他们耐心.细致地告诉你如何一步步拖放控件.设置控件属性.编写CodeBehind代码,以实现某个特定 ...
- 关于android开发环境中sdk和adt更新到22.6之后多了appcompat_v7
昨天我打开Eclipse更新了一下sdk和adt到22.6,更新一切都很顺利,很开心的样子,可以新建一个工程时发现多了一个appcompat_v7这个东西,一下子就把小编怔住了,后来才发现这是官方的一 ...
- XMemcached使用经历
XMemcached就是Memcached的java客户端之一,目前项目里用到了.据说它比起其他的java客户端从性能上要好一点,实现方式是NIO的.先看怎么实例化出来一个Memcached客户端吧: ...
- SQL Server 占用CPU较高的解决方法
触发原因:月底系统结账的时候对ERP的操作较多,有用户反馈系统之间的数据传输很久没有同步.随即到服务器上查看,没有发现有程序导致的问题,看了一下CPU的使用率,发现SQL Server占用率在百分之九 ...
- Linux bash shell 入门
https://www.cnblogs.com/cosiray/archive/2012/03/02/2377099.html
- tomcat 1字节的UTF-8序列的字节1无效
微信支付时, 命名返回支付成功, 但是成功后却返回如下的错误, 在测试环境都是没有任何问题, 到客户现场后, 可能客户现场使用的4G网络, 用微信支付时一直报这样的错误 错误现象: com.sun.o ...
- java 删除文件夹 / 删除某文件夹下的所有文件
import java.io.File; /*************************删除文件夹delFolder / 删除文件夹中的所有文件delAllFile *start******** ...
- VC6编写的Dll调试方法
Dll工程运行时指定调用exe程序. 关键!!往往被忽略:exe中也一定要指向此调用dll,如果指向不对,什么效果也没有!