Initial commit
This commit is contained in:
251
node_modules/google-proto-files/google/logging/v2/logging_metrics.proto
generated
vendored
Normal file
251
node_modules/google-proto-files/google/logging/v2/logging_metrics.proto
generated
vendored
Normal file
@@ -0,0 +1,251 @@
|
||||
// Copyright 2017 Google Inc.
|
||||
//
|
||||
// Licensed under the Apache License, Version 2.0 (the "License");
|
||||
// you may not use this file except in compliance with the License.
|
||||
// You may obtain a copy of the License at
|
||||
//
|
||||
// http://www.apache.org/licenses/LICENSE-2.0
|
||||
//
|
||||
// Unless required by applicable law or agreed to in writing, software
|
||||
// distributed under the License is distributed on an "AS IS" BASIS,
|
||||
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
// See the License for the specific language governing permissions and
|
||||
// limitations under the License.
|
||||
|
||||
syntax = "proto3";
|
||||
|
||||
package google.logging.v2;
|
||||
|
||||
import "google/api/annotations.proto";
|
||||
import "google/api/distribution.proto";
|
||||
import "google/api/metric.proto";
|
||||
import "google/protobuf/empty.proto";
|
||||
import "google/protobuf/field_mask.proto";
|
||||
|
||||
option cc_enable_arenas = true;
|
||||
option csharp_namespace = "Google.Cloud.Logging.V2";
|
||||
option go_package = "google.golang.org/genproto/googleapis/logging/v2;logging";
|
||||
option java_multiple_files = true;
|
||||
option java_outer_classname = "LoggingMetricsProto";
|
||||
option java_package = "com.google.logging.v2";
|
||||
option php_namespace = "Google\\Cloud\\Logging\\V2";
|
||||
|
||||
|
||||
// Service for configuring logs-based metrics.
|
||||
service MetricsServiceV2 {
|
||||
// Lists logs-based metrics.
|
||||
rpc ListLogMetrics(ListLogMetricsRequest) returns (ListLogMetricsResponse) {
|
||||
option (google.api.http) = { get: "/v2/{parent=projects/*}/metrics" };
|
||||
}
|
||||
|
||||
// Gets a logs-based metric.
|
||||
rpc GetLogMetric(GetLogMetricRequest) returns (LogMetric) {
|
||||
option (google.api.http) = { get: "/v2/{metric_name=projects/*/metrics/*}" };
|
||||
}
|
||||
|
||||
// Creates a logs-based metric.
|
||||
rpc CreateLogMetric(CreateLogMetricRequest) returns (LogMetric) {
|
||||
option (google.api.http) = { post: "/v2/{parent=projects/*}/metrics" body: "metric" };
|
||||
}
|
||||
|
||||
// Creates or updates a logs-based metric.
|
||||
rpc UpdateLogMetric(UpdateLogMetricRequest) returns (LogMetric) {
|
||||
option (google.api.http) = { put: "/v2/{metric_name=projects/*/metrics/*}" body: "metric" };
|
||||
}
|
||||
|
||||
// Deletes a logs-based metric.
|
||||
rpc DeleteLogMetric(DeleteLogMetricRequest) returns (google.protobuf.Empty) {
|
||||
option (google.api.http) = { delete: "/v2/{metric_name=projects/*/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.
|
||||
//
|
||||
// Logs-based metric can also be used to extract values from logs and create a
|
||||
// a distribution of the values. The distribution records the statistics of the
|
||||
// extracted values along with an optional histogram of the values as specified
|
||||
// by the bucket options.
|
||||
message LogMetric {
|
||||
// Stackdriver Logging API version.
|
||||
enum ApiVersion {
|
||||
// Stackdriver Logging API v2.
|
||||
V2 = 0;
|
||||
|
||||
// Stackdriver Logging API v1.
|
||||
V1 = 1;
|
||||
}
|
||||
|
||||
// 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"`.
|
||||
string name = 1;
|
||||
|
||||
// Optional. A description of this metric, which is used in documentation.
|
||||
string description = 2;
|
||||
|
||||
// Required. An [advanced logs filter](/logging/docs/view/advanced_filters)
|
||||
// which is used to match log entries.
|
||||
// Example:
|
||||
//
|
||||
// "resource.type=gae_app AND severity>=ERROR"
|
||||
//
|
||||
// The maximum length of the filter is 20000 characters.
|
||||
string filter = 3;
|
||||
|
||||
// Optional. The metric descriptor associated with the logs-based metric.
|
||||
// If unspecified, it uses a default metric descriptor with a DELTA metric
|
||||
// kind, INT64 value type, with no labels and a unit of "1". Such a metric
|
||||
// counts the number of log entries matching the `filter` expression.
|
||||
//
|
||||
// The `name`, `type`, and `description` fields in the `metric_descriptor`
|
||||
// are output only, and is constructed using the `name` and `description`
|
||||
// field in the LogMetric.
|
||||
//
|
||||
// To create a logs-based metric that records a distribution of log values, a
|
||||
// DELTA metric kind with a DISTRIBUTION value type must be used along with
|
||||
// a `value_extractor` expression in the LogMetric.
|
||||
//
|
||||
// Each label in the metric descriptor must have a matching label
|
||||
// name as the key and an extractor expression as the value in the
|
||||
// `label_extractors` map.
|
||||
//
|
||||
// The `metric_kind` and `value_type` fields in the `metric_descriptor` cannot
|
||||
// be updated once initially configured. New labels can be added in the
|
||||
// `metric_descriptor`, but existing labels cannot be modified except for
|
||||
// their description.
|
||||
google.api.MetricDescriptor metric_descriptor = 5;
|
||||
|
||||
// Optional. A `value_extractor` is required when using a distribution
|
||||
// logs-based metric to extract the values to record from a log entry.
|
||||
// Two functions are supported for value extraction: `EXTRACT(field)` or
|
||||
// `REGEXP_EXTRACT(field, regex)`. The argument are:
|
||||
// 1. field: The name of the log entry field from which the value is to be
|
||||
// extracted.
|
||||
// 2. regex: A regular expression using the Google RE2 syntax
|
||||
// (https://github.com/google/re2/wiki/Syntax) with a single capture
|
||||
// group to extract data from the specified log entry field. The value
|
||||
// of the field is converted to a string before applying the regex.
|
||||
// It is an error to specify a regex that does not include exactly one
|
||||
// capture group.
|
||||
//
|
||||
// The result of the extraction must be convertible to a double type, as the
|
||||
// distribution always records double values. If either the extraction or
|
||||
// the conversion to double fails, then those values are not recorded in the
|
||||
// distribution.
|
||||
//
|
||||
// Example: `REGEXP_EXTRACT(jsonPayload.request, ".*quantity=(\d+).*")`
|
||||
string value_extractor = 6;
|
||||
|
||||
// Optional. A map from a label key string to an extractor expression which is
|
||||
// used to extract data from a log entry field and assign as the label value.
|
||||
// Each label key specified in the LabelDescriptor must have an associated
|
||||
// extractor expression in this map. The syntax of the extractor expression
|
||||
// is the same as for the `value_extractor` field.
|
||||
//
|
||||
// The extracted value is converted to the type defined in the label
|
||||
// descriptor. If the either the extraction or the type conversion fails,
|
||||
// the label will have a default value. The default value for a string
|
||||
// label is an empty string, for an integer label its 0, and for a boolean
|
||||
// label its `false`.
|
||||
//
|
||||
// Note that there are upper bounds on the maximum number of labels and the
|
||||
// number of active time series that are allowed in a project.
|
||||
map<string, string> label_extractors = 7;
|
||||
|
||||
// Optional. The `bucket_options` are required when the logs-based metric is
|
||||
// using a DISTRIBUTION value type and it describes the bucket boundaries
|
||||
// used to create a histogram of the extracted values.
|
||||
google.api.Distribution.BucketOptions bucket_options = 8;
|
||||
|
||||
// Deprecated. The API version that created or updated this metric.
|
||||
// The v2 format is used by default and cannot be changed.
|
||||
ApiVersion version = 4;
|
||||
}
|
||||
|
||||
// The parameters to ListLogMetrics.
|
||||
message ListLogMetricsRequest {
|
||||
// Required. The name of the project containing the metrics:
|
||||
//
|
||||
// "projects/[PROJECT_ID]"
|
||||
string parent = 1;
|
||||
|
||||
// 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.
|
||||
string page_token = 2;
|
||||
|
||||
// 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.
|
||||
int32 page_size = 3;
|
||||
}
|
||||
|
||||
// Result returned from ListLogMetrics.
|
||||
message ListLogMetricsResponse {
|
||||
// A list of logs-based metrics.
|
||||
repeated LogMetric metrics = 1;
|
||||
|
||||
// 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`.
|
||||
string next_page_token = 2;
|
||||
}
|
||||
|
||||
// The parameters to GetLogMetric.
|
||||
message GetLogMetricRequest {
|
||||
// The resource name of the desired metric:
|
||||
//
|
||||
// "projects/[PROJECT_ID]/metrics/[METRIC_ID]"
|
||||
string metric_name = 1;
|
||||
}
|
||||
|
||||
// The parameters to CreateLogMetric.
|
||||
message CreateLogMetricRequest {
|
||||
// The resource name of the project in which to create the metric:
|
||||
//
|
||||
// "projects/[PROJECT_ID]"
|
||||
//
|
||||
// The new metric must be provided in the request.
|
||||
string parent = 1;
|
||||
|
||||
// The new logs-based metric, which must not have an identifier that
|
||||
// already exists.
|
||||
LogMetric metric = 2;
|
||||
}
|
||||
|
||||
// The parameters to UpdateLogMetric.
|
||||
message UpdateLogMetricRequest {
|
||||
// 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.
|
||||
string metric_name = 1;
|
||||
|
||||
// The updated metric.
|
||||
LogMetric metric = 2;
|
||||
}
|
||||
|
||||
// The parameters to DeleteLogMetric.
|
||||
message DeleteLogMetricRequest {
|
||||
// The resource name of the metric to delete:
|
||||
//
|
||||
// "projects/[PROJECT_ID]/metrics/[METRIC_ID]"
|
||||
string metric_name = 1;
|
||||
}
|
||||
Reference in New Issue
Block a user