Previous topic

The nova.openstack.common.local Module

Next topic

The nova.openstack.common.policy Module

This Page

Psst... hey. You're reading the latest content, but it might be out of sync with code. You can read Nova 2011.2 docs or all OpenStack docs too.

The nova.openstack.common.log Module

Openstack logging handler.

This module adds to logging functionality by adding the option to specify a context object when calling the various log methods. If the context object is not specified, default formatting is used. Additionally, an instance uuid may be passed as part of the log message, which is intended to make it easier for admins to find messages related to a specific instance.

It also allows setting of formatting information through conf.

class ColorHandler(stream=None)

Bases: logging.StreamHandler

LEVEL_COLORS = {40: '\x1b[01;31m', 10: '\x1b[00;32m', 50: '\x1b[01;31m', 20: '\x1b[00;36m', 21: '\x1b[01;36m', 30: '\x1b[01;33m'}
format(record)
class ContextAdapter(logger, project_name, version_string)

Bases: logging.LoggerAdapter

audit(msg, *args, **kwargs)
process(msg, kwargs)
warn(msg, *args, **kwargs)

Delegate a warning call to the underlying logger, after adding contextual information from this adapter instance.

class JSONFormatter(fmt=None, datefmt=None)

Bases: logging.Formatter

format(record)
formatException(ei, strip_newlines=True)
class LegacyFormatter(fmt=None, datefmt=None)

Bases: logging.Formatter

A context.RequestContext aware formatter configured through flags.

The flags used to set format strings are: logging_context_format_string and logging_default_format_string. You can also specify logging_debug_format_suffix to append extra formatting if the log level is debug.

For information about what variables are available for the formatter see: http://docs.python.org/library/logging.html#formatter

format(record)

Uses contextstring if request_id is set, otherwise default.

formatException(exc_info, record=None)

Format exception output with CONF.logging_exception_prefix.

class PublishErrorsHandler(level=0)

Bases: logging.Handler

emit(record)
class WritableLogger(logger, level=20)

Bases: object

A thin wrapper that responds to write and logs.

write(msg)
getLogger(name='unknown', version='unknown')
handle_exception(type, value, tb)
setup(product_name)

Setup logging.