如何配置独白电子邮件错误

编辑本页

警告:您正在浏览的文档欧宝体育电话欧宝娱乐app下载地址Symfony 4.4,现已不再维护。

本页的更新版本用于Sy欧宝娱乐app下载地址mfony 6.2(当前稳定版本)。

如何配置独白电子邮件错误

谨慎

这个特性与新的兼容欧宝娱乐app下载地址Symfony梅勒从Symfony 5.1开始欧宝娱乐app下载地址。所有以前的版本都需要使用SwiftMailer。

独白可以配置为在应用程序中发生错误时发送电子邮件。这种配置需要一些嵌套的处理程序,以避免接收过多的电子邮件。这种配置一开始看起来很复杂,但每个处理程序分解后都相当简单。

  • YAML
  • XML
  • PHP
12 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
#配置/包/刺激/ monolog.yaml独白:处理程序:主要:类型:fingers_crossed# 500个错误被记录在临界级别action_level:至关重要的#也记录400个级别的错误(但不是404):# action_level:错误# excluded_http_codes: [404]处理程序:删除处理删除处理:类型:重复数据删除处理程序:斯威夫特迅速:类型:swift_mailerfrom_email:“error@example.com”to_email:“error@example.com”#或收件人列表# to_email:(“dev1@example.com”、“dev2@example.com”…]主题:“发生错误!”% % % %消息”水平:调试格式化程序:monolog.formatter.htmlcontent_type:text / html

主要Handler是fingers_crossedHandler,这意味着它只在动作级别时被触发至关重要的是达到了。的至关重要的级别仅在5xx个HTTP代码错误时触发。如果达到此级别一次,则fingers_crossed处理程序将记录所有消息,而不管它们的级别。的处理程序设置意味着输出随后被传递到删除处理处理程序。

提示

如果希望同时触发400级和500级错误的电子邮件,请设置action_level错误而不是至关重要的.有关示例,请参阅上面的代码。

删除处理处理程序保存请求的所有消息,然后一次性将它们传递到嵌套的处理程序,但前提是记录在给定时间内是唯一的(默认为60秒)。重复的记录将被丢弃。添加此处理程序可以将通知数量减少到可管理的水平,特别是在严重故障场景中。方法可以调整时间段时间选择:

  • YAML
  • XML
  • PHP
1 2 3 4 5 6 7 8 9
#配置/包/刺激/ monolog.yaml独白:处理程序:#……删除处理:类型:重复数据删除#重复条目被丢弃的时间(以秒为单位)(默认:60)时间:10处理程序:斯威夫特

然后将消息传递给斯威夫特处理程序。这是实际处理通过电子邮件向您发送错误的处理程序。这方面的设置很简单,包括收发地址、格式化程序、内容类型和主题。

你可以将这些处理程序与其他处理程序结合起来,这样错误仍然会被记录在服务器以及正在发送的电子邮件上:

  • YAML
  • XML
  • PHP
12 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25
#配置/包/刺激/ monolog.yaml独白:处理程序:主要:类型:fingers_crossedaction_level:至关重要的处理程序:分组分组:类型:集团成员:流,删除处理)流:类型:路径:' % kernel.logs_dir % / % kernel.environment % . log '水平:调试删除处理:类型:重复数据删除处理程序:斯威夫特迅速:类型:swift_mailerfrom_email:“error@example.com”to_email:“error@example.com”主题:“发生错误!”% % % %消息”水平:调试格式化程序:monolog.formatter.htmlcontent_type:text / html

这使用了集团处理程序将消息发送给两个组成员删除处理处理程序。消息现在将被写入日志文件并通过电子邮件发送。

此工作,包括代码示例,是根据创作共用BY-SA 3.0许可证。