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 相关文章推荐
DISCUZ 分页代码
Jan 02 PHP
PHP 执行系统外部命令 system() exec() passthru()
Aug 11 PHP
openPNE常用方法分享
Nov 29 PHP
php通过sort()函数给数组排序的方法
Mar 18 PHP
php使用标签替换的方式生成静态页面
May 21 PHP
简单的php+mysql聊天室实现方法(附源码)
Jan 05 PHP
thinkPHP删除前弹出确认框的简单实现方法
May 16 PHP
php+jquery+html实现点击不刷新加载更多的实例代码
Aug 12 PHP
ThinkPHP框架实现数据增删改
May 07 PHP
ThinkPHP框架整合微信支付之刷卡模式图文详解
Apr 10 PHP
PHP常见过waf webshell以及最简单的检测方法
May 21 PHP
浅谈laravel-admin form中的数据,在提交后,保存前,获取并进行编辑
Oct 21 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
php去掉字符串的最后一个字符附substr()的用法
2011/03/23 PHP
PHP URL路由类实例
2013/11/12 PHP
PHP中预定义的6种接口介绍
2015/05/12 PHP
PHP请求Socket接口测试实例
2016/08/12 PHP
Iframe thickbox2.0使用的方法
2009/03/05 Javascript
利用JS自动打开页面上链接的实现代码
2011/09/25 Javascript
轻松创建nodejs服务器(4):路由
2014/12/18 NodeJs
浅谈Sticky组件的改进实现
2016/03/22 Javascript
Laravel中常见的错误与解决方法小结
2016/08/30 Javascript
Angular2学习笔记——详解NgModule模块
2016/12/02 Javascript
Javascript中return的使用与闭包详解
2017/01/11 Javascript
vue实现引入本地json的方法分析
2018/07/12 Javascript
vue element table 表格请求后台排序的方法
2018/09/28 Javascript
详解Vue webapp项目通过HBulider打包原生APP(vue+webpack+HBulider)
2019/02/02 Javascript
Node爬取大批量文件的方法示例
2019/06/28 Javascript
ElementUI之Message功能拓展详解
2019/10/18 Javascript
[47:18]完美世界DOTA2联赛循环赛 IO vs FTD BO2第一场 11.05
2020/11/06 DOTA
Python简单进程锁代码实例
2015/04/27 Python
python实现的文件同步服务器实例
2015/06/02 Python
Python 逐行分割大txt文件的方法
2017/10/10 Python
python取数作为临时极大值(极小值)的方法
2018/10/15 Python
python连接打印机实现打印文档、图片、pdf文件等功能
2020/02/07 Python
Matplotlib 绘制饼图解决文字重叠的方法
2020/07/24 Python
Python接收手机短信的代码整理
2020/08/02 Python
Bootstrap 学习分享
2012/11/12 HTML / CSS
工作室成员个人发展规划范文
2014/01/24 职场文书
2014升学宴答谢词
2014/01/26 职场文书
毕业生大学生活自我总结
2014/01/31 职场文书
岗位竞聘书范文
2014/03/31 职场文书
医学专业自荐信
2014/06/14 职场文书
党的群众路线教育实践活动党员个人剖析材料
2014/10/08 职场文书
安全保证书
2015/01/16 职场文书
个人委托书范文
2015/01/28 职场文书
计算机专业自荐信范文
2015/03/26 职场文书
2015年煤矿安全工作总结
2015/05/23 职场文书
八年级英语教学反思
2016/02/15 职场文书