首页 > 其他 > 详细

yii2之log组件学习

时间:2016-08-19 20:45:21      阅读:232      评论:0      收藏:0      [点我收藏+]

1、配置阶段

  1)log组件放入bootstrap配置中,用于初始化启动

  2)components中配置log的日志消费处理类

    技术分享

2、启动逻辑

  1)yii框架实例化组件log,coreComponents方法默认指定log对应yii\log\Dispatcher类

  2)Dispatcher类实例化,__construct方法根据配置设置静态常量logger,然后调用父类的__construct方法(即Object的)将参数设置为实例的属性,如果配置没有配置logger,则设置成默认的yii\log\Logger类

  3)然后Dispatcher类再调用init方法,将配置中的targets里的日志消费处理类实例化

  4)至此,log类已经启动完成,可以等待产生日志了

 

3、产生日志及日志消费逻辑

  1)调用Yii::trace、Yii::error、Yii::info、Yii::warning产生日志

  2)框架读取静态常量logger,来调用log方法

  3)log方法根据一定条件触发flush方法,用于触发日志消费类来消费日志数据

  4)flush方法中读取dispatcher实例,调用dispatcher方法,将日志数据路由

  5)dispatcher方法循环遍历配置中的日志消费类实例,调用collect方法来收集日志数据

  6)collect方法根据配置中设置的levels来过滤日志,最后调用export方法将日志消费(不同的日志消费类有自己的export方法)

  7)至此产生日志及日志消费逻辑结束

yii2之log组件学习

原文:http://www.cnblogs.com/echosimple/p/5788799.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!