Issue #21608: Updated HTTPHandler documentation.

This commit is contained in:
Vinay Sajip 2014-05-30 18:59:27 +01:00
parent aecfa9ead9
commit c673a9ab87
1 changed files with 18 additions and 1 deletions

View File

@ -850,10 +850,27 @@ supports sending logging messages to a Web server, using either ``GET`` or
credentials, you should also specify secure=True so that your userid and
password are not passed in cleartext across the wire.
.. method:: mapLogRecord(record)
Provides a dictionary, based on ``record``, which is to be URL-encoded
and sent to the web server. The default implementation just returns
``record.__dict__``. This method can be overridden if e.g. only a
subset of :class:`~logging.LogRecord` is to be sent to the web server, or
if more specific customization of what's sent to the server is required.
.. method:: emit(record)
Sends the record to the Web server as a percent-encoded dictionary.
Sends the record to the Web server as an URL-encoded dictionary. The
:meth:`mapLogRecord` method is used to convert the record to the
dictionary to be sent.
.. note:: Since preparing a record for sending it to a Web server is not
the same as a generic formatting operation, using
:meth:`~logging.Handler.setFormatter` to specify a
:class:`~logging.Formatter` for a :class:`HTTPHandler` has no effect.
Instead of calling :meth:`~logging.Handler.format`, this handler calls
:meth:`mapLogRecord` and then :func:`urllib.parse.urlencode` to encode the
dictionary in a form suitable for sending to a Web server.
.. _queue-handler: