As of January 1, 2020 this library no longer supports Python 2 on the latest released version. Library versions released prior to that date will continue to be available. For more information please visit Python 2 support on Google Cloud.

Logger

Define API Loggers.

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

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)[source]

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)[source]

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

Parameters
  • message (Optional[str or dict or google.protobuf.Message]) – The message. to log

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

log_empty(**kw)[source]

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)[source]

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)[source]

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)[source]

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)[source]

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)[source]

Return a batch to use as a context manager.

Parameters

client (Union[None, 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)[source]

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)[source]

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)[source]

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

Parameters
  • message (Optional[str or dict or google.protobuf.Message]) – The message. to log

  • 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_empty(*, client=None, **kw)[source]

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)[source]

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)[source]

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)[source]

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.