配置PHP以将错误存储在数据库中


Configuring PHP to store errors in database

是否可以将php.ini配置为在MySQL数据库中存储错误,而不是简单的错误日志?

我看到的唯一选项是使用php.ini将包含自定义错误处理函数的文件附加到每个php脚本中。不过,这听起来并不有效。

如果你不喜欢Frankie在评论中提供的答案,这更像是一个服务器级别的问题。如果不使用set_error_handler,就无法(在PHP中)将所有错误输出到日志文件而不是日志。

如果您正在使用Apache,您可以执行以下操作:

CustomLog "|/path/to/custom_log_script.php [OPTIONS]"

(注意管道)

这将允许您使用自定义错误日志处理程序来控制日志文件中的内容。

您可以设置一个cron作业来执行php脚本,读取新错误的错误日志文件并将其存储在数据库中。虽然错误日志表不会是实时的,但我认为它应该不是太大的问题。