# Stackdriver Logging API . projects . metrics

## Instance Methods

Creates a logs-based metric.

Deletes a logs-based metric.

Gets a logs-based metric.

Lists logs-based metrics.

Retrieves the next page of results.

Creates or updates a logs-based metric.

### Method Details

`create(parent=None, body, x__xgafv=None)`

    Creates a logs-based metric.

    Args:
      parent: string, The resource name of the project in which to create the metric.
    Example: `"projects/my-project-id"`.

    The new metric must be provided in the request. (required)
      body: object, The request body. (required)
        The object takes the form of:

    { # Describes a logs-based metric.  The value of the metric is the
          # number of log entries that match a logs filter.
        "filter": "A String", # Required. An [advanced logs filter](/logging/docs/view/advanced_filters).
            # Example: `"resource.type=gae_app AND severity>=ERROR"`.
        "version": "A String", # Output only. The API version that created or updated this metric.
            # The version also dictates the syntax of the filter expression. When a value
            # for this field is missing, the default value of V2 should be assumed.
        "description": "A String", # Optional. A description of this metric, which is used in documentation.
        "name": "A String", # Required. The client-assigned metric identifier. Example:
            # `"severe_errors"`.  Metric identifiers are limited to 100
            # characters and can include only the following characters: `A-Z`,
            # `a-z`, `0-9`, and the special characters `_-.,+!*',()%/`.  The
            # forward-slash character (`/`) denotes a hierarchy of name pieces,
            # and it cannot be the first character of the name.  The '%' character
            # is used to URL encode unsafe and reserved characters and must be
            # followed by two hexadecimal digits according to RFC 1738.
      }

      x__xgafv: string, V1 error format.
        Allowed values
          1 - v1 error format
          2 - v2 error format

    Returns:
      An object of the form:

        { # Describes a logs-based metric.  The value of the metric is the
            # number of log entries that match a logs filter.
          "filter": "A String", # Required. An [advanced logs filter](/logging/docs/view/advanced_filters).
              # Example: `"resource.type=gae_app AND severity>=ERROR"`.
          "version": "A String", # Output only. The API version that created or updated this metric.
              # The version also dictates the syntax of the filter expression. When a value
              # for this field is missing, the default value of V2 should be assumed.
          "description": "A String", # Optional. A description of this metric, which is used in documentation.
          "name": "A String", # Required. The client-assigned metric identifier. Example:
              # `"severe_errors"`.  Metric identifiers are limited to 100
              # characters and can include only the following characters: `A-Z`,
              # `a-z`, `0-9`, and the special characters `_-.,+!*',()%/`.  The
              # forward-slash character (`/`) denotes a hierarchy of name pieces,
              # and it cannot be the first character of the name.  The '%' character
              # is used to URL encode unsafe and reserved characters and must be
              # followed by two hexadecimal digits according to RFC 1738.
        }

`delete(metricName=None, x__xgafv=None)`

    Deletes a logs-based metric.

    Args:
      metricName: string, The resource name of the metric to delete.
    Example: `"projects/my-project-id/metrics/my-metric-id"`. (required)
      x__xgafv: string, V1 error format.
        Allowed values
          1 - v1 error format
          2 - v2 error format

    Returns:
      An object of the form:

        { # A generic empty message that you can re-use to avoid defining duplicated
          # empty messages in your APIs. A typical example is to use it as the request
          # or the response type of an API method. For instance:
          #
          #     service Foo {
          #       rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty);
          #     }
          #
          # The JSON representation for `Empty` is empty JSON object `{}`.
      }

`get(metricName=None, x__xgafv=None)`

    Gets a logs-based metric.

    Args:
      metricName: string, The resource name of the desired metric.
    Example: `"projects/my-project-id/metrics/my-metric-id"`. (required)
      x__xgafv: string, V1 error format.
        Allowed values
          1 - v1 error format
          2 - v2 error format

    Returns:
      An object of the form:

        { # Describes a logs-based metric.  The value of the metric is the
            # number of log entries that match a logs filter.
          "filter": "A String", # Required. An [advanced logs filter](/logging/docs/view/advanced_filters).
              # Example: `"resource.type=gae_app AND severity>=ERROR"`.
          "version": "A String", # Output only. The API version that created or updated this metric.
              # The version also dictates the syntax of the filter expression. When a value
              # for this field is missing, the default value of V2 should be assumed.
          "description": "A String", # Optional. A description of this metric, which is used in documentation.
          "name": "A String", # Required. The client-assigned metric identifier. Example:
              # `"severe_errors"`.  Metric identifiers are limited to 100
              # characters and can include only the following characters: `A-Z`,
              # `a-z`, `0-9`, and the special characters `_-.,+!*',()%/`.  The
              # forward-slash character (`/`) denotes a hierarchy of name pieces,
              # and it cannot be the first character of the name.  The '%' character
              # is used to URL encode unsafe and reserved characters and must be
              # followed by two hexadecimal digits according to RFC 1738.
        }

`list(parent=None, pageToken=None, x__xgafv=None, pageSize=None)`

    Lists logs-based metrics.

    Args:
      parent: string, Required. The resource name containing the metrics.
    Example: `"projects/my-project-id"`. (required)
      pageToken: string, Optional. If present, then retrieve the next batch of results from the
    preceding call to this method.  `pageToken` must be the value of
    `nextPageToken` from the previous response.  The values of other method
    parameters should be identical to those in the previous call.
      x__xgafv: string, V1 error format.
        Allowed values
          1 - v1 error format
          2 - v2 error format
      pageSize: integer, Optional. The maximum number of results to return from this request.
    Non-positive values are ignored.  The presence of `nextPageToken` in the
    response indicates that more results might be available.

    Returns:
      An object of the form:

        { # Result returned from ListLogMetrics.
        "metrics": [ # A list of logs-based metrics.
          { # Describes a logs-based metric.  The value of the metric is the
                # number of log entries that match a logs filter.
              "filter": "A String", # Required. An [advanced logs filter](/logging/docs/view/advanced_filters).
                  # Example: `"resource.type=gae_app AND severity>=ERROR"`.
              "version": "A String", # Output only. The API version that created or updated this metric.
                  # The version also dictates the syntax of the filter expression. When a value
                  # for this field is missing, the default value of V2 should be assumed.
              "description": "A String", # Optional. A description of this metric, which is used in documentation.
              "name": "A String", # Required. The client-assigned metric identifier. Example:
                  # `"severe_errors"`.  Metric identifiers are limited to 100
                  # characters and can include only the following characters: `A-Z`,
                  # `a-z`, `0-9`, and the special characters `_-.,+!*',()%/`.  The
                  # forward-slash character (`/`) denotes a hierarchy of name pieces,
                  # and it cannot be the first character of the name.  The '%' character
                  # is used to URL encode unsafe and reserved characters and must be
                  # followed by two hexadecimal digits according to RFC 1738.
            },
        ],
        "nextPageToken": "A String", # If there might be more results than appear in this response, then
            # `nextPageToken` is included.  To get the next set of results, call this
            # method again using the value of `nextPageToken` as `pageToken`.
      }

`list_next(previous_request, previous_response)`

    Retrieves the next page of results.

    Args:
      previous_request: The request for the previous page. (required)
      previous_response: The response from the request for the previous page. (required)

    Returns:
      A request object that you can call 'execute()' on to request the next
      page. Returns None if there are no more items in the collection.

`update(metricName=None, body, x__xgafv=None)`

    Creates or updates a logs-based metric.

    Args:
      metricName: string, The resource name of the metric to update.
    Example: `"projects/my-project-id/metrics/my-metric-id"`.

    The updated metric must be provided in the request and have the
    same identifier that is specified in `metricName`.
    If the metric does not exist, it is created. (required)
      body: object, The request body. (required)
        The object takes the form of:

    { # Describes a logs-based metric.  The value of the metric is the
          # number of log entries that match a logs filter.
        "filter": "A String", # Required. An [advanced logs filter](/logging/docs/view/advanced_filters).
            # Example: `"resource.type=gae_app AND severity>=ERROR"`.
        "version": "A String", # Output only. The API version that created or updated this metric.
            # The version also dictates the syntax of the filter expression. When a value
            # for this field is missing, the default value of V2 should be assumed.
        "description": "A String", # Optional. A description of this metric, which is used in documentation.
        "name": "A String", # Required. The client-assigned metric identifier. Example:
            # `"severe_errors"`.  Metric identifiers are limited to 100
            # characters and can include only the following characters: `A-Z`,
            # `a-z`, `0-9`, and the special characters `_-.,+!*',()%/`.  The
            # forward-slash character (`/`) denotes a hierarchy of name pieces,
            # and it cannot be the first character of the name.  The '%' character
            # is used to URL encode unsafe and reserved characters and must be
            # followed by two hexadecimal digits according to RFC 1738.
      }

      x__xgafv: string, V1 error format.
        Allowed values
          1 - v1 error format
          2 - v2 error format

    Returns:
      An object of the form:

        { # Describes a logs-based metric.  The value of the metric is the
            # number of log entries that match a logs filter.
          "filter": "A String", # Required. An [advanced logs filter](/logging/docs/view/advanced_filters).
              # Example: `"resource.type=gae_app AND severity>=ERROR"`.
          "version": "A String", # Output only. The API version that created or updated this metric.
              # The version also dictates the syntax of the filter expression. When a value
              # for this field is missing, the default value of V2 should be assumed.
          "description": "A String", # Optional. A description of this metric, which is used in documentation.
          "name": "A String", # Required. The client-assigned metric identifier. Example:
              # `"severe_errors"`.  Metric identifiers are limited to 100
              # characters and can include only the following characters: `A-Z`,
              # `a-z`, `0-9`, and the special characters `_-.,+!*',()%/`.  The
              # forward-slash character (`/`) denotes a hierarchy of name pieces,
              # and it cannot be the first character of the name.  The '%' character
              # is used to URL encode unsafe and reserved characters and must be
              # followed by two hexadecimal digits according to RFC 1738.
        }