tornado.log
— Logging support¶
Logging support for Tornado.
Tornado uses three logger streams:
tornado.access
: Per-request logging for Tornado’s HTTP servers (and potentially other servers in the future)tornado.application
: Logging of errors from application code (i.e. uncaught exceptions from callbacks)tornado.general
: General-purpose logging, including any errors or warnings from Tornado itself.
These streams may be configured independently using the standard library’s
logging
module. For example, you may wish to send tornado.access
logs
to a separate file for analysis.
- class tornado.log.LogFormatter(fmt: str = '%(color)s[%(levelname)1.1s %(asctime)s %(module)s:%(lineno)d]%(end_color)s %(message)s', datefmt: str = '%y%m%d %H:%M:%S', style: str = '%', color: bool = True, colors: Dict[int, int] = {10: 4, 20: 2, 30: 3, 40: 1, 50: 5})[source]¶
Log formatter used in Tornado.
Key features of this formatter are:
Color support when logging to a terminal that supports it.
Timestamps on every log line.
Robust against str/bytes encoding problems.
This formatter is enabled automatically by
tornado.options.parse_command_line
ortornado.options.parse_config_file
(unless--logging=none
is used).Color support on Windows versions that do not support ANSI color codes is enabled by use of the colorama library. Applications that wish to use this must first initialize colorama with a call to
colorama.init
. See the colorama documentation for details.Changed in version 4.5: Added support for
colorama
. Changed the constructor signature to be compatible withlogging.config.dictConfig
.- Parameters:
color (bool) – Enables color support.
fmt (str) – Log message format. It will be applied to the attributes dict of log records. The text between
%(color)s
and%(end_color)s
will be colored depending on the level if color support is on.colors (dict) – color mappings from logging level to terminal color code
datefmt (str) – Datetime format. Used for formatting
(asctime)
placeholder inprefix_fmt
.
Changed in version 3.2: Added
fmt
anddatefmt
arguments.
- tornado.log.enable_pretty_logging(options: Any = None, logger: Logger | None = None) None [source]¶
Turns on formatted logging output as configured.
This is called automatically by
tornado.options.parse_command_line
andtornado.options.parse_config_file
.
- tornado.log.define_logging_options(options: Any = None) None [source]¶
Add logging-related flags to
options
.These options are present automatically on the default options instance; this method is only necessary if you have created your own
OptionParser
.Added in version 4.2: This function existed in prior versions but was broken and undocumented until 4.2.