Apache访问日志到标准输出

有没有办法拦截Apache(1或2)的访问日志到标准输出没有

  • 修改configuration文件
  • 重新启动服务

目前我的apacheconfiguration文件指定“CustomLog / dev / null common”系统是Debian Etch。

在此先感谢serverfault社区!

编辑:这个想法是做什么“strace -p”与进程。 我希望apache2ctl或东西会有一个“转储电stream访问”function:D

如果您正在寻找针对特定问题的解决scheme,您可能需要更详细地解释您的要求和限制。 但是,就目前而言,

你可以截取数据到/dev/null

不。

你能否告诉Apache在别处修改configuration文件或重新启动服务?

不。


更新:

它没有发生在我使用strace 。 但的确,你可以用它来检查write()调用。

 strace -ewrite -s1000 -p<PID> 

尽pipe跟踪stream程,但你会遇到一些困难。 我不认为strace的叉子检测将会帮助你。 这意味着你将不断运行,找出哪个进程处理给定的请求。

至于Apache的这样一个function。 这太可怕了,不会存在。 我认为你是一个优势案例;)

如何临时更改configuration文件,并重新加载? 你要求重新configurationApache,简单明了。 有一个Apache的“重新加载”function,将使用新的configuration,而不会丢失活动的连接,如果你关心的是可用性。

编辑:这是我见过的最疯狂的事情: fdmess

这是一个小工具,用于redirect正在运行的进程的文件描述符,更一般地调整它们。 它通过将ptrace附加到现有进程并强制执行一些系统调用来工作。 这样,你可以强制进程删除权限, 将文件描述符redirect到文件或tcp / ip连接 ,使用unix套接字将描述符连接到另一个正在运行的进程的描述符,或者将文件描述符设置为等于另一个正在运行的进程的描述符(使用unix文件描述符传递)。 由于代码钩子是依赖于体系结构的,目前只支持linux-x86和linux-x86_64体系结构。 欢迎其他体系结构的修补程序。

我不完全确定你想要实现什么,但是如果你只是想在stdout上更新日志,那么你可以在更新的同时实时查看Apache访问或错误日志,尾随“追随”选项

例如

tail -f /var/log/apache2/access.log

尾巴手册页

伙计们,如何使用urlsnarf ?