Yii2实现log输出到file及database的方法


Posted in PHP onNovember 12, 2016

本文实例讲述了Yii2实现log输出到file及database的方法。分享给大家供大家参考,具体如下:

编辑config/web.php

首先log要开启

'bootstrap' => [
  'log'
],

[file]

'components' => [
  'log' => [
    'targets' => [
      [
        'class' => 'yii\log\FileTarget',
        'exportInterval' => 1,
      ],
    ],
  ],
]

默认输出到runtime/logs/app.log

注意webserver或控制台用户要有写入该文件的权限

[database]

'log' => [
  'targets' => [
    [
      'class' => 'yii\log\DbTarget',
      'levels' => ['error', 'warning', 'trace'],
    ]
  ]
],

默认输出db组件对应的数据库下{{%log}}表

yii2根目录下运行下面命令生成对应的table schema

./yii migrate --migrationPath=@yii/log/migrations/

注意config/console.php下也要有和web.php同样的配置,否则命令执行不成功。

还可以根据不同的环境配置不同的日志模式

'components' => [
  'log' => [
    'traceLevel' => YII_ENV == 'dev' ? 3 : 0,
    'targets' => [
      [
        'class' => 'yii\log\DbTarget',
        'levels' => YII_DEBUG ? ['error', 'warning', 'trace'] : ['error'],
      ],
      [
        'class' => 'yii\log\FileTarget',
        'levels' => YII_DEBUG ? ['error', 'warning', 'trace'] : ['error', 'warning'],
      ],
    ],
  ],
],

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

PHP 相关文章推荐
分页显示Oracle数据库记录的类之二
Oct 09 PHP
c#中的实现php中的preg_replace
Dec 21 PHP
APACHE的AcceptPathInfo指令使用介绍
Jan 18 PHP
php去除二维数组的重复项方法
Nov 03 PHP
WordPress中获取指定分类及其子分类下的文章数目
Dec 31 PHP
php基于curl主动推送最新内容给百度收录的方法
Oct 14 PHP
php接口技术实例详解
Dec 07 PHP
详解EventDispatcher事件分发组件
Dec 25 PHP
PHP实现的XML操作类【XML Library】
Dec 29 PHP
PHP实现的简单适配器模式示例
Jun 22 PHP
利用PHP获取访客IP、地区位置、浏览器及来源页面等信息
Jun 27 PHP
浅谈laravel-admin form中的数据,在提交后,保存前,获取并进行编辑
Oct 21 PHP
php 自定义错误日志实例详解
Nov 12 #PHP
ThinkPHP5实现作业管理系统中处理学生未交作业与已交作业信息的方法
Nov 12 #PHP
php array_values 返回数组的所有值详解及实例
Nov 12 #PHP
php array_udiff_assoc 计算两个数组的差集实例
Nov 12 #PHP
PHP上传图片、删除图片简单实例
Nov 12 #PHP
PHP防止图片盗用(盗链)的方法小结
Nov 11 #PHP
PHP数据的提交与过滤基本操作实例详解
Nov 11 #PHP
You might like
PHP面向对象的进阶学习(抽像类、接口、final、类常量)
2012/05/07 PHP
解析:使用php mongodb扩展时 需要注意的事项
2013/06/18 PHP
Symfony核心类概述
2016/03/17 PHP
CI框架简单邮件发送类实例
2016/05/18 PHP
详解Laravel设置多态关系模型别名的方式
2019/10/17 PHP
Extjs中ComboBoxTree实现的下拉框树效果(自写)
2013/05/28 Javascript
jquery通过closest选择器修改上级元素的方法
2015/03/17 Javascript
JavaScript中的toLocaleDateString()方法使用简介
2015/06/12 Javascript
JS实现的鼠标跟随代码(卡通手型点击效果)
2015/10/26 Javascript
JavaScript运行过程中的“预编译阶段”和“执行阶段”
2015/12/16 Javascript
Bootstrap 源代码分析(未完待续)
2016/08/17 Javascript
jquery ajaxfileupload异步上传插件使用详解
2017/02/08 Javascript
js序列化和反序列化的使用讲解
2019/01/19 Javascript
node.js实现上传文件功能
2019/07/15 Javascript
vue点击按钮实现简单页面的切换
2020/09/08 Javascript
[51:43]OG vs LGD 2018国际邀请赛淘汰赛BO3 第五场 8.26
2018/08/30 DOTA
使用python解析xml成对应的html示例分享
2014/04/02 Python
Python的randrange()方法使用教程
2015/05/15 Python
Python 稀疏矩阵-sparse 存储和转换
2017/05/27 Python
Python3.0中普通方法、类方法和静态方法的比较
2019/05/03 Python
Flask框架学习笔记之使用Flask实现表单开发详解
2019/08/12 Python
python 用户交互输入input的4种用法详解
2019/09/24 Python
python如何实现不用装饰器实现登陆器小程序
2019/12/14 Python
python读取tif图片时保留其16bit的编码格式实例
2020/01/13 Python
pyecharts调整图例与各板块的位置间距实例
2020/05/16 Python
python程序如何进行保存
2020/07/03 Python
Python 防止死锁的方法
2020/07/29 Python
一款利用纯css3实现的360度翻转按钮的实例教程
2014/11/05 HTML / CSS
HTML5 input元素类型:email及url介绍
2013/08/13 HTML / CSS
Wiggle中国:英国骑行、跑步、游泳 & 铁三运动装备专卖网店
2016/08/02 全球购物
斯凯奇新西兰官网:SKECHERS新西兰
2018/02/22 全球购物
iostream与iostream.h的区别
2015/01/16 面试题
新闻编辑求职信
2014/04/09 职场文书
经营理念标语
2014/06/21 职场文书
机关作风建设工作总结
2014/10/23 职场文书
node.js使用express-fileupload中间件实现文件上传
2021/07/16 Javascript