`

(转)Log4php使用及配置指南

    博客分类:
  • PHP
 
阅读更多
http://www.qinbin.me/log4php-use-and-configuration-guide/


一直是一个临时写的日志组件,不过现在随着功能的不断完善,程序的日志也做了规范,不过感觉现在的日志函数已经不能满足当前的需求了,所以考虑引入一个完善的日志组件,看了看Log4php感觉很不错。
Log4php是Log4xx系列日志组件之一,是Log4j迁移到php的版本,主要用来记录日志信息,支持多种输入目的地,包括:日志文件、日志回滚文件、数据库、日志服务器等等;同时,还支持多种输入格式。
使用实例:

1234567 require_once 'log4php/Logger.php'; Logger::configure('logger.properties'); $logger = Logger::getRootLogger(); //$logger->debug("Hello World!"); //$logger->info("Hello World!"); //$logger->warn("Hello World!"); //$logger->error("Hello World!");

appender.default = LoggerAppenderRollingFile log4php.appender.default.file = logger.log.php log4php.appender.default.layout = LoggerLayoutPattern log4php.appender.default.MaxFileSize = 1024 log4php.appender.default.MaxBackupIndex = 10 log4php.appender.default.layout.ConversionPattern = "%d{ISO8601} [%p] %c: %m (at %F line %L)%n"log4php.rootLogger = DEBUG, default
配置项说明:
Log4php由三个重要的组件构成:
日志信息的优先级;
日志信息的输出目的地;
日志信息的输出格式。
日志信息的优先级从高到低有ERROR、WARN、INFO、DEBUG,分别用来指定这条日志信息的重要程度;日志信息的输出目的地指定了日志将附加到执行文件尾还是文件中;而输出格式则控制了日志信息的显示内容。
1. 日志的优先级。
日志信息有四种分类(常用),可以通过在在配置文件中设置优先级来将代码中出现的调试信息显示或隐藏,举例来讲,当我把日志等级调整至WARN级时,那么程序中所出现的ERROR信息(通过$log->error(“error message here!”))及WARN等级的信息可以记录出来,而程序中所有使用INFO与DEBUG级的信息都将不显示,它由
“log4php.rootLogger=DEBUG, A1″中rootLogger的第一个参数定义,这一句的意思是将调试等级定义为DEBUG级,也就是说程序中所有的ERROR, WARN,INFO, DEBUG信息都可以显示出来, 如果将等级设置为INFO, 那么只能有ERROR, WARN, INFO这三种信息可显示。
以下是常用四种等级的用法:
DEBUG Level指出细粒度信息事件对调试应用程序是非常有帮助的。
INFO level表明 消息在粗粒度级别上突出强调应用程序的运行过程。
WARN level表明会出现潜在错误的情形。
ERROR level指出虽然发生错误事件,但仍然不影响系统的继续运行。
FATAL level指出每个严重的错误事件将会导致应用程序的退出。
2. 日志信息的输出目的地。、
在log4php中输出目的地支持12种,分别为:
<?php   LoggerAppenderConsole //以php://stdout为输出地 LoggerAppenderDailyFile //继承自LoggerAppenderFile, 以文件为输出地,每日输出一个文件 LoggerAppenderDb   //以数据库为输出地 LoggerAppenderEcho //在执行文件尾输出 LoggerAppenderFile //以文件为输出地 LoggerAppenderMail //以邮件为输出地 LoggerAppenderMailEvent //继承自LoggerAppenderMail, 以邮件为输出地, 为事件触发 LoggerAppenderNull //不输出任何信息 LoggerAppenderPhp //输出至PHP错误信息,将各类日志等级信息转化为php标准信息 LoggerAppenderRollingFile //继承自LoggerAppenderFile,以xxx.log.1, xxx.log.2的形式输出, LoggerAppenderSocket //以socket方式输出 LoggerAppenderSyslog //以系统日志为目的地输出,使用php中的syslog()函数进行记录   ?>



在配置文件中表现为”log4php.rootLogger=DEBUG, default” 从第二个参数起的别名,具体目的地的设置方式由:
12 log4php.appender.default=LoggerAppenderEcho log4php.appender.default.layout=LoggerLayoutHtml

来实现,每种输出目的地都有不同的设置参数,根据实际需要,输出的目的地可有多项,表现如下:
log4php.rootLogger=DEBUG, default, qinbin1, qinbin2, ….
其中default, qinbin1, qinbin2代表不同的输出目的地。
3. 日志文件输出格式。它作为输出目的地的一个属性存在,log4php上包含5种不同的输出方式,分别为:
LoggerLayoutHtml//以html格式输出调试信息
LoggerLayoutSimple//简单的以 "等级信息 - 日志信息"的格式显示
LoggerLayoutTTCC//以"月/日/年 时间[进程] 等级信息 日志名称 - 调试信息"的格式来显示
LoggerPatternLayout//以模式表达式作为输出格式来显示(这个功能极为强悍,你可以随心所欲的来设置输出格式,在实例部分详细讲解)
LoggerXmlLayout//以xml的模式来输出


分享到:
评论

相关推荐

    log4php-0.9

    7. **嵌入式使用**:可以轻松地将 log4php 集成到任何 PHP 项目中,只需简单的引入和配置即可开始使用。 8. **社区支持**:作为开源项目,log4php 有活跃的社区和开发者,可以提供帮助和更新。 综上,log4php 是一...

    apache-log4php-2.0.0-incubating-src.tar.gz

    2. **docs**: 文档目录,可能包含用户指南、API参考和其他相关文档,帮助开发者了解如何使用Log4php。 3. **examples**: 示例代码,展示了如何在实际项目中配置和使用Log4php。 4. **tests**: 测试用例,用于验证...

    zabbix配置指南安装篇

    ### Zabbix配置指南安装篇知识点总结 #### 一、环境介绍 在进行Zabbix的配置之前,首先要确保有一个合适的环境。本章节详细介绍了所需的硬件、操作系统版本以及相关的网络配置。 **1.1 硬件信息** - **硬件类型**:...

    n@log 流量统计分析程序 PHP+MYSQL

    在压缩包文件`nalog5.04`中,包含了n@log的完整版本,可能包括配置文件、PHP脚本、数据库结构、样式表(CSS)、图像资源以及可能的文档和安装指南。用户需要按照指导进行安装,配置数据库连接,然后将程序部署到Web...

    PHP_5中文配置手册

    这份中文配置手册是针对PHP5初学者的快速入门指南,旨在帮助用户在5天内掌握PHP5的配置过程。 **1. 安装PHP5** 在开始配置PHP5之前,你需要下载PHP5的安装包。通常,你可以从官方网站php.net获取最新版本的源代码或...

    miniLog php log日志类

    1. **配置简便**:miniLog强调“少配置或零配置”,这意味着在大多数情况下,开发者无需进行复杂的设置就可以开始使用。只需引入该类库,即可快速实现日志记录功能,大大减少了开发时间。 2. **兼容多种数据格式**...

    nginx-php5配置

    ### Nginx与PHP5配置指南 #### 一、Windows环境下Nginx+PHP5配置详解 ##### 1. 下载与安装 - **Nginx**: 访问官方下载页面(http://nginx.org/en/download.html),下载适用于Windows的最新稳定版Nginx,本文档示例...

    PHP服务器上配置apache绑定多域名[参考].pdf

    以下是一份详细的步骤指南,帮助你理解如何在Apache上配置多域名。 首先,Apache的主配置文件通常位于`/apache/conf/httpd.conf`。在这个文件中,你可以找到关于服务器设置的各种指令。在配置多域名时,我们需要...

    PHP-FPM不完全指南1

    4. `log_level`:设置日志记录级别,包括alert、error、warning、notice和debug。 5. `emergency_restart_threshold` 和 `emergency_restart_interval`:当出现特定错误的子进程达到一定数量时,PHP-FPM会优雅地重启...

    PHP.ini研究 php.ini中文版

    文件,以及中文翻译版,对于初学者和进阶者来说,是深入理解PHP配置的宝贵资源。 首先,我们来看php.ini文件的基本结构。php.ini文件由一系列指令构成,每个指令代表一个配置项,例如`display_errors`用于控制是否...

    五款常用mysql slow log分析工具

    启用方式有二:一是编辑`my.cnf`配置文件中的`log-slow-queries`参数;二是通过命令行参数`--log-slow-queries`启动MySQL服务。此日志对于监控和优化数据库性能至关重要,尤其是在高负载环境下,慢查询日志可以帮助...

    基于PHP的mysqlconvert access、mssql、mysql之间数据库互转的php源码.zip

    6. `docs`或`readme`:文档或使用指南,解释如何配置和运行该工具。 在实际应用中,这个工具的工作流程可能是这样的: 1. 用户通过Web界面选择源数据库和目标数据库类型。 2. 输入相应的数据库连接信息。 3. 指定...

    php缓存加速器eAccelerator配置详解.doc

    对于更深入的 eAccelerator 使用,可以参考官方文档、社区论坛和相关的技术博客,这些资源通常包含详细的配置示例、故障排除指南以及性能优化建议。 总结来说,eAccelerator 是一个强大的 PHP 性能提升工具,通过...

    phpword完整代码包含sample无需安装可直接运行

    4. composer.json 文件是Composer项目配置文件,虽然这里说无需Composer安装,但这个文件仍然存在,可能是为了方便那些想要集成到其他项目中并使用Composer管理依赖的开发者。 5. composer.lock 文件记录了项目的...

    Windows下nginx+php+mysql安装和配置.docx

    ### Windows下nginx+php+mysql安装与配置指南 #### 一、Nginx 的安装与启动 1. **解压 Nginx** 将下载好的 `nginx-1.0.2.zip` 文件解压到 C 盘的根目录,并将目录名改为 `nginx`。 2. **启动 Nginx** - 打开...

    使用phpmailer发送邮件 PHP源码

    6. `README.txt`:通常包含项目的基本信息、安装和使用指南。 7. `test`:测试目录,可能包含用于验证PHPMailer功能的测试脚本。 8. `docs`:文档目录,存放有关如何使用PHPMailer的详细说明和教程。 9. `examples`...

    在网页中嵌入PHP代码:创建动态网页的指南

    - **PHP配置**:确保PHP版本兼容性良好,并且配置了适当的错误报告等级。可以通过修改`php.ini`文件来调整设置。 ### 创建PHP环境 选择合适的环境对于开发至关重要。你可以选择使用本地环境,如XAMPP、MAMP或WAMP...

    Linux apache环境多域名配置

    - 使用文本编辑器打开`test.conf`文件并输入以下配置: ```apacheconf *:80&gt; ServerName www.test.com DocumentRoot "/path/to/your/project" ErrorLog "logs/test-error_log" CustomLog "logs/test-access_...

    php-5.2.5-x64(php 64位)

    综上所述,"php-5.2.5-x64(php 64位)"是一个针对64位系统的PHP版本,包含了多种改进和新功能,同时提供了在IIS上使用FastCGI的配置指南,以及非官方的MS SQL Server连接选项。对于那些需要在64位环境下运行PHP的老...

    Apache 使用指南与实现原理

    Apache的使用指南通常涵盖以下几个核心部分: 1. **安装与配置**:Apache的安装过程因操作系统而异,但通常包括下载最新版本的源代码或预编译二进制包,然后通过命令行工具进行编译和安装。配置文件`httpd.conf`是...

Global site tag (gtag.js) - Google Analytics