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


Posted in PHP onMay 23, 2017

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

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

日志格式如下:

[时间] - [级别] - [类别] - [内容]

2013/05/03 17:33:08 [error] [application] test

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

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

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

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

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

具体配置如下:

'log' => array(
  'class' => 'CLogRouter',
  'routes' => array(
    array(
      'class' => 'CFileLogRoute',
      'levels' => 'error, warning',
    ),
    array(
      'class' => 'CFileLogRoute',
      'levels' => 'error, warning',
      'categories'=> 'orders.*',
      'logFile'=> 'orders.log',
    ),

在需要记录订单错误的地方,添加如下代码:

Yii::log('your message', 'error', 'orders');

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

PHP 相关文章推荐
整合了前面的PHP数据库连接类~~做成一个分页类!
Nov 25 PHP
discuz 首页四格:最新话题+最新回复+热门话题+精华文章插件
Aug 19 PHP
php while循环得到循环次数
Oct 26 PHP
php对数组排序代码分享
Feb 24 PHP
配置php.ini实现PHP文件上传功能
Nov 27 PHP
phpmyadmin提示The mbstring extension is missing的解决方法
Dec 17 PHP
php动态变量定义及使用
Jun 10 PHP
[原创]ThinkPHP让../Public在模板不解析(直接输出)的方法
Oct 09 PHP
PHP Yii框架之表单验证规则大全
Nov 16 PHP
PHP根据session与cookie用户登录状态操作类的代码
May 13 PHP
[原创]PHP正则删除html代码中a标签并保留标签内容的方法
May 23 PHP
TP5框架使用QueryList采集框架爬小说操作示例
Mar 26 PHP
Yii 2.0如何使用页面缓存方法示例
May 23 #PHP
PHP创建单例后台进程的方法示例
May 23 #PHP
解决Yii2邮件发送结果返回成功,但接收不到邮件的问题
May 23 #PHP
yii 2.0中表单小部件的使用方法示例
May 23 #PHP
php实现留言板功能(会话控制)
May 23 #PHP
php实现文件预览功能
May 23 #PHP
PHP写的简单数字验证码实例
May 23 #PHP
You might like
支持数组的ADDSLASHES的php函数
2010/02/16 PHP
laravel多条件查询方法(and,or嵌套查询)
2019/10/09 PHP
关于UTF-8的客户端用AJAX方式获取GB2312的服务器端乱码问题的解决办法
2010/11/30 Javascript
JQuery扩展插件Validate—6 radio、checkbox、select的验证
2011/09/05 Javascript
jQuery学习笔记 操作jQuery对象 CSS处理
2012/09/19 Javascript
js模拟select下拉菜单控件的代码
2013/05/08 Javascript
Jquery焦点与失去焦点示例应用
2014/06/10 Javascript
jQuery改变form表单的action,并进行提交的实现代码
2016/05/25 Javascript
使用jquery/js获取iframe父子级、同级获取元素的方法
2016/08/05 Javascript
ES6概念 Symbol toString()方法
2016/12/25 Javascript
Vue2.0如何发布项目实战
2017/07/27 Javascript
nodejs实现超简单生成二维码的方法
2018/03/17 NodeJs
微信小程序自定义select下拉选项框组件的实现代码
2018/08/28 Javascript
express express-session的使用小结
2018/12/12 Javascript
JavaScript Tab菜单实现过程解析
2020/05/13 Javascript
python实现k均值算法示例(k均值聚类算法)
2014/03/16 Python
使用Python操作MySQL的一些基本方法
2015/08/16 Python
通过python将大量文件按修改时间分类的方法
2018/10/17 Python
python IDLE 背景以及字体大小的修改方法
2019/07/12 Python
django项目用higcharts统计最近七天文章点击量
2019/08/17 Python
Python+OpenCV图像处理——打印图片属性、设置存储路径、调用摄像头
2020/10/22 Python
浅谈利用缓存来优化HTML5 Canvas程序的性能
2015/05/12 HTML / CSS
基于canvas的骨骼动画的示例代码
2018/06/12 HTML / CSS
详解使用postMessage解决iframe跨域通信问题
2019/11/01 HTML / CSS
iframe跨域的几种常用方法
2019/11/11 HTML / CSS
适合各种场合的美食礼品:Harry & David
2016/08/03 全球购物
选购世界上最好的美妆品:Cult Beauty
2017/11/03 全球购物
有针对性的求职自荐信
2013/11/14 职场文书
拖鞋店创业计划书
2014/01/15 职场文书
搞笑的获奖感言
2014/08/16 职场文书
开展党的群众路线教育实践活动情况汇报
2014/11/05 职场文书
孝老爱亲事迹材料
2014/12/24 职场文书
幼儿园教师安全责任书
2015/05/08 职场文书
欠条格式范本
2015/07/03 职场文书
如何写通讯稿
2015/07/22 职场文书
少先大队干部竞选稿
2015/11/20 职场文书