【问题标题】:php alerting admin of script errors via email or otherphp 通过电子邮件或其他方式提醒管理员脚本错误
【发布时间】:2021-07-14 21:17:28
【问题描述】:

我目前正在捕获这样的脚本错误:

error_reporting(-1) ;
ini_set("log_errors",TRUE) ;
ini_set("error_log","phpErrors.log") ;

但我需要一种更好的机制来报告这些错误,这样我就不必手动查看日志文件来查看是否捕获了某些内容。我读到了error_log 有一个内置的电子邮件功能,如下所示:Send errors message via email using error_log()

在 error_log() 中使用这个 email 函数会干扰日志文件的记录吗?此外,是否有更好的机制来创建(某种类型的)警报,这样我就不会被错误电子邮件淹没?我想我使用的任何机制都将是相同级别的警报/电子邮件 - 但我只需要一种比清理错误日志更好的方式来获得通知。

有什么建议吗?

【问题讨论】:

    标签: php error-handling error-reporting


    【解决方案1】:

    当您调用error_log 时,它只会执行第二个参数指定的操作,不会同时执行两个或多个。因此,如果您说要发送电子邮件,它不会记录到磁盘。如果第二个参数是一个位掩码,那就意味着那个。我猜测其目的是每次都以明确的意图偶尔使用它。

    至于“有更好的机制吗?”,这是主观的,日志记录有一个转折点,您需要确定最适合您和您的项目、工作流程、团队等的方法。

    就个人而言,我喜欢Monolog 之后的PSR-3 并记录了从调试到紧急情况的8 级日志记录。使用 Monolog,您可以设置“处理程序”,其工作是处理日志,或者写入磁盘、数据库、系统日志、控制台,或者可能发送电子邮件、SMS 或其他第三方服务。每个处理程序都可以设置不同的日志级别,因此您可以将调试和更高版本记录到磁盘,将错误或更高版本发送到电子邮件,将紧急情况发送到 SMS。自定义完全由您决定。

    还有其他 PSR-3 记录器,如果您需要一些简单的东西,自己动手做起来真的很简单,但我建议您研究一下一般设置。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2016-05-15
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-06-02
      • 1970-01-01
      • 2020-10-19
      • 1970-01-01
      相关资源
      最近更新 更多