[3.11] gh-88287: Add BufferingFormatter documentation. (GH-96608) (GH-96675)

This commit is contained in:
Miss Islington (bot) 2022-09-08 00:30:48 -07:00 committed by GitHub
parent ffafa9b91d
commit a3d5ecba1c
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
1 changed files with 29 additions and 0 deletions

View File

@ -652,6 +652,35 @@ The useful mapping keys in a :class:`LogRecord` are given in the section on
:func:`traceback.print_stack`, but with the last newline removed) as a
string. This default implementation just returns the input value.
.. class:: BufferingFormatter(linefmt=None)
A base formatter class suitable for subclassing when you want to format a
number of records. You can pass a :class:`Formatter` instance which you want
to use to format each line (that corresponds to a single record). If not
specified, the default formatter (which just outputs the event message) is
used as the line formatter.
.. method:: formatHeader(records)
Return a header for a list of *records*. The base implementation just
returns the empty string. You will need to override this method if you
want specific behaviour, e.g. to show the count of records, a title or a
separator line.
.. method:: formatFooter(records)
Return a footer for a list of *records*. The base implementation just
returns the empty string. You will need to override this method if you
want specific behaviour, e.g. to show the count of records or a separator
line.
.. method:: format(records)
Return formatted text for a list of *records*. The base implementation
just returns the empty string if there are no records; otherwise, it
returns the concatenation of the header, each record formatted with the
line formatter, and the footer.
.. _filter:
Filter Objects