• 维护了 一个老项目, 没有日志功能, 就给加了这个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. Lucene学习之四:Lucene的索引文件格式(3)

    本文转载自:http://www.cnblogs.com/forfuture1978/archive/2010/02/02/1661436.html ,略有删改和备注. 四.具体格式 4.2. 反向信 ...

  2. ActiveMQ - 入门指南

    首先需要下载ActiveMQ,下面的链接给我们列出了所有版本: http://activemq.apache.org/download-archives.html 每个版本为不同的OS提供了链接: 公 ...

  3. aspose.word 读取word段落内容

    注:转载请标明文章原始出处及作者信息 aspose.word 插件下载 链接: http://pan.baidu.com/s/1qXIgOXY 密码: wsj2 使用原因:无需安装office,无兼容 ...

  4. GeneratedKeyHolder的作用:获得新建主键值

    Spring利用GeneratedKeyHolder,提供了一个可以返回新增记录对应主键值的方法: int update(PreparedStatementCreator psc, KeyHolder ...

  5. JAVA数据类型中的char类型

    1.JAVA中,char占2字节,16位.可在存放汉字 2.char赋值 char a='a'; //任意单个字符,加单引号. char a='中';//任意单个中文字,加单引号. char a=11 ...

  6. springboot集成websocket点对点推送、广播推送

    一.什么都不用说,导入个依赖先 <dependency> <groupId>org.springframework.boot</groupId> <artif ...

  7. Effective C++ .14 智能指针的拷贝与deleter函数

    #include <iostream> #include <cstdlib> #include <memory> using namespace std; clas ...

  8. 第11章 Media Queries 与Responsive 设计

    Media Queries--媒体类型(一) 随着科学技术不断的向前发展,网页的浏览终端越来越多样化,用户可以通过:宽屏电视.台式电脑.笔记本电脑.平板电脑和智能手机来访问你的网站.尽管你无法保证一个 ...

  9. Dockerfile定制镜像

    一.Dockerfile是什么? 镜像定制实质就是定制每一层所添加的配置.文件. Dockerfile就是一个脚本来构建和定制镜像,把每一层的修改.安装.构建.操作都写入脚本.以此来解决体积.镜像构建 ...

  10. redis 安装与php扩展

    php-redis扩展下载地址:https://pecl.php.net/package/redis/2.2.7/windows 注意:   php_igbinary-5.5-vc11-ts-x86- ...