在运行时将日志记录添加到 HTTP 服务器

在运行时将日志记录添加到 HTTP 服务器

有时我们运行 HTTP 服务器时,你会发现它开始出现问题。我想在不重新启动它的情况下开始记录所有 HTTP 请求。

是否有任何工具可让您在 HTTP 服务器持续运行时添加某种日志记录?我并不是在寻找一种在启动服务器之前必须执行某些操作的工具,因为在给定情况下这不是一个选项。

注意:我们确实可以选择更改正在运行的服务器的端口,因此可以在请求实际到达我想要添加日志记录的服务器之前添加一个进程。我们使用的是 Linux。

答案1

您没有提到您使用什么作为 HTTP 服务器。由于您使用的是 Linux,我猜是 Apache。如果是这样,日志记录应该默认启用。我不知道您为什么要禁用它 - 也许出于性能原因,但启用它很简单,而且重新加载服务,无需重新启动。这可以在 httpd.conf 中完成,日志(默认)保存在 /var/log/httpd 中。

如果您坚持让其他进程为您进行日志记录,然后将流量传递给您的 HTTP 服务,请记住,这将比简单地启用日志记录对性能产生更大的影响,但如果您真的想这样做,Squid 和 Apache 是两个不错的选择。Squid 是一个 Linux Web 代理,可以配置为反向代理,为您路由(和记录)传入流量。Apache 具有相同的功能,具有 Proxy 和/或 Rewrite 指令。

我希望这能帮助您找到正确的方向。

相关内容