Blame SOURCES/README.redhat.rst

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