# 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:
    "projects/[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 in a given time interval.
        "filter": "A String", # Required. An advanced logs filter which is used to match log entries. Example:
            # "resource.type=gae_app AND severity>=ERROR"
            # The maximum length of the filter is 20000 characters.
        "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. Examples: "error_count", "nginx/requests".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 metric identifier in this field must not be URL-encoded (https://en.wikipedia.org/wiki/Percent-encoding). However, when the metric identifier appears as the [METRIC_ID] part of a metric_name API parameter, then the metric identifier must be URL-encoded. Example: "projects/my-project/metrics/nginx%2Frequests".
      }

      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 in a given time interval.
          "filter": "A String", # Required. An advanced logs filter which is used to match log entries. Example:
              # "resource.type=gae_app AND severity>=ERROR"
              # The maximum length of the filter is 20000 characters.
          "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. Examples: "error_count", "nginx/requests".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 metric identifier in this field must not be URL-encoded (https://en.wikipedia.org/wiki/Percent-encoding). However, when the metric identifier appears as the [METRIC_ID] part of a metric_name API parameter, then the metric identifier must be URL-encoded. Example: "projects/my-project/metrics/nginx%2Frequests".
        }

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

    Deletes a logs-based metric.

    Args:
      metricName: string, The resource name of the metric to delete:
    "projects/[PROJECT_ID]/metrics/[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:
    "projects/[PROJECT_ID]/metrics/[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 in a given time interval.
          "filter": "A String", # Required. An advanced logs filter which is used to match log entries. Example:
              # "resource.type=gae_app AND severity>=ERROR"
              # The maximum length of the filter is 20000 characters.
          "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. Examples: "error_count", "nginx/requests".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 metric identifier in this field must not be URL-encoded (https://en.wikipedia.org/wiki/Percent-encoding). However, when the metric identifier appears as the [METRIC_ID] part of a metric_name API parameter, then the metric identifier must be URL-encoded. Example: "projects/my-project/metrics/nginx%2Frequests".
        }

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

    Lists logs-based metrics.

    Args:
      parent: string, Required. The name of the project containing the metrics:
    "projects/[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 in a given time interval.
              "filter": "A String", # Required. An advanced logs filter which is used to match log entries. Example:
                  # "resource.type=gae_app AND severity>=ERROR"
                  # The maximum length of the filter is 20000 characters.
              "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. Examples: "error_count", "nginx/requests".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 metric identifier in this field must not be URL-encoded (https://en.wikipedia.org/wiki/Percent-encoding). However, when the metric identifier appears as the [METRIC_ID] part of a metric_name API parameter, then the metric identifier must be URL-encoded. Example: "projects/my-project/metrics/nginx%2Frequests".
            },
        ],
        "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:
    "projects/[PROJECT_ID]/metrics/[METRIC_ID]"
    The updated metric must be provided in the request and it's name field must be the same as [METRIC_ID] If the metric does not exist in [PROJECT_ID], then a new metric 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 in a given time interval.
        "filter": "A String", # Required. An advanced logs filter which is used to match log entries. Example:
            # "resource.type=gae_app AND severity>=ERROR"
            # The maximum length of the filter is 20000 characters.
        "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. Examples: "error_count", "nginx/requests".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 metric identifier in this field must not be URL-encoded (https://en.wikipedia.org/wiki/Percent-encoding). However, when the metric identifier appears as the [METRIC_ID] part of a metric_name API parameter, then the metric identifier must be URL-encoded. Example: "projects/my-project/metrics/nginx%2Frequests".
      }

      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 in a given time interval.
          "filter": "A String", # Required. An advanced logs filter which is used to match log entries. Example:
              # "resource.type=gae_app AND severity>=ERROR"
              # The maximum length of the filter is 20000 characters.
          "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. Examples: "error_count", "nginx/requests".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 metric identifier in this field must not be URL-encoded (https://en.wikipedia.org/wiki/Percent-encoding). However, when the metric identifier appears as the [METRIC_ID] part of a metric_name API parameter, then the metric identifier must be URL-encoded. Example: "projects/my-project/metrics/nginx%2Frequests".
        }