• 维护了 一个老项目, 没有日志功能, 就给加了这个log4php,  主要是集成进去很简单,使用起来也够用了。

1、下载log4php

2、创建配置文件

log4php_config.xml
<configuration xmlns="http://logging.apache.org/log4php/">
<appender name="default" class="LoggerAppenderConsole" /> <appender name="basic_file_appender" class="LoggerAppenderDailyFile">
<layout class="LoggerLayoutPattern">
<param name="conversionPattern" value="%date [%logger] %message%newline" />
</layout>
<param name="file" value="log/app.%s.log" /> // log文件夹下 以日期命名的log文件
<param name="datePattern" value="Y-m-d" />
</appender>
<root>
<level value="debug" />
<appender_ref ref="basic_file_appender"/>
</root> <appender name="route_file_appender" class="LoggerAppenderDailyFile">
<layout class="LoggerLayoutPattern">
<param name="conversionPattern" value="%date %p [%logger] %message%newline" />
</layout>
<param name="file" value="log/route.%s.log" />
<param name="threshold" value="error"/>
<param name="append" value="true" />
<param name="datePattern" value="Y-m-d" />
</appender>
<logger name="Route">
<level value="debug" />
<appender_ref ref="route_file_appender" />
</logger> <appender name="session_file_appender" class="LoggerAppenderDailyFile">
<layout class="LoggerLayoutPattern">
<param name="conversionPattern" value="%date [%logger] %message%newline" />
</layout>
<param name="file" value="log/session.%s.log" />
<param name="datePattern" value="Y-m-d" />
</appender>
<logger name="Session">
<level value="debug" />
<appender_ref ref="session_file_appender" />
</logger> <appender name="InventoryTransaction_file_appender" class="LoggerAppenderDailyFile">
<layout class="LoggerLayoutPattern">
<param name="conversionPattern" value="%date [%logger] %message%newline" />
</layout>
<param name="file" value="log/InventoryTransaction.%s.log" />
<param name="datePattern" value="Y-m-d" />
</appender>
<logger name="InventoryTransaction">
<level value="debug"/>
<appender_ref ref="InventoryTransaction_file_appender" />
</logger> <appender name="Reserve_file_appender" class="LoggerAppenderDailyFile">
<layout class="LoggerLayoutPattern">
<param name="conversionPattern" value="%date [%logger] %message%newline" />
</layout>
<param name="file" value="/data0/wmsinventoryapi/Reserve.%s.log" />
<param name="datePattern" value="Y-m-d.H" />
</appender>
<logger name="Reserve">
<level value="debug"/>
<appender_ref ref="Reserve_file_appender" />
</logger> <appender name="Exception_file_appender" class="LoggerAppenderDailyFile">
<layout class="LoggerLayoutPattern">
<param name="conversionPattern" value="%date [%logger] %message%newline" />
</layout>
<param name="file" value="log/exception.%s.log" />
<param name="datePattern" value="Y-m-d" />
</appender>
<logger name="Exception">
<level value="error"/>
<appender_ref ref="Exception_file_appender" />
</logger> </configuration>

3、LOG类

<?php
/**
* Created by PhpStorm.
* User: an
* Date: 2019/4/3
* Time: 4:35 PM
*/
require_once('vendor/log4php/Logger.php');
Logger::configure('vendor/log4php/log4php_config.xml'); // 引入第二步创建的xml配置文件 class L
{
public static function __callStatic($name, $args)
{
$log = Logger::getLogger('app'); switch ($name)
{
case 'error':
$log->error($args);
break;
case 'info':
$log->info($args);
break;
case 'warn':
$log->warn($args);
break;
case 'debug':
$log->debug($args);
break;
case 'fatal':
$log->fatal($args);
break;
default:
break;
}
}
}

4、使用

L::debug('日志要记录的内容');
L::info('日志要记录的内容');

PHP日志 LOG4PHP 的配置与使用的更多相关文章

  1. 如何在 ETL 项目中统一管理上百个 SSIS 包的日志和包配置框架

    一直准备写这么一篇有关 SSIS 日志系统的文章,但是发现很难一次写的很完整.因为这篇文章的内容可扩展的性太强,每多扩展一部分就意味着需要更多代码,示例和理论支撑.因此,我选择我觉得比较通用的 LOG ...

  2. log4net 日志框架的配置

    log4net 日志框架的配置——静态文件(一) 添加对log4net程序集的引用 选择程序集文件添加引用即可,需要注意的是需要添加相应程序版本的程序集,如果你的应用是基于.netFramework2 ...

  3. django 日志logging的配置以及处理

    django日志官方文档https://docs.djangoproject.com/en/1.11/topics/logging/ 本文摘自http://davidbj.blog.51cto.com ...

  4. springmvc 项目完整示例05 日志 --log4j整合 配置 log4j属性设置 log4j 配置文件 log4j应用

    log4j 就是log for java嘛,老外都喜欢这样子,比如那个I18n  ---internationalization  不就是i和n之间有18个字母... http://logging.a ...

  5. eclipse集成tomcat日志文件输出配置

    eclipse集成tomcat日志文件输入配置 2015-07-21 00:13 1072人阅读 评论(0) 收藏 举报  分类: tomcat(1)  eclipse Where can I vie ...

  6. Spark进阶之路-日志服务器的配置

    Spark进阶之路-日志服务器的配置 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 如果你还在纠结如果配置Spark独立模式(Standalone)集群,可以参考我之前分享的笔记: ...

  7. 010 Spark中的监控----日志聚合的配置,以及REST Api

    一:History日志聚合的配置 1.介绍 Spark的日志聚合功能不是standalone模式独享的,是所有运行模式下都会存在的情况 默认情况下历史日志是保存到tmp文件夹中的 2.参考官网的知识点 ...

  8. phpunit 生成三种日志文件的配置方法

    #目录结构 windows bin目录下 ├── phpunit.phar ├── phpunit.cmd ├── phpunit.xml ├── build.xml ├── ArrTest.php ...

  9. 咏南中间件更新日志--将数据库配置独立成DBCONFIG.EXE

    咏南中间件更新日志--将数据库配置独立成DBCONFIG.EXE.

随机推荐

  1. Swift可选链

    //可选链测试 class Person{ var residence:Residence! var name:String init(name:String){ self.name = name } ...

  2. 一个骚气的前端JS代码生成网站

    生成Javascript 颜文字代码 稍微试了试 原本的代码: alert("Hello, JavaScript") 转换后代码 ゚ω゚ノ= /`m´)ノ ~┻━┻ //*´∇`* ...

  3. Springboot简单整合Rabbit

    两个项目.分别是生产者和消费者项目 .首先引入依赖.两边pom都一样 第一次练习,启动生产者后,再启动消费者,一直报找不到 队列的声明. 后排查发现是  需要现在生产者这边浏览器访问一次生产消息的方法 ...

  4. Error:Execution failed for task ':app:processAnzhiDebugAndroidTestResources'. > No slave process to process jobs, aborting

    环境 Android Studio 3.0 错误 Error:Execution failed for task ':app:processAnzhiDebugAndroidTestResources ...

  5. jQuery的几点笔记

    1.jQuery核心选择器 (sizzle.js) http://sizzlejs.com/ 2.jQuery有两个主要特性 ①隐式迭代 //改变页面所有p标签的背景色 $('p').css('bac ...

  6. cf1043E. Mysterious Crime(二分 前缀和)

    题意 题目链接 Sol 考场上做完前四题的时候大概还剩半个小时吧,那时候已经困的不行了. 看了看E发现好像很可做?? 又仔细看了几眼发现这不是sb题么... 先考虑两个人,假设贡献分别为\((x, y ...

  7. 文本类型的HTML

    <b>文本</b>加粗<i>倾斜<strong>加粗语气 工作里尽量使用strong<em>倾斜语气 工作里尽量使用em<u>下 ...

  8. webpack 启动 vue

    右击 package.json  单击show npm Scripts

  9. jQuery阻止向上冒泡事件

    //阻止起泡取消下面的注释 e.stopPropagation(); //或者使用这种方式 //return false; }); $('.three').click(function(e){ ale ...

  10. pt-duplicate-key-checker使用

    pt-duplicate-key-checker工具可以检测表中重复的索引,对于一些业务量很大的表,而且开发不规范的情况下有用.基本用法: 看一下我们的测试表: mysql> desc new_ ...