apache - 强制 Apache 更新日志文件路径,无需在 WAMP 中重新启动

标签 apache logging wamp httpd.conf

如何强制 Apache(WAMP 的一部分)在 写入新日志>新日志文件无需重新启动服务器?

<小时/>

Apache2\conf\httpd.conf 中,我更新了 ErrorLogCustomLog 指令的路径。

  • 之前:

    ErrorLog ../logs/a.log
    ...
    CustomLog ../logs/b.log common
    
  • 之后:

    ErrorLog ../logs/a2.log
    ...
    CustomLog ../logs/b2.log common
    

LogLevelLogFormat 指令未更改。

更改它们后,我设法(我不知道如何 - 意外或自动完成,但我确信我没有显式重新启动服务器)在新文件中获取新日志。也许这并没有立即发生,因为我在 20 分钟后观察到了这一点(创建了新的日志文件,新的日志发送到它们,而不是旧的日志文件)。这就是我想要实现的目标!

但后来我再次更改了路径:

  • ../logs/a2.log => ../logs/a3.log
  • ../logs/b2.log => ../logs/b3.log

但日志没有转到新路径(它们仍然写入 ../logs/a2.log../logs/b2.log >).

我正在考虑以下两种可能的方法可以解决我的问题,但可能还有另一种方法:

  1. 在不停止 Apache(或 WAMP 中的任何其他组件)的情况下重新加载整个 httpd.conf
  2. 仅强制更新 ErrorLogCustomLog 行(就直接在cmd,忽略 httpd.conf 文件)。
<小时/>

详细信息:

  • WAMP5 1.6.6(升级不是解决方案)
    • Apache 2.0.59(大约 9 年前发布)
  • 我无法重新启动服务器,因为用户需要不间断地访问应用程序。

最佳答案

要正确回答这个问题,您需要告诉我您的 apache 配置中正在使用哪个日志记录 api。

如果使用 log4j,请查看以下 URL Log4j Automatic Configuration

您将在此处找到有关在 Log4j 配置文件中设置 monitorInterval 属性的信息。将此属性设置为非零值(> 5)将导致下次评估和/或记录日志事件时检查该文件,并且自上次检查以来已经过了monitorInterval(以秒为单位指定)

关于apache - 强制 Apache 更新日志文件路径,无需在 WAMP 中重新启动,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35087392/

相关文章:

apache - 无效命令 'RedirectMatch' - Apache 2.47。 Ubuntu 信任

java - log4j.properties 中的 rootCategory 是什么意思?

php - 我如何在 wamp 中对 mysql 进行基准测试?

wamp - 无法启动 WAMP - Aestan Tray Menu 已停止工作

java - 在 WAMP 中执行 Java 程序

apache - 需要 apache Phoenix UDF 指南

php - 如何在php或apache中限制文件上传速度?

php - 如何让 php include_path 在自定义目录 '/var/custom_directory' 上工作?

jvm - 是否可以指定 JVM 故障转储的位置?

python - 通用对象 "watcher"代理,用于包装集合对象以记录状态更改(添加/删除)