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图片验证码代码
Mar 27 PHP
PHP动态创建Web站点的方法
Aug 14 PHP
PHP序列号生成函数和字符串替换函数代码
Jun 07 PHP
PHP安全的URL字符串base64编码和解码
Jun 19 PHP
PHP实现更新中间关联表数据的两种方法
Sep 01 PHP
php计划任务之ignore_user_abort函数实现方法
Jan 08 PHP
php socket通信(tcp/udp)实例分析
Feb 14 PHP
Laravel+jQuery实现AJAX分页效果
Sep 14 PHP
php array_walk 对数组中的每个元素应用用户自定义函数详解
Nov 18 PHP
利用PHP获取访客IP、地区位置、浏览器及来源页面等信息
Jun 27 PHP
PHP面向对象程序设计子类扩展父类(子类重新载入父类)操作详解
Jun 14 PHP
laravel 解决crontab不执行的问题
Oct 22 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之数组学习
2011/05/29 PHP
PHP截取指定图片大小的方法
2014/12/10 PHP
thinkphp3.2.3 分页代码分享
2016/07/28 PHP
PHP使用数组实现矩阵数学运算的方法示例
2017/05/29 PHP
PHP实现从PostgreSQL数据库检索数据分页显示及根据条件查找数据示例
2018/06/09 PHP
javascript+xml技术实现分页浏览
2008/07/27 Javascript
jquery高效反选具体实现
2013/05/05 Javascript
jquery表单验证框架提供的身份证验证方法(示例代码)
2013/12/27 Javascript
JavaScript中toString()方法的使用详解
2015/06/05 Javascript
详解javascript的变量与标识符
2016/01/04 Javascript
jQuery实现的网页换肤效果示例
2016/09/20 Javascript
利用Angularjs中模块ui-route管理状态的方法
2016/12/27 Javascript
微信小程序网络请求wx.request详解及实例
2017/05/18 Javascript
angular2中使用第三方js库的实例
2018/02/26 Javascript
javascript实现5秒倒计时并跳转功能
2019/06/20 Javascript
Vue+Java 通过websocket实现服务器与客户端双向通信操作
2020/09/22 Javascript
js实现磁性吸附的示例
2020/10/26 Javascript
[06:21]2014DOTA2国际邀请赛 庆祝VG首阶段领跑;B叔为挣牛排半夜整理情报
2014/07/13 DOTA
Python使用正则表达式抓取网页图片的方法示例
2017/04/21 Python
Python使用Selenium模块实现模拟浏览器抓取淘宝商品美食信息功能示例
2018/07/18 Python
python读取txt文件中特定位置字符的方法
2018/12/24 Python
Pandas0.25来了千万别错过这10大好用的新功能
2019/08/07 Python
解决Django部署设置Debug=False时xadmin后台管理系统样式丢失
2020/04/07 Python
墨西哥运动服饰和鞋网上商店:Netshoes墨西哥
2016/07/28 全球购物
中国跨境海淘网站:考拉海购
2016/08/01 全球购物
以设计师精品品质提供快速时尚:PopJulia
2018/01/09 全球购物
医药工作岗位求职信分享
2013/12/31 职场文书
职业生涯规划书结束语
2014/04/15 职场文书
残疾人小组计划书
2014/04/27 职场文书
计划生育工作汇报
2014/10/28 职场文书
超市员工辞职信范文
2015/05/12 职场文书
2015年公司保安年终工作总结
2015/05/14 职场文书
2015年网络舆情工作总结
2015/07/24 职场文书
上手简单,功能强大的Python爬虫框架——feapder
2021/04/27 Python
原生JS实现飞机大战小游戏
2021/06/09 Javascript
pt-archiver 主键自增
2022/04/26 MySQL