提问人:rolinger 提问时间:4/21/2021 更新时间:4/21/2021 访问量:153
PHP 通过电子邮件或其他方式向管理员发出脚本错误警报
php alerting admin of script errors via email or other
问:
我目前正在捕获脚本错误,如下所示:
error_reporting(-1) ;
ini_set("log_errors",TRUE) ;
ini_set("error_log","phpErrors.log") ;
但是我需要一种更好的机制来报告这些错误,这样我就不必手动查看日志文件来查看是否捕获了某些内容。我读到有一个内置的电子邮件功能,如下所示: 使用 error_log() 通过电子邮件发送错误消息error_log
在 error_log() 中使用此电子邮件函数是否会干扰日志记录到日志文件?同样,是否有更好的机制来创建警报(某种类型),这样我就不会被错误电子邮件淹没?我想无论我使用什么机制,它都是相同级别的警报/电子邮件 - 但我只需要一种比清理错误日志更好的方式来获得通知。
有什么建议吗?
答:
调用 时,它将仅执行第二个参数指定的操作,而不是同时执行两个或多个操作。因此,如果您说要发送电子邮件,它不会记录到磁盘。如果第二个参数是位掩码,那就意味着这一点。我猜这样做的目的是每次都以明确的意图偶尔使用它。error_log
至于“有没有更好的机制?”,这是主观的,日志记录有一个临界点,你需要确定什么最适合你和你的项目、工作流程、团队等。
就我个人而言,我喜欢 Monolog,它遵循 PSR-3 并记录了从调试到紧急的 8 个级别的日志记录。使用 Monolog,您可以设置“处理程序”,其工作是对日志执行某些操作,写入磁盘、数据库、系统日志、控制台,或者可能发送电子邮件、短信或其他第三方服务。每个处理程序都可以设置不同的日志级别,因此您可以将调试和更大的日志记录到磁盘,将错误或更大的内容记录到电子邮件,将紧急情况记录到短信。定制完全由您决定。
还有其他 PSR-3 记录器,如果您需要一些简单的东西,自己滚动确实是微不足道的,但我鼓励您研究一下一般设置。
评论