diff --git a/google/monitoring/v3/alert.proto b/google/monitoring/v3/alert.proto index a498ff07..d569c115 100644 --- a/google/monitoring/v3/alert.proto +++ b/google/monitoring/v3/alert.proto @@ -1,4 +1,4 @@ -// Copyright 2019 Google LLC. +// Copyright 2020 Google LLC // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. @@ -11,7 +11,6 @@ // 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"; @@ -34,7 +33,7 @@ option php_namespace = "Google\\Cloud\\Monitoring\\V3"; // A description of the conditions under which some aspect of your system is // considered to be "unhealthy" and the ways to notify people or services about // this state. For an overview of alert policies, see -// [Introduction to Alerting](/monitoring/alerts/). +// [Introduction to Alerting](https://cloud.google.com/monitoring/alerts/). message AlertPolicy { option (google.api.resource) = { type: "monitoring.googleapis.com/AlertPolicy" @@ -94,8 +93,8 @@ message AlertPolicy { // // The filter is similar to the one that is specified in the // [`ListTimeSeries` - // request](/monitoring/api/ref_v3/rest/v3/projects.timeSeries/list) (that - // call is useful to verify the time series that will be retrieved / + // request](https://cloud.google.com/monitoring/api/ref_v3/rest/v3/projects.timeSeries/list) + // (that call is useful to verify the time series that will be retrieved / // processed) and must specify the metric type and optionally may contain // restrictions on resource type, resource labels, and metric labels. // This field may not exceed 2048 Unicode characters in length. @@ -109,8 +108,8 @@ message AlertPolicy { // are applied in the order specified. // // This field is similar to the one in the [`ListTimeSeries` - // request](/monitoring/api/ref_v3/rest/v3/projects.timeSeries/list). It - // is advisable to use the `ListTimeSeries` method when debugging this + // request](https://cloud.google.com/monitoring/api/ref_v3/rest/v3/projects.timeSeries/list). + // It is advisable to use the `ListTimeSeries` method when debugging this // field. repeated Aggregation aggregations = 8; @@ -180,8 +179,8 @@ message AlertPolicy { // // The filter is similar to the one that is specified in the // [`ListTimeSeries` - // request](/monitoring/api/ref_v3/rest/v3/projects.timeSeries/list) (that - // call is useful to verify the time series that will be retrieved / + // request](https://cloud.google.com/monitoring/api/ref_v3/rest/v3/projects.timeSeries/list) + // (that call is useful to verify the time series that will be retrieved / // processed) and must specify the metric type and optionally may contain // restrictions on resource type, resource labels, and metric labels. // This field may not exceed 2048 Unicode characters in length. @@ -195,8 +194,8 @@ message AlertPolicy { // are applied in the order specified. // // This field is similar to the one in the [`ListTimeSeries` - // request](/monitoring/api/ref_v3/rest/v3/projects.timeSeries/list). It - // is advisable to use the `ListTimeSeries` method when debugging this + // request](https://cloud.google.com/monitoring/api/ref_v3/rest/v3/projects.timeSeries/list). + // It is advisable to use the `ListTimeSeries` method when debugging this // field. repeated Aggregation aggregations = 5; @@ -215,6 +214,20 @@ message AlertPolicy { Trigger trigger = 3; } + // A condition type that allows alert policies to be defined using the + // time series query language. + message TimeSeriesQueryLanguageCondition { + // A query in the time series query language format that generates time + // series indicating points in time that the condition should be + // considered active. + string query = 1; + + // A short explanation of what the query represents. For example: + // + // "Error ratio exceeds 15% for >5% of servers in >2 regions" + string summary = 2; + } + // Required if the condition exists. The unique resource name for this // condition. Its format is: // @@ -255,6 +268,11 @@ message AlertPolicy { // A condition that checks that a time series continues to // receive new data points. MetricAbsence condition_absent = 2; + + // A condition that uses the time series query language format to define + // alerts. + // If set, no other conditions can be present. + TimeSeriesQueryLanguageCondition condition_time_series_query_language = 14; } } diff --git a/google/monitoring/v3/alert_service.proto b/google/monitoring/v3/alert_service.proto index 8115b387..18a4b053 100644 --- a/google/monitoring/v3/alert_service.proto +++ b/google/monitoring/v3/alert_service.proto @@ -1,4 +1,4 @@ -// Copyright 2019 Google LLC. +// Copyright 2020 Google LLC // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. @@ -11,7 +11,6 @@ // 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"; diff --git a/google/monitoring/v3/common.proto b/google/monitoring/v3/common.proto index a4093b1c..f3068849 100644 --- a/google/monitoring/v3/common.proto +++ b/google/monitoring/v3/common.proto @@ -1,4 +1,4 @@ -// Copyright 2019 Google LLC. +// Copyright 2020 Google LLC // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. @@ -11,7 +11,6 @@ // 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"; @@ -104,7 +103,7 @@ message TimeInterval { // representative data can be more easily graphed and comprehended, and the // individual time series data is still available for later drilldown. For more // details, see [Aggregating Time -// Series](/monitoring/api/v3/metrics#aggregating_time_series). +// Series](https://cloud.google.com/monitoring/api/v3/metrics#aggregating_time_series). message Aggregation { // The `Aligner` specifies the operation that will be applied to the data // points in each alignment period in a time series. Except for diff --git a/google/monitoring/v3/dropped_labels.proto b/google/monitoring/v3/dropped_labels.proto index 9b943ccd..769b25b3 100644 --- a/google/monitoring/v3/dropped_labels.proto +++ b/google/monitoring/v3/dropped_labels.proto @@ -1,4 +1,4 @@ -// Copyright 2019 Google LLC. +// Copyright 2020 Google LLC // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. @@ -11,7 +11,6 @@ // 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"; diff --git a/google/monitoring/v3/group.proto b/google/monitoring/v3/group.proto index c6428071..2d31af19 100644 --- a/google/monitoring/v3/group.proto +++ b/google/monitoring/v3/group.proto @@ -1,4 +1,4 @@ -// Copyright 2019 Google LLC. +// Copyright 2020 Google LLC // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. @@ -11,7 +11,6 @@ // 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"; @@ -61,19 +60,23 @@ message Group { pattern: "*" }; - // Output only. The name of this group. The format is - // `"projects/{project_id_or_number}/groups/{group_id}"`. + // Output only. The name of this group. The format is: + // + // projects/[PROJECT_ID_OR_NUMBER]/groups/[GROUP_ID] + // // When creating a group, this field is ignored and a new name is created // consisting of the project specified in the call to `CreateGroup` - // and a unique `{group_id}` that is generated automatically. + // and a unique `[GROUP_ID]` that is generated automatically. string name = 1; // A user-assigned name for this group, used only for display purposes. string display_name = 2; - // The name of the group's parent, if it has one. - // The format is `"projects/{project_id_or_number}/groups/{group_id}"`. - // For groups with no parent, `parentName` is the empty string, `""`. + // The name of the group's parent, if it has one. The format is: + // + // projects/[PROJECT_ID_OR_NUMBER]/groups/[GROUP_ID] + // + // For groups with no parent, `parent_name` is the empty string, `""`. string parent_name = 3; // The filter used to determine which monitored resources belong to this diff --git a/google/monitoring/v3/group_service.proto b/google/monitoring/v3/group_service.proto index 39b80512..5e804040 100644 --- a/google/monitoring/v3/group_service.proto +++ b/google/monitoring/v3/group_service.proto @@ -1,4 +1,4 @@ -// Copyright 2019 Google LLC. +// Copyright 2020 Google LLC // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. @@ -11,7 +11,6 @@ // 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"; diff --git a/google/monitoring/v3/metric.proto b/google/monitoring/v3/metric.proto index 3c202ed4..fa5e7d4e 100644 --- a/google/monitoring/v3/metric.proto +++ b/google/monitoring/v3/metric.proto @@ -1,4 +1,4 @@ -// Copyright 2019 Google LLC. +// Copyright 2020 Google LLC // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. @@ -11,7 +11,6 @@ // 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"; @@ -22,6 +21,7 @@ import "google/api/label.proto"; import "google/api/metric.proto"; import "google/api/monitored_resource.proto"; import "google/monitoring/v3/common.proto"; +import "google/protobuf/duration.proto"; option csharp_namespace = "Google.Cloud.Monitoring.V3"; option go_package = "google.golang.org/genproto/googleapis/monitoring/v3;monitoring"; @@ -94,3 +94,134 @@ message TimeSeries { // must be `BOOL`, `INT64`, `DOUBLE`, or `DISTRIBUTION`. repeated Point points = 5; } + +// A descriptor for the labels and points in a timeseries. +message TimeSeriesDescriptor { + // A descriptor for the value columns in a data point. + message ValueDescriptor { + // The value key. + string key = 1; + + // The value type. + google.api.MetricDescriptor.ValueType value_type = 2; + + // The value stream kind. + google.api.MetricDescriptor.MetricKind metric_kind = 3; + } + + // Descriptors for the labels. + repeated google.api.LabelDescriptor label_descriptors = 1; + + // Descriptors for the point data value columns. + repeated ValueDescriptor point_descriptors = 5; +} + +// Represents the values of a time series associated with a +// TimeSeriesDescriptor. +message TimeSeriesData { + // A point's value columns and time interval. Each point has one or more + // point values corresponding to the entries in `point_descriptors` field in + // the TimeSeriesDescriptor associated with this object. + message PointData { + // The values that make up the point. + repeated TypedValue values = 1; + + // The time interval associated with the point. + TimeInterval time_interval = 2; + } + + // The values of the labels in the time series identifier, given in the same + // order as the `label_descriptors` field of the TimeSeriesDescriptor + // associated with this object. Each value must have a value of the type + // given in the corresponding entry of `label_descriptors`. + repeated LabelValue label_values = 1; + + // The points in the time series. + repeated PointData point_data = 2; +} + +// A label value. +message LabelValue { + // The label value can be a bool, int64, or string. + oneof value { + // A bool label value. + bool bool_value = 1; + + // An int64 label value. + int64 int64_value = 2; + + // A string label value. + string string_value = 3; + } +} + +// An error associated with a query in the time series query language format. +message QueryError { + // The location of the time series query language text that this error applies + // to. + TextLocator locator = 1; + + // The error message. + string message = 2; +} + +// A locator for text. Indicates a particular part of the text of a request or +// of an object referenced in the request. +// +// For example, suppose the request field `text` contains: +// +// text: "The quick brown fox jumps over the lazy dog." +// +// Then the locator: +// +// source: "text" +// start_position { +// line: 1 +// column: 17 +// } +// end_position { +// line: 1 +// column: 19 +// } +// +// refers to the part of the text: "fox". +message TextLocator { + // The position of a byte within the text. + message Position { + // The line, starting with 1, where the byte is positioned. + int32 line = 1; + + // The column within the line, starting with 1, where the byte is + // positioned. This is a byte index even though the text is UTF-8. + int32 column = 2; + } + + // The source of the text. The source may be a field in the request, in which + // case its format is the format of the + // google.rpc.BadRequest.FieldViolation.field field in + // https://cloud.google.com/apis/design/errors#error_details. It may also be + // be a source other than the request field (e.g. a macro definition + // referenced in the text of the query), in which case this is the name of + // the source (e.g. the macro name). + string source = 1; + + // The position of the first byte within the text. + Position start_position = 2; + + // The position of the last byte within the text. + Position end_position = 3; + + // If `source`, `start_position`, and `end_position` describe a call on + // some object (e.g. a macro in the time series query language text) and a + // location is to be designated in that object's text, `nested_locator` + // identifies the location within that object. + TextLocator nested_locator = 4; + + // When `nested_locator` is set, this field gives the reason for the nesting. + // Usually, the reason is a macro invocation. In that case, the macro name + // (including the leading '@') signals the location of the macro call + // in the text and a macro argument name (including the leading '$') signals + // the location of the macro argument inside the macro body that got + // substituted away. + string nesting_reason = 5; +} diff --git a/google/monitoring/v3/metric_service.proto b/google/monitoring/v3/metric_service.proto index 56263d12..d03c052a 100644 --- a/google/monitoring/v3/metric_service.proto +++ b/google/monitoring/v3/metric_service.proto @@ -1,4 +1,4 @@ -// Copyright 2019 Google LLC. +// Copyright 2020 Google LLC // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. @@ -11,7 +11,6 @@ // 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"; @@ -63,7 +62,7 @@ service MetricService { "https://www.googleapis.com/auth/monitoring.read," "https://www.googleapis.com/auth/monitoring.write"; - // Lists monitored resource descriptors that match a filter. This method does not require a Stackdriver account. + // Lists monitored resource descriptors that match a filter. This method does not require a Workspace. rpc ListMonitoredResourceDescriptors(ListMonitoredResourceDescriptorsRequest) returns (ListMonitoredResourceDescriptorsResponse) { option (google.api.http) = { get: "/v3/{name=projects/*}/monitoredResourceDescriptors" @@ -71,7 +70,7 @@ service MetricService { option (google.api.method_signature) = "name"; } - // Gets a single monitored resource descriptor. This method does not require a Stackdriver account. + // Gets a single monitored resource descriptor. This method does not require a Workspace. rpc GetMonitoredResourceDescriptor(GetMonitoredResourceDescriptorRequest) returns (google.api.MonitoredResourceDescriptor) { option (google.api.http) = { get: "/v3/{name=projects/*/monitoredResourceDescriptors/**}" @@ -79,7 +78,7 @@ service MetricService { option (google.api.method_signature) = "name"; } - // Lists metric descriptors that match a filter. This method does not require a Stackdriver account. + // Lists metric descriptors that match a filter. This method does not require a Workspace. rpc ListMetricDescriptors(ListMetricDescriptorsRequest) returns (ListMetricDescriptorsResponse) { option (google.api.http) = { get: "/v3/{name=projects/*}/metricDescriptors" @@ -87,7 +86,7 @@ service MetricService { option (google.api.method_signature) = "name"; } - // Gets a single metric descriptor. This method does not require a Stackdriver account. + // Gets a single metric descriptor. This method does not require a Workspace. rpc GetMetricDescriptor(GetMetricDescriptorRequest) returns (google.api.MetricDescriptor) { option (google.api.http) = { get: "/v3/{name=projects/*/metricDescriptors/**}" @@ -116,7 +115,7 @@ service MetricService { option (google.api.method_signature) = "name"; } - // Lists time series that match a filter. This method does not require a Stackdriver account. + // Lists time series that match a filter. This method does not require a Workspace. rpc ListTimeSeries(ListTimeSeriesRequest) returns (ListTimeSeriesResponse) { option (google.api.http) = { get: "/v3/{name=projects/*}/timeSeries" @@ -416,3 +415,52 @@ message CreateTimeSeriesSummary { // The number of points that failed to be written. Order is not guaranteed. repeated Error errors = 3; } + +// The `QueryTimeSeries` request. +message QueryTimeSeriesRequest { + // Required. The project on which to execute the request. The format is: + // + // projects/[PROJECT_ID_OR_NUMBER] + string name = 1; + + // Required. The query in the time series query language format. The default + // time zone is in UTC. + string query = 7; + + // A positive number that is the maximum number of time_series_data to return. + int32 page_size = 9; + + // If this field is not empty then it must contain the `nextPageToken` value + // returned by a previous call to this method. Using this field causes the + // method to return additional results from the previous method call. + string page_token = 10; +} + +// The `QueryTimeSeries` response. +message QueryTimeSeriesResponse { + // The descriptor for the time series data. + TimeSeriesDescriptor time_series_descriptor = 8; + + // The time series data. + repeated TimeSeriesData time_series_data = 9; + + // If there are more results than have been returned, then this field is set + // to a non-empty value. To see the additional results, use that value as + // `page_token` in the next call to this method. + string next_page_token = 10; + + // Query execution errors that may have caused the time series data returned + // to be incomplete. The available data will be available in the + // response. + repeated google.rpc.Status partial_errors = 11; +} + +// This is an error detail intended to be used with INVALID_ARGUMENT errors. +message QueryErrorList { + // Errors in parsing the time series query language text. The number of errors + // in the response may be limited. + repeated QueryError errors = 1; + + // A summary of all the errors. + string error_summary = 2; +} diff --git a/google/monitoring/v3/monitoring.yaml b/google/monitoring/v3/monitoring.yaml index 2a41c4f9..d8b1bbae 100644 --- a/google/monitoring/v3/monitoring.yaml +++ b/google/monitoring/v3/monitoring.yaml @@ -1,7 +1,7 @@ type: google.api.Service config_version: 3 name: monitoring.googleapis.com -title: Stackdriver Monitoring API +title: Cloud Monitoring API apis: - name: google.monitoring.v3.AlertPolicyService @@ -17,12 +17,12 @@ types: documentation: summary: |- - Manages your Stackdriver Monitoring data and configurations. Most projects - must be associated with a Stackdriver account, with a few exceptions as - noted on the individual method pages. The table entries below are - presented in alphabetical order, not in order of common use. For - explanations of the concepts found in the table entries, read the - [Stackdriver Monitoring documentation](/monitoring/docs). + Manages your Cloud Monitoring data and configurations. Most projects must + be associated with a Workspace, with a few exceptions as noted on the + individual method pages. The table entries below are presented in + alphabetical order, not in order of common use. For explanations of the + concepts found in the table entries, read the [Cloud Monitoring + documentation](/monitoring/docs). backend: rules: diff --git a/google/monitoring/v3/mutation_record.proto b/google/monitoring/v3/mutation_record.proto index eab1f37d..e12ef2e1 100644 --- a/google/monitoring/v3/mutation_record.proto +++ b/google/monitoring/v3/mutation_record.proto @@ -1,4 +1,4 @@ -// Copyright 2019 Google LLC. +// Copyright 2020 Google LLC // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. @@ -11,7 +11,6 @@ // 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"; diff --git a/google/monitoring/v3/notification.proto b/google/monitoring/v3/notification.proto index fb3ef462..814cac1a 100644 --- a/google/monitoring/v3/notification.proto +++ b/google/monitoring/v3/notification.proto @@ -1,4 +1,4 @@ -// Copyright 2019 Google LLC. +// Copyright 2020 Google LLC // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. @@ -11,7 +11,6 @@ // 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"; @@ -42,9 +41,9 @@ message NotificationChannelDescriptor { pattern: "*" }; - // The full REST resource name for this descriptor. The syntax is: + // The full REST resource name for this descriptor. The format is: // - // projects/[PROJECT_ID]/notificationChannelDescriptors/[TYPE] + // projects/[PROJECT_ID_OR_NUMBER]/notificationChannelDescriptors/[TYPE] // // In the above, `[TYPE]` is the value of the `type` field. string name = 6; @@ -117,9 +116,9 @@ message NotificationChannel { // value of the [NotificationChannelDescriptor.type][google.monitoring.v3.NotificationChannelDescriptor.type] field. string type = 1; - // The full REST resource name for this channel. The syntax is: + // The full REST resource name for this channel. The format is: // - // projects/[PROJECT_ID]/notificationChannels/[CHANNEL_ID] + // projects/[PROJECT_ID_OR_NUMBER]/notificationChannels/[CHANNEL_ID] // // The `[CHANNEL_ID]` is automatically assigned by the server on creation. string name = 6; diff --git a/google/monitoring/v3/notification_service.proto b/google/monitoring/v3/notification_service.proto index 2ba8ae29..a9d06152 100644 --- a/google/monitoring/v3/notification_service.proto +++ b/google/monitoring/v3/notification_service.proto @@ -1,4 +1,4 @@ -// Copyright 2019 Google LLC. +// Copyright 2020 Google LLC // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. @@ -11,7 +11,6 @@ // 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"; diff --git a/google/monitoring/v3/service.proto b/google/monitoring/v3/service.proto index 82a953bd..47acd0c3 100644 --- a/google/monitoring/v3/service.proto +++ b/google/monitoring/v3/service.proto @@ -1,4 +1,4 @@ -// Copyright 2019 Google LLC. +// Copyright 2020 Google LLC // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. @@ -11,7 +11,6 @@ // 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"; @@ -33,7 +32,7 @@ option php_namespace = "Google\\Cloud\\Monitoring\\V3"; // A `Service` is a discrete, autonomous, and network-accessible unit, designed // to solve an individual concern // ([Wikipedia](https://en.wikipedia.org/wiki/Service-orientation)). In -// Stackdriver Monitoring, a `Service` acts as the root resource under which +// Cloud Monitoring, a `Service` acts as the root resource under which // operational aspects of the service are accessible. message Service { option (google.api.resource) = { @@ -66,8 +65,11 @@ message Service { string service = 1; } - // Istio service. Learn more at http://istio.io. + // Istio service scoped to a single Kubernetes cluster. Learn more at + // http://istio.io. message ClusterIstio { + option deprecated = true; + // The location of the Kubernetes cluster in which this Istio service is // defined. Corresponds to the `location` resource label in `k8s_cluster` // resources. @@ -87,6 +89,21 @@ message Service { string service_name = 4; } + // Istio service scoped to an Istio mesh + message MeshIstio { + // Identifier for the mesh in which this Istio service is defined. + // Corresponds to the `mesh_uid` metric label in Istio metrics. + string mesh_uid = 1; + + // The namespace of the Istio service underlying this service. Corresponds + // to the `destination_service_namespace` metric label in Istio metrics. + string service_namespace = 3; + + // The name of the Istio service underlying this service. Corresponds to the + // `destination_service_name` metric label in Istio metrics. + string service_name = 4; + } + // Configuration for how to query telemetry on a Service. message Telemetry { // The full name of the resource that defines this service. Formatted as @@ -94,8 +111,9 @@ message Service { string resource_name = 1; } - // Resource name for this Service. Of the form - // `projects/{project_id}/services/{service_id}`. + // Resource name for this Service. The format is: + // + // projects/[PROJECT_ID_OR_NUMBER]/services/[SERVICE_ID] string name = 1; // Name used for UI elements listing this Service. @@ -113,7 +131,10 @@ message Service { CloudEndpoints cloud_endpoints = 8; // Type used for Istio services that live in a Kubernetes cluster. - ClusterIstio cluster_istio = 9; + ClusterIstio cluster_istio = 9 [deprecated = true]; + + // Type used for Istio services scoped to an Istio mesh. + MeshIstio mesh_istio = 10; } // Configuration for how to query telemetry on a Service. @@ -155,9 +176,9 @@ message ServiceLevelObjective { EXPLICIT = 1; } - // Resource name for this `ServiceLevelObjective`. - // Of the form - // `projects/{project_id}/services/{service_id}/serviceLevelObjectives/{slo_name}`. + // Resource name for this `ServiceLevelObjective`. The format is: + // + // projects/[PROJECT_ID_OR_NUMBER]/services/[SERVICE_ID]/serviceLevelObjectives/[SLO_NAME] string name = 1; // Name used for UI elements listing this SLO. diff --git a/google/monitoring/v3/service_service.proto b/google/monitoring/v3/service_service.proto index 5b9c096a..467e5d77 100644 --- a/google/monitoring/v3/service_service.proto +++ b/google/monitoring/v3/service_service.proto @@ -1,4 +1,4 @@ -// Copyright 2019 Google LLC. +// Copyright 2020 Google LLC // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. @@ -11,7 +11,6 @@ // 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"; @@ -20,7 +19,6 @@ package google.monitoring.v3; import "google/api/annotations.proto"; import "google/api/client.proto"; import "google/api/field_behavior.proto"; -import "google/api/monitored_resource.proto"; import "google/api/resource.proto"; import "google/monitoring/v3/service.proto"; import "google/protobuf/empty.proto"; @@ -33,7 +31,7 @@ option java_outer_classname = "ServiceMonitoringServiceProto"; option java_package = "com.google.monitoring.v3"; option php_namespace = "Google\\Cloud\\Monitoring\\V3"; -// The Stackdriver Monitoring Service-Oriented Monitoring API has endpoints for +// The Cloud Monitoring Service-Oriented Monitoring API has endpoints for // managing and querying aspects of a workspace's services. These include the // `Service`'s monitored resources, its Service-Level Objectives, and a taxonomy // of categorized Health Metrics. @@ -131,8 +129,9 @@ service ServiceMonitoringService { // The `CreateService` request. message CreateServiceRequest { - // Required. Resource name of the parent workspace. - // Of the form `projects/{project_id}`. + // Required. Resource name of the parent workspace. The format is: + // + // projects/[PROJECT_ID_OR_NUMBER] string parent = 1 [ (google.api.field_behavior) = REQUIRED, (google.api.resource_reference) = { @@ -141,7 +140,7 @@ message CreateServiceRequest { ]; // Optional. The Service id to use for this Service. If omitted, an id will be - // generated instead. Must match the pattern [a-z0-9\-]+ + // generated instead. Must match the pattern `[a-z0-9\-]+` string service_id = 3; // Required. The `Service` to create. @@ -150,8 +149,9 @@ message CreateServiceRequest { // The `GetService` request. message GetServiceRequest { - // Required. Resource name of the `Service`. - // Of the form `projects/{project_id}/services/{service_id}`. + // Required. Resource name of the `Service`. The format is: + // + // projects/[PROJECT_ID_OR_NUMBER]/services/[SERVICE_ID] string name = 1 [ (google.api.field_behavior) = REQUIRED, (google.api.resource_reference) = { @@ -162,8 +162,11 @@ message GetServiceRequest { // The `ListServices` request. message ListServicesRequest { - // Required. Resource name of the parent `Workspace`. - // Of the form `projects/{project_id}`. + // Required. Resource name of the parent containing the listed services, either a + // project or a Monitoring Workspace. The formats are: + // + // projects/[PROJECT_ID_OR_NUMBER] + // workspaces/[HOST_PROJECT_ID_OR_NUMBER] string parent = 1 [ (google.api.field_behavior) = REQUIRED, (google.api.resource_reference) = { @@ -205,7 +208,7 @@ message ListServicesResponse { // If there are more results than have been returned, then this field is set // to a non-empty value. To see the additional results, - // use that value as `pageToken` in the next call to this method. + // use that value as `page_token` in the next call to this method. string next_page_token = 2; } @@ -221,8 +224,9 @@ message UpdateServiceRequest { // The `DeleteService` request. message DeleteServiceRequest { - // Required. Resource name of the `Service` to delete. - // Of the form `projects/{project_id}/services/{service_id}`. + // Required. Resource name of the `Service` to delete. The format is: + // + // projects/[PROJECT_ID_OR_NUMBER]/services/[SERVICE_ID] string name = 1 [ (google.api.field_behavior) = REQUIRED, (google.api.resource_reference) = { @@ -233,8 +237,9 @@ message DeleteServiceRequest { // The `CreateServiceLevelObjective` request. message CreateServiceLevelObjectiveRequest { - // Required. Resource name of the parent `Service`. - // Of the form `projects/{project_id}/services/{service_id}`. + // Required. Resource name of the parent `Service`. The format is: + // + // projects/[PROJECT_ID_OR_NUMBER]/services/[SERVICE_ID] string parent = 1 [ (google.api.field_behavior) = REQUIRED, (google.api.resource_reference) = { @@ -244,7 +249,7 @@ message CreateServiceLevelObjectiveRequest { // Optional. The ServiceLevelObjective id to use for this // ServiceLevelObjective. If omitted, an id will be generated instead. Must - // match the pattern [a-z0-9\-]+ + // match the pattern `[a-z0-9\-]+` string service_level_objective_id = 3; // Required. The `ServiceLevelObjective` to create. @@ -255,9 +260,9 @@ message CreateServiceLevelObjectiveRequest { // The `GetServiceLevelObjective` request. message GetServiceLevelObjectiveRequest { - // Required. Resource name of the `ServiceLevelObjective` to get. - // Of the form - // `projects/{project_id}/services/{service_id}/serviceLevelObjectives/{slo_name}`. + // Required. Resource name of the `ServiceLevelObjective` to get. The format is: + // + // projects/[PROJECT_ID_OR_NUMBER]/services/[SERVICE_ID]/serviceLevelObjectives/[SLO_NAME] string name = 1 [ (google.api.field_behavior) = REQUIRED, (google.api.resource_reference) = { @@ -274,8 +279,11 @@ message GetServiceLevelObjectiveRequest { // The `ListServiceLevelObjectives` request. message ListServiceLevelObjectivesRequest { - // Required. Resource name of the parent `Service`. - // Of the form `projects/{project_id}/services/{service_id}`. + // Required. Resource name of the parent containing the listed SLOs, either a + // project or a Monitoring Workspace. The formats are: + // + // projects/[PROJECT_ID_OR_NUMBER]/services/[SERVICE_ID] + // workspaces/[HOST_PROJECT_ID_OR_NUMBER]/services/- string parent = 1 [ (google.api.field_behavior) = REQUIRED, (google.api.resource_reference) = { @@ -309,7 +317,7 @@ message ListServiceLevelObjectivesResponse { // If there are more results than have been returned, then this field is set // to a non-empty value. To see the additional results, - // use that value as `pageToken` in the next call to this method. + // use that value as `page_token` in the next call to this method. string next_page_token = 2; } @@ -325,9 +333,9 @@ message UpdateServiceLevelObjectiveRequest { // The `DeleteServiceLevelObjective` request. message DeleteServiceLevelObjectiveRequest { - // Required. Resource name of the `ServiceLevelObjective` to delete. - // Of the form - // `projects/{project_id}/services/{service_id}/serviceLevelObjectives/{slo_name}`. + // Required. Resource name of the `ServiceLevelObjective` to delete. The format is: + // + // projects/[PROJECT_ID_OR_NUMBER]/services/[SERVICE_ID]/serviceLevelObjectives/[SLO_NAME] string name = 1 [ (google.api.field_behavior) = REQUIRED, (google.api.resource_reference) = { diff --git a/google/monitoring/v3/span_context.proto b/google/monitoring/v3/span_context.proto index cbcb8f72..9e109460 100644 --- a/google/monitoring/v3/span_context.proto +++ b/google/monitoring/v3/span_context.proto @@ -1,4 +1,4 @@ -// Copyright 2019 Google LLC. +// Copyright 2020 Google LLC // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. @@ -11,7 +11,6 @@ // 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"; @@ -24,20 +23,22 @@ option java_outer_classname = "SpanContextProto"; option java_package = "com.google.monitoring.v3"; option php_namespace = "Google\\Cloud\\Monitoring\\V3"; -// The context of a span, attached to google.api.Distribution.Exemplars -// in google.api.Distribution values during aggregation. +// The context of a span, attached to +// [Exemplars][google.api.Distribution.Exemplars] +// in [Distribution][google.api.Distribution] values during aggregation. // // It contains the name of a span with format: -// projects/[PROJECT_ID]/traces/[TRACE_ID]/spans/[SPAN_ID] +// +// projects/[PROJECT_ID_OR_NUMBER]/traces/[TRACE_ID]/spans/[SPAN_ID] message SpanContext { - // The resource name of the span in the following format: + // The resource name of the span. The format is: // - // projects/[PROJECT_ID]/traces/[TRACE_ID]/spans/[SPAN_ID] + // projects/[PROJECT_ID_OR_NUMBER]/traces/[TRACE_ID]/spans/[SPAN_ID] // - // [TRACE_ID] is a unique identifier for a trace within a project; + // `[TRACE_ID]` is a unique identifier for a trace within a project; // it is a 32-character hexadecimal encoding of a 16-byte array. // - // [SPAN_ID] is a unique identifier for a span within a trace; it + // `[SPAN_ID]` is a unique identifier for a span within a trace; it // is a 16-character hexadecimal encoding of an 8-byte array. string span_name = 1; } diff --git a/google/monitoring/v3/uptime.proto b/google/monitoring/v3/uptime.proto index 7cb4947d..c6094ce0 100644 --- a/google/monitoring/v3/uptime.proto +++ b/google/monitoring/v3/uptime.proto @@ -1,4 +1,4 @@ -// Copyright 2019 Google LLC. +// Copyright 2020 Google LLC // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. @@ -11,7 +11,6 @@ // 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"; @@ -78,9 +77,9 @@ message InternalChecker { // A unique resource name for this InternalChecker. The format is: // - // `projects/[PROJECT_ID]/internalCheckers/[INTERNAL_CHECKER_ID]`. + // projects/[PROJECT_ID_OR_NUMBER]/internalCheckers/[INTERNAL_CHECKER_ID] // - // `[PROJECT_ID]` is the Stackdriver Workspace project for the + // `[PROJECT_ID_OR_NUMBER]` is the Stackdriver Workspace project for the // Uptime check config associated with the internal checker. string name = 1; @@ -120,7 +119,8 @@ message UptimeCheckConfig { // monitored resource, when multiple resources are being monitored. message ResourceGroup { // The group of resources being monitored. Should be only the `[GROUP_ID]`, - // and not the full-path `projects/[PROJECT_ID]/groups/[GROUP_ID]`. + // and not the full-path + // `projects/[PROJECT_ID_OR_NUMBER]/groups/[GROUP_ID]`. string group_id = 1; // The resource type of the group members. @@ -238,7 +238,7 @@ message UptimeCheckConfig { // A unique resource name for this Uptime check configuration. The format is: // - // `projects/[PROJECT_ID]/uptimeCheckConfigs/[UPTIME_CHECK_ID]`. + // projects/[PROJECT_ID_OR_NUMBER]/uptimeCheckConfigs/[UPTIME_CHECK_ID] // // This field should be omitted when creating the Uptime check configuration; // on create, the resource name is assigned by the server and included in the diff --git a/google/monitoring/v3/uptime_service.proto b/google/monitoring/v3/uptime_service.proto index 9c7bf796..cbccffc7 100644 --- a/google/monitoring/v3/uptime_service.proto +++ b/google/monitoring/v3/uptime_service.proto @@ -1,4 +1,4 @@ -// Copyright 2019 Google LLC. +// Copyright 2020 Google LLC // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. @@ -11,7 +11,6 @@ // 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"; @@ -106,8 +105,9 @@ service UptimeCheckService { // The protocol for the `ListUptimeCheckConfigs` request. message ListUptimeCheckConfigsRequest { - // Required. The project whose Uptime check configurations are listed. The format - // is `projects/[PROJECT_ID]`. + // Required. The project whose Uptime check configurations are listed. The format is: + // + // projects/[PROJECT_ID_OR_NUMBER] string parent = 1 [ (google.api.field_behavior) = REQUIRED, (google.api.resource_reference) = { @@ -146,8 +146,9 @@ message ListUptimeCheckConfigsResponse { // The protocol for the `GetUptimeCheckConfig` request. message GetUptimeCheckConfigRequest { - // Required. The Uptime check configuration to retrieve. The format - // is `projects/[PROJECT_ID]/uptimeCheckConfigs/[UPTIME_CHECK_ID]`. + // Required. The Uptime check configuration to retrieve. The format is: + // + // projects/[PROJECT_ID_OR_NUMBER]/uptimeCheckConfigs/[UPTIME_CHECK_ID] string name = 1 [ (google.api.field_behavior) = REQUIRED, (google.api.resource_reference) = { @@ -158,8 +159,9 @@ message GetUptimeCheckConfigRequest { // The protocol for the `CreateUptimeCheckConfig` request. message CreateUptimeCheckConfigRequest { - // Required. The project in which to create the Uptime check. The format - // is `projects/[PROJECT_ID]`. + // Required. The project in which to create the Uptime check. The format is: + // + // projects/[PROJECT_ID_OR_NUMBER] string parent = 1 [ (google.api.field_behavior) = REQUIRED, (google.api.resource_reference) = { @@ -195,8 +197,9 @@ message UpdateUptimeCheckConfigRequest { // The protocol for the `DeleteUptimeCheckConfig` request. message DeleteUptimeCheckConfigRequest { - // Required. The Uptime check configuration to delete. The format - // is `projects/[PROJECT_ID]/uptimeCheckConfigs/[UPTIME_CHECK_ID]`. + // Required. The Uptime check configuration to delete. The format is: + // + // projects/[PROJECT_ID_OR_NUMBER]/uptimeCheckConfigs/[UPTIME_CHECK_ID] string name = 1 [ (google.api.field_behavior) = REQUIRED, (google.api.resource_reference) = {