Class StructuredLogHandler (3.11.0)

StructuredLogHandler(
    *, labels=None, stream=None, project_id=None, json_encoder_cls=None, **kwargs
)

Handler to format logs into the Cloud Logging structured log format, and write them to standard output

Methods

StructuredLogHandler

StructuredLogHandler(
    *, labels=None, stream=None, project_id=None, json_encoder_cls=None, **kwargs
)
Parameters
Name Description
labels Optional[dict]

Additional labels to attach to logs.

stream Optional[IO]

Stream to be used by the handler.

project Optional[str]

Project Id associated with the logs.

json_encoder_cls Optional[Type[JSONEncoder]]

Custom JSON encoder. Defaults to json.JSONEncoder

emit

emit(record)

Emit a record.

If a formatter is specified, it is used to format the record. The record is then written to the stream with a trailing newline. If exception information is present, it is formatted using traceback.print_exception and appended to the stream. If the stream has an 'encoding' attribute, it is used to determine how to do the output to the stream.

format

format(record)

Format the message into structured log JSON.

Parameter
Name Description
record logging.LogRecord

The log record.

Returns
Type Description
str A JSON string formatted for GCP structured logging.