Blame SOURCES/README.redhat.rst

182345
Red Hat Specific mod_auth_mellon Information
182345
============================================
182345
182345
This README contains information specific to Red Hat's distribution of
182345
``mod_auth_mellon``.
182345
182345
Diagnostic Logging
182345
------------------
182345
182345
Diagnostic logging can be used to collect run time information to help
182345
diagnose problems with your ``mod_auth_mellon`` deployment. Please see
182345
the "Mellon Diagnostics" section in the Mellon User Guide for more
182345
details.
182345
182345
How to enable diagnostic logging on Red Hat systems
182345
```````````````````````````````````````````````````
182345
182345
Diagnostic logging adds overhead to the execution of
182345
``mod_auth_mellon``. The code to emit diagnostic logging must be
182345
compiled into ``mod_auth_mellon`` at build time. In addition the
182345
diagnostic log file may contain security sensitive information which
182345
should not normally be written to a log file. If you have a
182345
version of ``mod_auth_mellon`` which was built with diagnostics you
182345
can disable diagnostic logging via the ``MellonDiagnosticsEnable``
182345
configuration directive. However given human nature the potential to
182345
enable diagnostic logging while resolving a problem and then forget to
182345
disable it is not a situation that should exist by default. Therefore
182345
given the overhead consideration and the desire to avoid enabling
182345
diagnostic logging by mistake the Red Hat ``mod_auth_mellon`` RPM's
182345
ship with two versions of the ``mod_auth_mellon`` Apache module.
182345
182345
1. The ``mod_auth_mellon`` RPM contains the normal Apache module
182345
   ``/usr/lib*/httpd/modules/mod_auth_mellon.so`` 
182345
182345
2. The ``mod_auth_mellon-diagnostics`` RPM contains the diagnostic
182345
   version of the Apache module
182345
   ``/usr/lib*/httpd/modules/mod_auth_mellon-diagnostics.so``
182345
182345
Because each version of the module has a different name both the
182345
normal and diagnostic modules can be installed simultaneously without
182345
conflict. But Apache will only load one of the two modules. Which
182345
module is loaded is controlled by the
182345
``/etc/httpd/conf.modules.d/10-auth_mellon.conf`` config file which
182345
has a line in it which looks like this::
182345
182345
    LoadModule auth_mellon_module modules/mod_auth_mellon.so
182345
182345
To load the diagnostics version of the module you need to change the
182345
module name so it looks like this::
182345
182345
    LoadModule auth_mellon_module modules/mod_auth_mellon-diagnostics.so
182345
182345
**Don't forget to change it back again when you're done debugging.**
182345
182345
You'll also need to enable the collection of diagnostic information,
182345
do this by adding this directive at the top of your Mellon conf.d
182345
config file or inside your virtual host config (diagnostics are per
182345
server instance)::
182345
182345
    MellonDiagnosticsEnable On
182345
182345
.. NOTE::
182345
   Some versions of the Mellon User Guide have a typo in the name of
182345
   this directive, it incorrectly uses ``MellonDiagnosticEnable``
182345
   instead of ``MellonDiagnosticsEnable``. The difference is
182345
   Diagnostics is plural.
182345
182345
The Apache ``error_log`` will contain a message indicating how it
182345
processed the ``MellonDiagnosticsEnable`` directive. If you loaded the
182345
standard module without diagnostics you'll see a message like this::
182345
182345
    MellonDiagnosticsEnable has no effect because Mellon was not
182345
    compiled with diagnostics enabled, use
182345
    ./configure --enable-diagnostics at build time to turn this
182345
    feature on.
182345
182345
If you've loaded the diagnostics version of the module you'll see a
182345
message in the ``error_log`` like this::
182345
182345
    mellon diagnostics enabled for virtual server *:443
182345
    (/etc/httpd/conf.d/my_server.conf:7)
182345
    ServerName=https://my_server.example.com:443, diagnostics
182345
    filename=logs/mellon_diagnostics