【发布时间】:2017-06-30 06:35:56
【问题描述】:
- 我正在为 Web 应用程序开发 PHP 后端 API 服务器, 其中包含 50 多个 PHP API。
- 现在我需要的是我 需要记录所有请求的出现和这些 API 发生的错误。
- 我没有使用任何框架。
- 我创建了自己的日志记录代码 下面给出的请求。
// **************PHP API请求日志代码**********************
函数日志数据 {
$req_dump = json_encode($_REQUEST);
$actual_link = (isset($_SERVER['HTTPS']) ? "https" : "http") . "://$_SERVER[HTTP_HOST]$_SERVER[REQUEST_URI]";
$filename = str_replace(" ", "_", $_FILES['userfile']['name']);
$log = "------------------------------------------------------------".PHP_EOL.
"UserIP: ".$_SERVER['REMOTE_ADDR'].' - '.date("F j, Y, g:i a").PHP_EOL.
"Request Data: ".$req_dump.PHP_EOL.
"Request Method: ".$_SERVER['REQUEST_METHOD'].PHP_EOL.
"API URL: ".$actual_link.PHP_EOL.
"File Name: ".$filename.PHP_EOL.
"------------------------------------------------------------".PHP_EOL;
}
// $fp = fopen('../api_logs/request.txt', 'a');
// $fw = fwrite($fp, $log);
// fclose($fp);
$fp = file_put_contents( '../api_logs/request.log', $log, FILE_APPEND);
// **************PHP API Request Log Code*****************
- 现在将所有 API 的请求信息和错误日志一起记录到服务器本身的文件中的最佳方法是什么?
【问题讨论】:
-
如果它有一个入口点(例如 index.php ),您可以在那里记录请求,还可以查看这些函数
register_shutdown_function、set_error_handler和set_exception_handler -
您可以在我的 github github.com/ArtisticPhoenix/Evo/blob/master/EVO/Error/… 上看到一些如何使用这些的示例,尽管这是我正在编写的更大框架的一部分。
标签: php error-logging