log4php将不同级别的日志打印到不同的日志文件中
2014-12-09 11:06
381 查看
有时为了好查看error日志,需要将error级别以上的日志打印到单独的日志文件中,下面介绍log4php如何配置来实现这种方法
1、配置日志文件,由于要使用到过滤器,所以只能使用php配置文件或者xml配置文件,下面只介绍php配置文件的配置,新建一个log4php.php的文件,配置项如下
<?php
return array (
'rootLogger' => array (
'appenders' => array ('all','error' )
),
'appenders' => array (
'all' => array ( // 打印所有日志信息
'class' => 'LoggerAppenderDailyFile',
'layout' => array (
'class' => 'LoggerLayoutPattern',
'params' => array (
'conversionPattern' => '[%-5p] %d{Y-m-d H:i:s,u} %C.%M:%L %m %n'
)
),
'params' => array (
'datePattern' => 'YmdH',
'file' => 'E:/logs/%s.log', // /alidata/rrpin/logs/%s.log
'append' => true
)
),
'error' => array ( // 只打印warn 以上级别的日志信息
'class' => 'LoggerAppenderDailyFile',
'layout' => array (
'class' => 'LoggerLayoutPattern',
'params' => array (
'conversionPattern' => '[%-5p] %d{Y-m-d H:i:s,u} %C.%M:%L %m %n'
)
),
'params' => array (
'datePattern' => 'YmdH',
'file' => 'E:/logs/error_%s.log', // /alidata/rrpin/logs/%s.log
'append' => true
),
'filters' => array ( // 过滤器
array (
'class' => 'LoggerFilterLevelRange',
'params' => array (
'levelMin' => 'warn',
'levelMax' => 'fatal'
)
)
)
)
)
);
?>
2、编写简单的工具类LogUtil来使用Log4php
<?php
namespace Home\Common;
// Log4php 路径
require_once(C('LOG4PHP_DIR')."/Logger.php");
class LogUtil
{
private static $loginstance;
public static function getLogger() {
if(!isset($loginstance)){
// log4php.php配置文件路径
\Logger::configure(C('LOG_DIR'));
$loginstance=\Logger::getLogger ('test');
}
return $loginstance;
}
}
3、在其它模块中使用该工具类
LogUtil::getLogger()->error("error");
1、配置日志文件,由于要使用到过滤器,所以只能使用php配置文件或者xml配置文件,下面只介绍php配置文件的配置,新建一个log4php.php的文件,配置项如下
<?php
return array (
'rootLogger' => array (
'appenders' => array ('all','error' )
),
'appenders' => array (
'all' => array ( // 打印所有日志信息
'class' => 'LoggerAppenderDailyFile',
'layout' => array (
'class' => 'LoggerLayoutPattern',
'params' => array (
'conversionPattern' => '[%-5p] %d{Y-m-d H:i:s,u} %C.%M:%L %m %n'
)
),
'params' => array (
'datePattern' => 'YmdH',
'file' => 'E:/logs/%s.log', // /alidata/rrpin/logs/%s.log
'append' => true
)
),
'error' => array ( // 只打印warn 以上级别的日志信息
'class' => 'LoggerAppenderDailyFile',
'layout' => array (
'class' => 'LoggerLayoutPattern',
'params' => array (
'conversionPattern' => '[%-5p] %d{Y-m-d H:i:s,u} %C.%M:%L %m %n'
)
),
'params' => array (
'datePattern' => 'YmdH',
'file' => 'E:/logs/error_%s.log', // /alidata/rrpin/logs/%s.log
'append' => true
),
'filters' => array ( // 过滤器
array (
'class' => 'LoggerFilterLevelRange',
'params' => array (
'levelMin' => 'warn',
'levelMax' => 'fatal'
)
)
)
)
)
);
?>
2、编写简单的工具类LogUtil来使用Log4php
<?php
namespace Home\Common;
// Log4php 路径
require_once(C('LOG4PHP_DIR')."/Logger.php");
class LogUtil
{
private static $loginstance;
public static function getLogger() {
if(!isset($loginstance)){
// log4php.php配置文件路径
\Logger::configure(C('LOG_DIR'));
$loginstance=\Logger::getLogger ('test');
}
return $loginstance;
}
}
3、在其它模块中使用该工具类
LogUtil::getLogger()->error("error");
相关文章推荐
- log4j配置文件使其能够打印4个级别的日志到不同的文件中
- logback动态修改配置文件实现打印不同级别日志
- log4j以不同的级别往不同文件(屏幕)打印日志的方法
- 将不同级别的日志输出到不同的日志文件中
- Log4j按级别输出日志到不同的文件
- Log4j按级别输出日志到不同的文件2009-09-07 13:29会按日存分割日志文件,并且根据级别输出到不同的文件
- python: 不同级别的日志输出到不同文件的日志类
- Log4j按级别输出日志到不同的文件
- log4j分不同文件记录不同级别日志
- Log4j按级别输出日志到不同的文件
- log4j日志输出分级别或模块到不同文件
- log4j不同级别日志分不同文件记录
- Log4net按照不同级别写入多个日志文件
- log4j 分级别写入不同的日志文件
- Log4j按级别输出日志到不同文件
- log4j日志分级别输出到不同文件
- log4j日志输出分级别或模块到不同文件
- log4net 将不同级别的信息写入不同的日志文件
- log4j不同级别日志分不同文件记录
- Log4j 实现不同包下的日志打印到不同文件下