Frage Apache: Konfigurieren Sie "LogLevel debug" nur für bestimmte Module?


Ich möchte einige Authentifizierungs- und Autorisierungsprobleme auf meinem Webserver beheben, insbesondere mit mod_authnz_ldap und anderen mod_auth * Modulen.

Also habe ich gesetzt LogLevel debug in der Apache-Konfiguration entweder global oder für einen einzelnen VirtualHost. Dies liefert mir nützliche Informationen von mod_authnz_ldap, aber es spuckt auch eine Menge Lärm von den SSL-Modulen aus. Siehe unten für ein Beispiel.

Gibt es eine Möglichkeit, den LogLevel für ssl_engine * zu reduzieren, während der Loglevel für mod_authnz_ldap beibehalten wird?

Ja, ich könnte die Zeilen ausschließen mit etwas wie grep -v ssl_engine logfile, aber ich möchte diese zusätzlichen Daten auch von einigen anderen Syslog-Parsing-Tools ausschließen. Ich würde lieber die Protokollierung von der Quelle reduzieren, anstatt sie am Ziel auszuschließen.

[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|

10
2017-07-07 00:18


Ursprung




Antworten:


Ich beantworte meine eigene Frage, Jeopardy Style.

Apache 2.3

Dies ist in Apache 2.3 möglich.

Apache> HTTP Server> Dokumentation> Version 2.4> Protokollierung pro Modul sagt:

Protokollierung pro Modul

Mit der LogLevel-Direktive können Sie einen Protokollschweregrad pro Modul angeben. Auf diese Weise können Sie, wenn Sie ein Problem mit nur einem bestimmten Modul beheben, die Protokollierung aktivieren   Volumen, ohne auch die Details anderer Module zu bekommen, die Sie sind   nicht interessiert. Dies ist besonders nützlich für Module wie   mod_proxy oder mod_rewrite, wo Sie Details darüber wissen möchten   es versucht zu tun.

Tun Sie dies, indem Sie den Namen des Moduls in Ihrer LogLevel-Direktive angeben:

LogLevel info rewrite:trace5

Dadurch wird der Haupt-LogLevel auf info gesetzt, aber für mod_rewrite wird dieser Wert auf trace5 gesetzt.

Dies ersetzt die Protokollierungsanweisungen pro Modul wie RewriteLog, die in früheren Versionen des Servers vorhanden waren.

Überblick über neue Funktionen in Apache HTTP Server 2.4 sagen:

LogLevel-Konfiguration pro Modul und pro Verzeichnis   Der LogLevel kann jetzt pro Modul und pro Verzeichnis konfiguriert werden. Neue Ebenen   Trace1 bis Trace8 wurden oberhalb der Debug-Protokoll-Ebene hinzugefügt.

Siehe auch die Diskussion auf dem Apache-Entwickler Mailingliste.

Apache 2.2 und früher:

Nein, dies ist derzeit in Apache 2.2 nicht möglich. Das Handbuch unter HTTP Server> Dokumentation> Version 2.2> Module "LogLevel-Richtlinie" zeigt diese Option nicht an. Die einzige Option ist derzeit, die betroffenen Zeilen zu "grep -v" zu machen.

Apache 2.4 (vorgeschlagen zum Zeitpunkt des Schreibens):

Dies wird in Apache 2.4 enthalten sein. Die Apache-Dokumente in der Stamm (2.3) sagen derzeit:

Kompatibilität: Die Konfiguration pro Modul und pro Verzeichnis ist verfügbar   in Apache HTTP Server 2.3.6 und höher

Und:

Angeben einer Ebene ohne ein Modul   name wird den Level für alle zurücksetzen   Module auf dieser Ebene. Angeben eines   Ebene mit einem Modulnamen wird die   level nur für dieses Modul. Es ist   möglich, die Modulquelldatei zu verwenden   Name, die Modulkennung oder der   Modulkennung mit dem Trailing   _Modul wird als Modulspezifikation weggelassen. Das bedeutet die   folgende drei Spezifikationen sind   Äquivalent:

LogLevel info ssl:warn
LogLevel info mod_ssl.c:warn
LogLevel info ssl_module:warn

13
2017-07-07 21:24