Logger

Define API Loggers.

class google.cloud.logging_v2.logger.Batch(logger, client, *, resource=None)

Bases: object

Context manager: collect entries to log via a single API call.

Helper returned by Logger.batch()

  • Parameters

    • logger (logging_v2.logger.Logger) – the logger to which entries will be logged.

    • client (Client) – The client to use.

    • resource (Optional[Resource]) – Monitored resource of the batch, defaults to None, which requires that every entry should have a resource specified. Since the methods used to write entries default the entry’s resource to the global resource type, this parameter is only required if explicitly set to None. If no entries’ resource are set to None, this parameter will be ignored on the server.

commit(*, client=None, partial_success=True)

Send saved log entries as a single API call.

  • Parameters

    • client (Optional[Client]) – The client to use. If not passed, falls back to the client stored on the current batch.

    • partial_success (Optional[bool]) – Whether a batch’s valid entries should be written even if some other entry failed due to a permanent error such as INVALID_ARGUMENT or PERMISSION_DENIED.

log(message=None, **kw)

Add an arbitrary message to be logged during commit(). Type will be inferred based on the input message.

log_empty(**kw)

Add a entry without payload to be logged during commit().

  • Parameters

    kw (Optional[dict]) – Additional keyword arguments for the entry. See LogEntry.

log_proto(message, **kw)

Add a protobuf entry to be logged during commit().

  • Parameters

    • message (google.protobuf.Message) – The protobuf entry.

    • kw (Optional[dict]) – Additional keyword arguments for the entry. See LogEntry.

log_struct(info, **kw)

Add a struct entry to be logged during commit().

  • Parameters

    • info (dict) – The struct entry,

    • kw (Optional[dict]) – Additional keyword arguments for the entry. See LogEntry.

log_text(text, **kw)

Add a text entry to be logged during commit().

  • Parameters

    • text (str) – the text entry

    • kw (Optional[dict]) – Additional keyword arguments for the entry. See LogEntry.

class google.cloud.logging_v2.logger.Logger(name, client, *, labels=None, resource=None)

Bases: object

Loggers represent named targets for log entries.

See https://cloud.google.com/logging/docs/reference/v2/rest/v2/projects.logs

  • Parameters

    • name (str) – The name of the logger.

    • client (Client) – A client which holds credentials and project configuration for the logger (which requires a project).

    • resource (Optional[Resource]) – a monitored resource object representing the resource the code was run on. If not given, will be inferred from the environment.

    • labels (Optional[dict]) – Mapping of default labels for entries written via this logger.

batch(*, client=None)

Return a batch to use as a context manager.

  • Parameters

    client (Union[None, *[Client](client.md#google.cloud.logging_v2.client.Client)]*) – The client to use. If not passed, falls back to the client stored on the current sink.

  • Returns

    A batch to use as a context manager.

  • Return type

    Batch

property client()

Clent bound to the logger.

delete(logger_name=None, *, client=None)

Delete all entries in a logger via a DELETE request

See https://cloud.google.com/logging/docs/reference/v2/rest/v2/projects.logs/delete

  • Parameters

    • logger_name (Optional[str]) – The resource name of the log to delete:

      "projects/[PROJECT_ID]/logs/[LOG_ID]"
      "organizations/[ORGANIZATION_ID]/logs/[LOG_ID]"
      "billingAccounts/[BILLING_ACCOUNT_ID]/logs/[LOG_ID]"
      "folders/[FOLDER_ID]/logs/[LOG_ID]"
      

      [LOG_ID] must be URL-encoded. For example, "projects/my-project-id/logs/syslog", "organizations/1234567890/logs/cloudresourcemanager.googleapis.com%2Factivity". If not passed, defaults to the project bound to the client.

    • client (Optional[Client]) – The client to use. If not passed, falls back to the client stored on the current logger.

property full_name()

Fully-qualified name used in logging APIs

list_entries(*, resource_names=None, filter_=None, order_by=None, max_results=None, page_size=None, page_token=None)

Return a generator of log entry resources.

See https://cloud.google.com/logging/docs/reference/v2/rest/v2/entries/list

  • Parameters

    • resource_names (Optional[Sequence[str]]) – Names of one or more parent resources from which to retrieve log entries:

      "projects/[PROJECT_ID]"
      "organizations/[ORGANIZATION_ID]"
      "billingAccounts/[BILLING_ACCOUNT_ID]"
      "folders/[FOLDER_ID]"
      

      If not passed, defaults to the project bound to the client.

    • filter (Optional[str]) – a filter expression. See https://cloud.google.com/logging/docs/view/advanced_filters By default, a 24 hour filter is applied.

    • order_by (Optional[str]) – One of ASCENDING or DESCENDING.

    • max_results (Optional[int]) – Optional. The maximum number of entries to return. Non-positive values are treated as 0. If None, uses API defaults.

    • page_size (int) – number of entries to fetch in each API call. Although requests are paged internally, logs are returned by the generator one at a time. If not passed, defaults to a value set by the API.

    • page_token (str) – opaque marker for the starting “page” of entries. If not passed, the API will return the first page of entries.

  • Returns

    Generator[~logging_v2.LogEntry]

log(message=None, *, client=None, **kw)

Log an arbitrary message. Type will be inferred based on the input.

See https://cloud.google.com/logging/docs/reference/v2/rest/v2/entries/list

log_empty(*, client=None, **kw)

Log an empty message

See https://cloud.google.com/logging/docs/reference/v2/rest/v2/entries/write

  • Parameters

    • client (Optional[Client]) – The client to use. If not passed, falls back to the client stored on the current sink.

    • kw (Optional[dict]) – additional keyword arguments for the entry. See LogEntry.

log_proto(message, *, client=None, **kw)

Log a protobuf message

See https://cloud.google.com/logging/docs/reference/v2/rest/v2/entries/list

  • Parameters

    • message (google.protobuf.message.Message) – The protobuf message to be logged.

    • client (Optional[Client]) – The client to use. If not passed, falls back to the client stored on the current sink.

    • kw (Optional[dict]) – additional keyword arguments for the entry. See LogEntry.

log_struct(info, *, client=None, **kw)

Log a dictionary message

See https://cloud.google.com/logging/docs/reference/v2/rest/v2/entries/write

  • Parameters

    • info (dict) – the log entry information

    • client (Optional[Client]) – The client to use. If not passed, falls back to the client stored on the current sink.

    • kw (Optional[dict]) – additional keyword arguments for the entry. See LogEntry.

log_text(text, *, client=None, **kw)

Log a text message

See https://cloud.google.com/logging/docs/reference/v2/rest/v2/entries/write

  • Parameters

    • text (str) – the log message

    • client (Optional[Client]) – The client to use. If not passed, falls back to the client stored on the current sink.

    • kw (Optional[dict]) – additional keyword arguments for the entry. See LogEntry.

property path()

URI path for use in logging APIs

property project()

Project bound to the logger.