Blame SOURCES/README.redhat.rst

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