Structured Log Handler

Logging handler for printing formatted structured logs to standard output.

class google.cloud.logging_v2.handlers.structured_log.StructuredLogHandler(*, labels=None, stream=None, project_id=None, json_encoder_cls=None)

Bases:logging.StreamHandler

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

  • Parameters

    • 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(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. Ifexception information is present, it is formatted usingtraceback.print_exception and appended to the stream. If the streamhas an ‘encoding’ attribute, it is used to determine how to do theoutput to the stream.

format(record)

Format the message into structured log JSON.:param record: The log record.:type record: logging.LogRecord

  • Returns

    A JSON string formatted for GCP structured logging.

  • Return type

    str

Except as otherwise noted, the content of this page is licensed under theCreative Commons Attribution 4.0 License, and code samples are licensed under theApache 2.0 License. For details, see theGoogle Developers Site Policies. Java is a registered trademark of Oracle and/or its affiliates.

Last updated 2025-10-30 UTC.