PHP日志 LOG4PHP 的配置与使用
- 维护了 一个老项目, 没有日志功能, 就给加了这个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 的配置与使用的更多相关文章
- 如何在 ETL 项目中统一管理上百个 SSIS 包的日志和包配置框架
一直准备写这么一篇有关 SSIS 日志系统的文章,但是发现很难一次写的很完整.因为这篇文章的内容可扩展的性太强,每多扩展一部分就意味着需要更多代码,示例和理论支撑.因此,我选择我觉得比较通用的 LOG ...
- log4net 日志框架的配置
log4net 日志框架的配置——静态文件(一) 添加对log4net程序集的引用 选择程序集文件添加引用即可,需要注意的是需要添加相应程序版本的程序集,如果你的应用是基于.netFramework2 ...
- django 日志logging的配置以及处理
django日志官方文档https://docs.djangoproject.com/en/1.11/topics/logging/ 本文摘自http://davidbj.blog.51cto.com ...
- springmvc 项目完整示例05 日志 --log4j整合 配置 log4j属性设置 log4j 配置文件 log4j应用
log4j 就是log for java嘛,老外都喜欢这样子,比如那个I18n ---internationalization 不就是i和n之间有18个字母... http://logging.a ...
- eclipse集成tomcat日志文件输出配置
eclipse集成tomcat日志文件输入配置 2015-07-21 00:13 1072人阅读 评论(0) 收藏 举报 分类: tomcat(1) eclipse Where can I vie ...
- Spark进阶之路-日志服务器的配置
Spark进阶之路-日志服务器的配置 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 如果你还在纠结如果配置Spark独立模式(Standalone)集群,可以参考我之前分享的笔记: ...
- 010 Spark中的监控----日志聚合的配置,以及REST Api
一:History日志聚合的配置 1.介绍 Spark的日志聚合功能不是standalone模式独享的,是所有运行模式下都会存在的情况 默认情况下历史日志是保存到tmp文件夹中的 2.参考官网的知识点 ...
- phpunit 生成三种日志文件的配置方法
#目录结构 windows bin目录下 ├── phpunit.phar ├── phpunit.cmd ├── phpunit.xml ├── build.xml ├── ArrTest.php ...
- 咏南中间件更新日志--将数据库配置独立成DBCONFIG.EXE
咏南中间件更新日志--将数据库配置独立成DBCONFIG.EXE.
随机推荐
- Expression Blend实例中文教程(3) - 布局控件快速入门Grid
上一篇对Blend 3开发界面进行了快速入门介绍,本篇将基于Blend 3介绍Silverlight控件.对于微软开发工具熟悉的朋友,相信您很快就熟悉Blend的开发界面和控件. XAML概述 Sil ...
- Eigen库矩阵运算使用方法
Eigen库矩阵运算使用方法 Eigen这个类库,存的东西好多的,来看一下主要的几个头文件吧: ——Core 有关矩阵和数组的类,有基本的线性代数(包含 三角形 和 自伴乘积 相关),还有相应对数组的 ...
- sqlserver - FOR XML PATH
FOR XML PATH 有的人可能知道有的人可能不知道,其实它就是将查询结果集以XML形式展现,有了它我们可以简化我们的查询语句实现一些以前可能需要借助函数活存储过程来完成的工作.那么以一个实例为主 ...
- mysql表情存储报错问题
mysql采用utf-8字符编码,但在移动端使用输入法的表情并存储数据库的时候,出现错误. java.sql.SQLException: Incorrect string value: '\xF0\x ...
- 启动memcache 服务器端
# memcached -d -m 10 -u root -p 11211 -c 256 -P /tmp/memcached.pid -d选项是启动一个守护进程, -m是分配给Memcache使用的内 ...
- mysql-profiling详解
要想优化一条 Query,我们就需要清楚的知道这条 Query 的性能瓶颈到底在哪里,是消耗的 CPU计算太多,还是需要的的 IO 操作太多?要想能够清楚的了解这些信息,在 MySQL 5.0 和 M ...
- ReentrantReadWriteLock简介
对象的方法中一旦加入synchronized修饰,则任何时刻只能有一个线程访问synchronized修饰的方法.假设有个数据对象拥有写方法与读方法,多线程环境中要想保证数据的安全,需对该对象的读写方 ...
- 在linux命令行利用SecureCRT上传下载文件
一般来说,linux服务器大多是通过ssh客户端来进行远程的登陆和管理的,使用ssh登陆linux主机以后,如何能够快速的和本地机器进行文件的交互呢,也就是上传和下载文件到服务器和本地?与ssh有关的 ...
- 监听css3的animation动画和transition事件
webkit-animation动画有三个事件: 开始事件: webkitAnimationStart 结束事件: webkitAnimationEnd 重复运动事件: webkitAnimation ...
- after() 和 remove() 实现替换
<div class="replacedDiv">this is the replaced div</div> <script> ...