我的应用程序有两个日志处理程序-error
和info
:
monolog:
handlers:
error:
type: fingers_crossed
action_level: error
handler: my_log
info:
type: stream
action_level: info
handler: my_log
my_log:
type: stream
path: "%kernel.logs_dir%/foo.log"
如果记录的错误级别为错误或更高,则仅执行error
处理程序。但是,如果出现级别为 info 的消息,则同时执行error
和info
处理程序。
每个处理程序都决定是否完全处理记录,如果是, 记录的传播到此结束。
如何告诉Monolog我的info
处理程序已完全处理了该错误?当我在文档中找到$bubble
属性时,我以为自己正在做某事:
处理程序还具有$ bubble属性,该属性定义如果处理记录,则是否阻塞记录。在此示例中,将MailHandler的$ bubble参数设置为false意味着由MailHandler处理的记录将不再传播到StreamHandler。
但是,在我的error
处理程序上进行设置似乎会阻止info
完全执行。
总而言之,如果info
处理程序已经执行,如何停止执行error
处理程序?