是否可以将相同的错误发送到/ var / log / php_errors中的全局php错误日志,并将相同的错误发送到/ var / www / mysite / php_errors中的本地错误日志?
在我们的登台服务器上,我拖尾日志文件,很多wordpress的东西以及一些丑陋的print_r将来自其他开发人员。我想要一个全局错误文件来查看是否有任何不时破坏服务器的内容,以及将我的本地错误分开,以便我可以更好地关注它们如果我现在只对一个站点感兴趣
答案 0 :(得分:3)
使用set_error_handler
并根据需要创建自定义错误函数。
答案 1 :(得分:1)
不是我知道的。但是,您可以使用error_prepend_string
ini设置并在前面添加所有错误日志。然后当你拖动你的日志文件时,你可以对你设置的任何内容进行grep,它只会显示来自该站点的消息(只要你选择一些相当独特的东西。)
http://www.php.net/manual/en/errorfunc.configuration.php#ini.error-prepend-string
答案 2 :(得分:1)
如果使用log4php等库,则可以根据日志类型配置各种日志选项,包括写入多个文件,发送电子邮件等。
答案 3 :(得分:0)
您可以在共享文件中使用此代码,并调用适当的日志记录功能:
function log_to_file_1($msg){
ini_set("log_errors", 1);
ini_set("error_log", "/tmp/file_1.log");
ini_set('log_errors_max_len', 1024); // Logging file size
error_log($msg);
}
function log_to_file_2($msg){
ini_set("log_errors", 1);
ini_set("error_log", "/tmp/file_2.log");
ini_set('log_errors_max_len', 1024); // Logging file size
error_log($msg);
}
您还可以使用一个以文件名作为参数的日志记录功能:
function mysql_error_log($filename, $msg){
ini_set("log_errors", 1);
ini_set("error_log", "/tmp/$filename");
ini_set('log_errors_max_len', 1024); // Logging file size
error_log($msg);
}