keystoneauth/doc
Monty Taylor 56b2c89c39
Split request logging into four different loggers
Python logging is pretty amazingly flexible, and allows us to emit
to arbitrary logging domains so that a consumer can direct log output
with specificity.

Turning on HTTP debug logging currently produces an avalanche of output,
when sometimes just seeing that the requests were made and responded to
is perfectly fine.

Split the loggers used into four - one for request ids, one for request
commands, one for response headers and one for response body content.
Make them subloggers of keystoneauth.session so that if a user does nothing,
their existing logging config will be unchanged.

If someone passes in a logger, behave as before logging all things to
the provided logger.

While we're at it, document this in the using-sessions document, so that
people know that the loggers exist and what they do.

NOTE:
The tox (>=1.7.0) by default sets a random python hash seed which
causes ordering of dicts and sets to be different between tests runs.
Disabled the random python hash seed by setting PYTHONHASHSEED=0 to
fix the random failure of below test:

keystoneauth1.tests.unit.test_session.SessionAuthTests.
test_split_loggers

The PYTHONHASHSEED=0 is removed in the followup patch so that we can
separate the tracking down of ordering issues in tests from this patch.

Change-Id: Ide7dac8adf5c76c9019c35867cda632aff39770f
2018-01-31 11:51:59 -06:00
..
ext Add a full listing of all auth plugins and there options 2017-01-10 14:40:28 +00:00
source Split request logging into four different loggers 2018-01-31 11:51:59 -06:00
.gitignore Move docs to doc. 2012-06-11 13:33:02 -07:00
Makefile Change keystoneclient to keystoneauth in docs 2015-04-30 18:23:47 +10:00
requirements.txt Updated from global requirements 2017-12-21 00:21:57 +00:00