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 的特性介绍与配置指 ...
 
随机推荐
- Linux 监视文件、文件夹改动
			
/******************************************************************** * Linux 监视文件.文件夹改动 * 说明: * 主要是 ...
 - 【MFC】MFC DLEdit 设计属于自己的编辑框_鼠标悬停
			
MFC DLEdit 设计属于自己的编辑框 2012-02-04 13:00 by 捣乱小子, 3543 阅读, 5 评论, 收藏, 编辑 起因 无意间看到了大牛们写的自定义编辑框控件,于是找了个时间 ...
 - 拦截器springmvc防止表单重复提交【2】
			
[参考博客:http://my.oschina.net/mushui/blog/143397] 原理:在新建页面中Session保存token随机码,当保存时验证,通过后删除,当再次点击保存时由于服务 ...
 - LeetCode Delete Operation for Two Strings
			
原题链接在这里:https://leetcode.com/problems/delete-operation-for-two-strings/description/ 题目: Given two wo ...
 - iframe添加点击事件
			
<!DOCTYPE HTML> <html> <head> <meta http-equiv="Content-Type" content ...
 - sqlserver sql语句查看分区记录数、查看记录所在分区
			
select count(1) ,$PARTITION.WorkDatePFN(workdate) from imgfile group by $PARTITION.WorkDatePFN(workd ...
 - 关于Android Studio上得处女座福音功能——reformat code
			
在mac上,选中需要的代码,然后 Option+(shift) + Command + L 全部重新排列!!爽飞!
 - ansible命令应用示例
			
ansible命令应用示例 ping slave组 ansible slave -m ...
 - 使用Inno SetUp脚本打包Winform程序
			
在开发桌面程序时,往往需要用到打包工具将程序打包为exe可执行文件. 之前在项目中用了下 InstallShield Limited Edition for Visual Studio 2015,它 ...
 - 数据流重定向和管道命令, grep, tr,sort, wc, cut,split,tee,sleep(shell 02)
			
主要内容 1.标准输入输出和错误 2.管道命令和 grep, tr,sort, wc, cut,split,tee,sleep 标准输入输出和错误 标准输入(stdin) 是指令数据的输入,代码为0, ...