博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
记一次Monolog的BufferHandler使用
阅读量:5937 次
发布时间:2019-06-19

本文共 459 字,大约阅读时间需要 1 分钟。

laravel中可以设置自定义的日记channel(config/logging中设置),按照laravel-china的一篇文章,把log按一定格式并且以批量的方式写入日志文件:

这里需要注意,对于BufferHandler是不适合在队列中使用的,从Log::method追踪Monolog源码(vendor\monolog\monolog\src\Monolog\Handler\BufferHandler)可以发现

对于最后的批量操作,Monolog是register_shutdown_function()了一个close()方法的,即在脚本结束才会调用close()并在其中调用flush()把日记刷到文件中

但redis队列中的php脚本启动后,执行完任务并不会结束,导致没有机会调用close(),最终会发现任务执行完了,但是Log却没有任何反应

所以注意BufferHandler不适合在队列中使用

转载于:https://www.cnblogs.com/SHQHDMR/p/10562193.html

你可能感兴趣的文章
Pycharm 2017.1 激活服务器
查看>>
HTML基础概念
查看>>
Hadoop构架
查看>>
Nginx的安装
查看>>
PHP下载远程文件及获取文件内容
查看>>
王高利:Redis安装
查看>>
MySQL缓存的查询和清除命令使用详解
查看>>
find_in_set()和in()比较
查看>>
我的友情链接
查看>>
Openstack 云计算 (一): kvm 虚拟机配置
查看>>
我的友情链接
查看>>
CentOS下载地址
查看>>
第二阶段团队进展报告(1)
查看>>
Linux 下的安装(源码包和RPM 包)软件包的命令方法
查看>>
如何确定一个网站是用Wordpress开发的
查看>>
小程序错误TypeError: __webpack_require__
查看>>
云计算每周之“红黑榜”
查看>>
我的友情链接
查看>>
samba服务搭建与配置
查看>>
我的友情链接
查看>>