Yii框架实现记录日志到自定义文件的方法

前端之家收集整理的这篇文章主要介绍了Yii框架实现记录日志到自定义文件的方法前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

@H_301_0@本文实例讲述了Yii框架实现记录日志到自定义文件方法分享给大家供大家参考,具体如下:


@H_301_0@默认情况下,Yii::log($msg,$level,$category)会把日志记录到runtime/application.log文件


@H_3010@

日志格式如下:


@H
301_0@[时间] - [级别] - [类别] - [内容]


<div class="jb51code">
<pre class="brush:xhtml;">
2013/05/03 17:33:08 [error] [application] test

@H_301_0@但有时候需要把某些特定的日志放到特定的文件中,比如交易失败的日志,需要和其他日志区分开来单独记录。

@H_301_0@在Yii中可以通过配置不同的CLogRouter来解决

@H_301_0@你需要先了解Yii的日志机制,Yii的日志功能有CLogger和CLogRouter两部分,

@H_301_0@其中CLogger负责记录日志数据在内存中,而CLogRouter则决定如何处理这些日志数据,如记录到文件数据库,或发送邮件

@H_301_0@其中的CFileLogRoute就是用来以文件的形式来处理日志数据的。那么很自然的,通过配置不同的CFileLogRoute就可以把日志记录到不同的日志文件中。

@H_301_0@

具体配置如下:

array( 'class' => 'CLogRouter','routes' => array( array( 'class' => 'CFileLogRoute','levels' => 'error,warning',),array( 'class' => 'CFileLogRoute','categories'=> 'orders.*','logFile'=> 'orders.log',
@H_301_0@在需要记录订单错误的地方,添加如下代码:

PHP;"> Yii::log('your message','error','orders');
@H_301_0@更多关于Yii相关内容感兴趣的读者可查看本站专题:《》、《》、《》、《》、《》、《》及《PHP常见数据库操作技巧汇总》

@H_301_0@希望本文所述对大家基于Yii框架的PHP程序设计有所帮助。

猜你在找的PHP相关文章