Apache:仅为某些模块配置“ LogLevel调试”吗?


13

我想调试Web服务器上的某些身份验证和授权问题,尤其是使用mod_authnz_ldap和其他mod_auth *模块。

因此,我LogLevel debug在全局或单个VirtualHost中设置了Apache配置。这为我提供了来自mod_authnz_ldap的有用信息,但同时也会从SSL模块中散发出大量噪音。请参阅下面的示例。

有没有办法降低ssl_engine *的LogLevel,同时仍保持mod_authnz_ldap的日志水平?

是的,我可以使用来排除行grep -v ssl_engine logfile,但我也想从其他syslog解析工具中排除这些额外的数据。我宁愿减少来自源的日志记录,而不是将其排除在目标位置之外。

[Tue Jul 06 16:55:31 2010] [debug] ssl_engine_io.c(1830): | 0100: 12 23 e7 0f 45 1f 1f d3-ed 12 f8 12 1f a9 90 85  .+..(........... |
[Tue Jul 06 16:55:31 2010] [debug] mod_authnz_ldap.c(474): [client 10.10.10.123] [96991] auth_ldap authenticate: accepting joe
[Tue Jul 06 16:55:31 2010] [debug] mod_authnz_ldap.c(730): [client 10.10.10.123] [96991] auth_ldap authorise: require group: authorisation successful (attribute memberUid) [Comparison true (cached)][Compare True]
[Tue Jul 06 17:02:17 2010] [debug] ssl_engine_io.c(1830): | 0023: 23 ff 29 5a 4b bd 4c e6-bc 36 22 9c c3 22 c2 4b  ..)ZK.L..6u....K |
[Tue Jul 06 17:02:17 2010] [debug] ssl_engine_io.c(1830): | 0023: 23 ff 29 5a 4b bd 4c e6-bc 22 75 9c c3 b6 22 4b  ..)blahblah|

Answers:


16

我在回答自己的问题,《危险风格》。

阿帕奇2.3

这在Apache 2.3中是可能的。

Apache> HTTP服务器>文档>版本2.4>每个模块的记录显示

每个模块的日志记录

LogLevel指令允许您基于每个模块指定日志严重性级别。这样,如果您仅对一个特定模块进行故障排除,就可以调高其日志记录量,而无需获取其他您不感兴趣的模块的详细信息。这对于诸如mod_proxy或mod_rewrite之类的模块特别有用您想知道有关它要执行的操作的详细信息。

通过在LogLevel指令中指定模块的名称来执行此操作:

LogLevel info rewrite:trace5

这会将主LogLevel设置为info,但将其设置为trace5以进行mod_rewrite。

这将替换服务器早期版本中存在的按模块记录的指令,例如RewriteLog。

Apache HTTP Server 2.4中的新功能概述说:

按模块和按目录的LogLevel配置现在可以按模块和按目录配置LogLevel。在调试日志级别之上添加了新级别trace1至trace8。

另请参阅关于Apache-dev邮件列表的讨论。

Apache 2.2及更低版本:

不,目前在Apache 2.2中是不可能的。HTTP服务器>文档>版本2.2>模块“ LogLevel指令”中的手册未显示此选项。当前唯一的选择是“ grep -v”违规行。

Apache 2.4(在撰写本文时提出):

这将包含在Apache 2.4中。目前,主干(2.3)中的Apache文档说:

兼容性:Apache HTTP Server 2.3.6和更高版本中提供了按模块和按目录的配置

和:

指定不带模块名称的级别会将所有模块的级别重置为该级别。使用模块名称指定级别将仅设置该模块的级别。可以使用模块源文件名,模块标识符或模块标识符,省略尾随的_module作为模块规范。这意味着以下三个规格是等效的:

LogLevel info ssl:warn
LogLevel info mod_ssl.c:warn
LogLevel info ssl_module:warn
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.