google-cloud-monitoring 0.33.1 → 0.34.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/README.md +4 -1
- data/lib/google/cloud/monitoring.rb +63 -1
- data/lib/google/cloud/monitoring/dashboard.rb +147 -0
- data/lib/google/cloud/monitoring/dashboard/v1.rb +148 -0
- data/lib/google/cloud/monitoring/dashboard/v1/credentials.rb +46 -0
- data/lib/google/cloud/monitoring/dashboard/v1/dashboards_service_client.rb +454 -0
- data/lib/google/cloud/monitoring/dashboard/v1/dashboards_service_client_config.json +51 -0
- data/lib/google/cloud/monitoring/dashboard/v1/doc/google/monitoring/dashboard/v1/common.rb +394 -0
- data/lib/google/cloud/monitoring/dashboard/v1/doc/google/monitoring/dashboard/v1/dashboard.rb +53 -0
- data/lib/google/cloud/monitoring/dashboard/v1/doc/google/monitoring/dashboard/v1/dashboards_service.rb +82 -0
- data/lib/google/cloud/monitoring/dashboard/v1/doc/google/monitoring/dashboard/v1/layouts.rb +71 -0
- data/lib/google/cloud/monitoring/dashboard/v1/doc/google/monitoring/dashboard/v1/metrics.rb +151 -0
- data/lib/google/cloud/monitoring/dashboard/v1/doc/google/monitoring/dashboard/v1/scorecard.rb +102 -0
- data/lib/google/cloud/monitoring/dashboard/v1/doc/google/monitoring/dashboard/v1/text.rb +43 -0
- data/lib/google/cloud/monitoring/dashboard/v1/doc/google/monitoring/dashboard/v1/widget.rb +41 -0
- data/lib/google/cloud/monitoring/dashboard/v1/doc/google/monitoring/dashboard/v1/xychart.rb +141 -0
- data/lib/google/cloud/monitoring/dashboard/v1/doc/google/protobuf/duration.rb +91 -0
- data/lib/google/cloud/monitoring/dashboard/v1/doc/google/protobuf/empty.rb +29 -0
- data/lib/google/cloud/monitoring/v3.rb +72 -1
- data/lib/google/cloud/monitoring/v3/alert_policy_service_client_config.json +5 -5
- data/lib/google/cloud/monitoring/v3/doc/google/api/metric.rb +29 -45
- data/lib/google/cloud/monitoring/v3/doc/google/monitoring/v3/alert.rb +6 -8
- data/lib/google/cloud/monitoring/v3/doc/google/monitoring/v3/metric.rb +8 -8
- data/lib/google/cloud/monitoring/v3/doc/google/monitoring/v3/metric_service.rb +6 -4
- data/lib/google/cloud/monitoring/v3/doc/google/monitoring/v3/service.rb +341 -0
- data/lib/google/cloud/monitoring/v3/doc/google/monitoring/v3/service_service.rb +187 -0
- data/lib/google/cloud/monitoring/v3/doc/google/monitoring/v3/uptime.rb +16 -12
- data/lib/google/cloud/monitoring/v3/group_service_client_config.json +6 -6
- data/lib/google/cloud/monitoring/v3/metric_service_client.rb +6 -4
- data/lib/google/cloud/monitoring/v3/metric_service_client_config.json +7 -7
- data/lib/google/cloud/monitoring/v3/notification_channel_service_client_config.json +10 -10
- data/lib/google/cloud/monitoring/v3/service_monitoring_service_client.rb +775 -0
- data/lib/google/cloud/monitoring/v3/service_monitoring_service_client_config.json +76 -0
- data/lib/google/cloud/monitoring/version.rb +1 -1
- data/lib/google/monitoring/dashboard/v1/common_pb.rb +95 -0
- data/lib/google/monitoring/dashboard/v1/dashboard_pb.rb +29 -0
- data/lib/google/monitoring/dashboard/v1/dashboards_service_pb.rb +51 -0
- data/lib/google/monitoring/dashboard/v1/dashboards_service_services_pb.rb +76 -0
- data/lib/google/monitoring/dashboard/v1/drilldowns_pb.rb +17 -0
- data/lib/google/monitoring/dashboard/v1/layouts_pb.rb +41 -0
- data/lib/google/monitoring/dashboard/v1/metrics_pb.rb +76 -0
- data/lib/google/monitoring/dashboard/v1/scorecard_pb.rb +38 -0
- data/lib/google/monitoring/dashboard/v1/service_pb.rb +17 -0
- data/lib/google/monitoring/dashboard/v1/text_pb.rb +28 -0
- data/lib/google/monitoring/dashboard/v1/widget_pb.rb +32 -0
- data/lib/google/monitoring/dashboard/v1/xychart_pb.rb +66 -0
- data/lib/google/monitoring/v3/metric_service_pb.rb +11 -0
- data/lib/google/monitoring/v3/notification_pb.rb +1 -0
- data/lib/google/monitoring/v3/service_pb.rb +141 -0
- data/lib/google/monitoring/v3/service_service_pb.rb +85 -0
- data/lib/google/monitoring/v3/service_service_services_pb.rb +66 -0
- metadata +37 -2
@@ -62,8 +62,8 @@ module Google
|
|
62
62
|
# conditions.
|
63
63
|
# @!attribute [rw] combiner
|
64
64
|
# @return [Google::Monitoring::V3::AlertPolicy::ConditionCombinerType]
|
65
|
-
# How to combine the results of multiple conditions
|
66
|
-
#
|
65
|
+
# How to combine the results of multiple conditions to determine if an
|
66
|
+
# incident should be opened.
|
67
67
|
# @!attribute [rw] enabled
|
68
68
|
# @return [Google::Protobuf::BoolValue]
|
69
69
|
# Whether or not the policy is enabled. On write, the default interpretation
|
@@ -174,7 +174,7 @@ module Google
|
|
174
174
|
# identifies which time series should be compared with the threshold.
|
175
175
|
#
|
176
176
|
# The filter is similar to the one that is specified in the
|
177
|
-
# [`
|
177
|
+
# [`ListTimeSeries`
|
178
178
|
# request](/monitoring/api/ref_v3/rest/v3/projects.timeSeries/list) (that
|
179
179
|
# call is useful to verify the time series that will be retrieved /
|
180
180
|
# processed) and must specify the metric type and optionally may contain
|
@@ -189,8 +189,7 @@ module Google
|
|
189
189
|
# members of a group of resrouces). Multiple aggregations
|
190
190
|
# are applied in the order specified.
|
191
191
|
#
|
192
|
-
# This field is similar to the one in the
|
193
|
-
# [`MetricService.ListTimeSeries`
|
192
|
+
# This field is similar to the one in the [`ListTimeSeries`
|
194
193
|
# request](/monitoring/api/ref_v3/rest/v3/projects.timeSeries/list). It
|
195
194
|
# is advisable to use the `ListTimeSeries` method when debugging this
|
196
195
|
# field.
|
@@ -261,7 +260,7 @@ module Google
|
|
261
260
|
# identifies which time series should be compared with the threshold.
|
262
261
|
#
|
263
262
|
# The filter is similar to the one that is specified in the
|
264
|
-
# [`
|
263
|
+
# [`ListTimeSeries`
|
265
264
|
# request](/monitoring/api/ref_v3/rest/v3/projects.timeSeries/list) (that
|
266
265
|
# call is useful to verify the time series that will be retrieved /
|
267
266
|
# processed) and must specify the metric type and optionally may contain
|
@@ -276,8 +275,7 @@ module Google
|
|
276
275
|
# members of a group of resrouces). Multiple aggregations
|
277
276
|
# are applied in the order specified.
|
278
277
|
#
|
279
|
-
# This field is similar to the
|
280
|
-
# one in the [`MetricService.ListTimeSeries`
|
278
|
+
# This field is similar to the one in the [`ListTimeSeries`
|
281
279
|
# request](/monitoring/api/ref_v3/rest/v3/projects.timeSeries/list). It
|
282
280
|
# is advisable to use the `ListTimeSeries` method when debugging this
|
283
281
|
# field.
|
@@ -20,14 +20,14 @@ module Google
|
|
20
20
|
# @!attribute [rw] interval
|
21
21
|
# @return [Google::Monitoring::V3::TimeInterval]
|
22
22
|
# The time interval to which the data point applies. For `GAUGE` metrics,
|
23
|
-
# the start time is optional, but if it is supplied, it must equal the
|
24
|
-
# time. For `DELTA` metrics, the start
|
25
|
-
# non-zero interval, with subsequent points
|
26
|
-
# non-overlapping intervals. For `CUMULATIVE`
|
27
|
-
# time should specify a non-zero interval, with
|
28
|
-
# the same start time and increasing end times,
|
29
|
-
# cumulative value to zero and sets a new start
|
30
|
-
# points.
|
23
|
+
# the start time is optional, but if it is supplied, it must equal the
|
24
|
+
# end time. For `DELTA` metrics, the start
|
25
|
+
# and end time should specify a non-zero interval, with subsequent points
|
26
|
+
# specifying contiguous and non-overlapping intervals. For `CUMULATIVE`
|
27
|
+
# metrics, the start and end time should specify a non-zero interval, with
|
28
|
+
# subsequent points specifying the same start time and increasing end times,
|
29
|
+
# until an event resets the cumulative value to zero and sets a new start
|
30
|
+
# time for the following points.
|
31
31
|
# @!attribute [rw] value
|
32
32
|
# @return [Google::Monitoring::V3::TypedValue]
|
33
33
|
# The value of the data point.
|
@@ -148,13 +148,15 @@ module Google
|
|
148
148
|
# in the response.
|
149
149
|
# @!attribute [rw] aggregation
|
150
150
|
# @return [Google::Monitoring::V3::Aggregation]
|
151
|
-
#
|
152
|
-
#
|
153
|
-
#
|
151
|
+
# Specifies the alignment of data points in individual time series as
|
152
|
+
# well as how to combine the retrieved time series across specified labels.
|
153
|
+
#
|
154
|
+
# By default (if no `aggregation` is explicitly specified), the raw time
|
155
|
+
# series data is returned.
|
154
156
|
# @!attribute [rw] order_by
|
155
157
|
# @return [String]
|
156
158
|
# Unsupported: must be left blank. The points in each time series are
|
157
|
-
# returned in reverse time order.
|
159
|
+
# currently returned in reverse time order (most recent to oldest).
|
158
160
|
# @!attribute [rw] view
|
159
161
|
# @return [Google::Monitoring::V3::ListTimeSeriesRequest::TimeSeriesView]
|
160
162
|
# Specifies which information is returned about the time series.
|
@@ -0,0 +1,341 @@
|
|
1
|
+
# Copyright 2019 Google LLC
|
2
|
+
#
|
3
|
+
# Licensed under the Apache License, Version 2.0 (the "License");
|
4
|
+
# you may not use this file except in compliance with the License.
|
5
|
+
# You may obtain a copy of the License at
|
6
|
+
#
|
7
|
+
# https://www.apache.org/licenses/LICENSE-2.0
|
8
|
+
#
|
9
|
+
# Unless required by applicable law or agreed to in writing, software
|
10
|
+
# distributed under the License is distributed on an "AS IS" BASIS,
|
11
|
+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
12
|
+
# See the License for the specific language governing permissions and
|
13
|
+
# limitations under the License.
|
14
|
+
|
15
|
+
|
16
|
+
module Google
|
17
|
+
module Monitoring
|
18
|
+
module V3
|
19
|
+
# A `Service` is a discrete, autonomous, and network-accessible unit, designed
|
20
|
+
# to solve an individual concern
|
21
|
+
# ([Wikipedia](https://en.wikipedia.org/wiki/Service-orientation)). In
|
22
|
+
# Stackdriver Monitoring, a `Service` acts as the root resource under which
|
23
|
+
# operational aspects of the service are accessible.
|
24
|
+
# @!attribute [rw] name
|
25
|
+
# @return [String]
|
26
|
+
# Resource name for this Service. Of the form
|
27
|
+
# `projects/{project_id}/services/{service_id}`.
|
28
|
+
# @!attribute [rw] display_name
|
29
|
+
# @return [String]
|
30
|
+
# Name used for UI elements listing this Service.
|
31
|
+
# @!attribute [rw] custom
|
32
|
+
# @return [Google::Monitoring::V3::Service::Custom]
|
33
|
+
# Custom service type.
|
34
|
+
# @!attribute [rw] app_engine
|
35
|
+
# @return [Google::Monitoring::V3::Service::AppEngine]
|
36
|
+
# Type used for App Engine services.
|
37
|
+
# @!attribute [rw] cloud_endpoints
|
38
|
+
# @return [Google::Monitoring::V3::Service::CloudEndpoints]
|
39
|
+
# Type used for Cloud Endpoints services.
|
40
|
+
# @!attribute [rw] cluster_istio
|
41
|
+
# @return [Google::Monitoring::V3::Service::ClusterIstio]
|
42
|
+
# Type used for Istio services that live in a Kubernetes cluster.
|
43
|
+
# @!attribute [rw] telemetry
|
44
|
+
# @return [Google::Monitoring::V3::Service::Telemetry]
|
45
|
+
# Configuration for how to query telemetry on a Service.
|
46
|
+
class Service
|
47
|
+
# Custom view of service telemetry. Currently a place-holder pending final
|
48
|
+
# design.
|
49
|
+
class Custom; end
|
50
|
+
|
51
|
+
# App Engine service. Learn more at https://cloud.google.com/appengine.
|
52
|
+
# @!attribute [rw] module_id
|
53
|
+
# @return [String]
|
54
|
+
# The ID of the App Engine module underlying this service. Corresponds to
|
55
|
+
# the `module_id` resource label in the `gae_app` monitored resource:
|
56
|
+
# https://cloud.google.com/monitoring/api/resources#tag_gae_app
|
57
|
+
class AppEngine; end
|
58
|
+
|
59
|
+
# Cloud Endpoints service. Learn more at https://cloud.google.com/endpoints.
|
60
|
+
# @!attribute [rw] service
|
61
|
+
# @return [String]
|
62
|
+
# The name of the Cloud Endpoints service underlying this service.
|
63
|
+
# Corresponds to the `service` resource label in the `api` monitored
|
64
|
+
# resource: https://cloud.google.com/monitoring/api/resources#tag_api
|
65
|
+
class CloudEndpoints; end
|
66
|
+
|
67
|
+
# Istio service. Learn more at http://istio.io.
|
68
|
+
# @!attribute [rw] location
|
69
|
+
# @return [String]
|
70
|
+
# The location of the Kubernetes cluster in which this Istio service is
|
71
|
+
# defined. Corresponds to the `location` resource label in `k8s_cluster`
|
72
|
+
# resources.
|
73
|
+
# @!attribute [rw] cluster_name
|
74
|
+
# @return [String]
|
75
|
+
# The name of the Kubernetes cluster in which this Istio service is
|
76
|
+
# defined. Corresponds to the `cluster_name` resource label in
|
77
|
+
# `k8s_cluster` resources.
|
78
|
+
# @!attribute [rw] service_namespace
|
79
|
+
# @return [String]
|
80
|
+
# The namespace of the Istio service underlying this service. Corresponds
|
81
|
+
# to the `destination_service_namespace` metric label in Istio metrics.
|
82
|
+
# @!attribute [rw] service_name
|
83
|
+
# @return [String]
|
84
|
+
# The name of the Istio service underlying this service. Corresponds to the
|
85
|
+
# `destination_service_name` metric label in Istio metrics.
|
86
|
+
class ClusterIstio; end
|
87
|
+
|
88
|
+
# Configuration for how to query telemetry on a Service.
|
89
|
+
# @!attribute [rw] resource_name
|
90
|
+
# @return [String]
|
91
|
+
# The full name of the resource that defines this service. Formatted as
|
92
|
+
# described in https://cloud.google.com/apis/design/resource_names.
|
93
|
+
class Telemetry; end
|
94
|
+
end
|
95
|
+
|
96
|
+
# A Service-Level Objective (SLO) describes a level of desired good service. It
|
97
|
+
# consists of a service-level indicator (SLI), a performance goal, and a period
|
98
|
+
# over which the objective is to be evaluated against that goal. The SLO can
|
99
|
+
# use SLIs defined in a number of different manners. Typical SLOs might include
|
100
|
+
# "99% of requests in each rolling week have latency below 200 milliseconds" or
|
101
|
+
# "99.5% of requests in each calendar month return successfully."
|
102
|
+
# @!attribute [rw] name
|
103
|
+
# @return [String]
|
104
|
+
# Resource name for this `ServiceLevelObjective`.
|
105
|
+
# Of the form
|
106
|
+
# `projects/{project_id}/services/{service_id}/serviceLevelObjectives/{slo_name}`.
|
107
|
+
# @!attribute [rw] display_name
|
108
|
+
# @return [String]
|
109
|
+
# Name used for UI elements listing this SLO.
|
110
|
+
# @!attribute [rw] service_level_indicator
|
111
|
+
# @return [Google::Monitoring::V3::ServiceLevelIndicator]
|
112
|
+
# The definition of good service, used to measure and calculate the quality
|
113
|
+
# of the `Service`'s performance with respect to a single aspect of service
|
114
|
+
# quality.
|
115
|
+
# @!attribute [rw] goal
|
116
|
+
# @return [Float]
|
117
|
+
# The fraction of service that must be good in order for this objective to be
|
118
|
+
# met. `0 < goal <= 0.999`.
|
119
|
+
# @!attribute [rw] rolling_period
|
120
|
+
# @return [Google::Protobuf::Duration]
|
121
|
+
# A rolling time period, semantically "in the past `<rolling_period>`".
|
122
|
+
# Must be an integer multiple of 1 day no larger than 30 days.
|
123
|
+
# @!attribute [rw] calendar_period
|
124
|
+
# @return [Google::Type::CalendarPeriod]
|
125
|
+
# A calendar period, semantically "since the start of the current
|
126
|
+
# `<calendar_period>`". At this time, only `DAY`, `WEEK`, `FORTNIGHT`, and
|
127
|
+
# `MONTH` are supported.
|
128
|
+
class ServiceLevelObjective
|
129
|
+
# `ServiceLevelObjective.View` determines what form of
|
130
|
+
# `ServiceLevelObjective` is returned from `GetServiceLevelObjective`,
|
131
|
+
# `ListServiceLevelObjectives`, and `ListServiceLevelObjectiveVersions` RPCs.
|
132
|
+
module View
|
133
|
+
# Same as FULL.
|
134
|
+
VIEW_UNSPECIFIED = 0
|
135
|
+
|
136
|
+
# Return the embedded `ServiceLevelIndicator` in the form in which it was
|
137
|
+
# defined. If it was defined using a `BasicSli`, return that `BasicSli`.
|
138
|
+
FULL = 2
|
139
|
+
|
140
|
+
# For `ServiceLevelIndicator`s using `BasicSli` articulation, instead
|
141
|
+
# return the `ServiceLevelIndicator` with its mode of computation fully
|
142
|
+
# spelled out as a `RequestBasedSli`. For `ServiceLevelIndicator`s using
|
143
|
+
# `RequestBasedSli` or `WindowsBasedSli`, return the
|
144
|
+
# `ServiceLevelIndicator` as it was provided.
|
145
|
+
EXPLICIT = 1
|
146
|
+
end
|
147
|
+
end
|
148
|
+
|
149
|
+
# A Service-Level Indicator (SLI) describes the "performance" of a service. For
|
150
|
+
# some services, the SLI is well-defined. In such cases, the SLI can be
|
151
|
+
# described easily by referencing the well-known SLI and providing the needed
|
152
|
+
# parameters. Alternatively, a "custom" SLI can be defined with a query to the
|
153
|
+
# underlying metric store. An SLI is defined to be `good_service /
|
154
|
+
# total_service` over any queried time interval. The value of performance
|
155
|
+
# always falls into the range `0 <= performance <= 1`. A custom SLI describes
|
156
|
+
# how to compute this ratio, whether this is by dividing values from a pair of
|
157
|
+
# time series, cutting a `Distribution` into good and bad counts, or counting
|
158
|
+
# time windows in which the service complies with a criterion. For separation
|
159
|
+
# of concerns, a single Service-Level Indicator measures performance for only
|
160
|
+
# one aspect of service quality, such as fraction of successful queries or
|
161
|
+
# fast-enough queries.
|
162
|
+
# @!attribute [rw] basic_sli
|
163
|
+
# @return [Google::Monitoring::V3::BasicSli]
|
164
|
+
# Basic SLI on a well-known service type.
|
165
|
+
# @!attribute [rw] request_based
|
166
|
+
# @return [Google::Monitoring::V3::RequestBasedSli]
|
167
|
+
# Request-based SLIs
|
168
|
+
# @!attribute [rw] windows_based
|
169
|
+
# @return [Google::Monitoring::V3::WindowsBasedSli]
|
170
|
+
# Windows-based SLIs
|
171
|
+
class ServiceLevelIndicator; end
|
172
|
+
|
173
|
+
# An SLI measuring performance on a well-known service type. Performance will
|
174
|
+
# be computed on the basis of pre-defined metrics. The type of the
|
175
|
+
# `service_resource` determines the metrics to use and the
|
176
|
+
# `service_resource.labels` and `metric_labels` are used to construct a
|
177
|
+
# monitoring filter to filter that metric down to just the data relevant to
|
178
|
+
# this service.
|
179
|
+
# @!attribute [rw] method
|
180
|
+
# @return [Array<String>]
|
181
|
+
# OPTIONAL: The set of RPCs to which this SLI is relevant. Telemetry from
|
182
|
+
# other methods will not be used to calculate performance for this SLI. If
|
183
|
+
# omitted, this SLI applies to all the Service's methods. For service types
|
184
|
+
# that don't support breaking down by method, setting this field will result
|
185
|
+
# in an error.
|
186
|
+
# @!attribute [rw] location
|
187
|
+
# @return [Array<String>]
|
188
|
+
# OPTIONAL: The set of locations to which this SLI is relevant. Telemetry
|
189
|
+
# from other locations will not be used to calculate performance for this
|
190
|
+
# SLI. If omitted, this SLI applies to all locations in which the Service has
|
191
|
+
# activity. For service types that don't support breaking down by location,
|
192
|
+
# setting this field will result in an error.
|
193
|
+
# @!attribute [rw] version
|
194
|
+
# @return [Array<String>]
|
195
|
+
# OPTIONAL: The set of API versions to which this SLI is relevant. Telemetry
|
196
|
+
# from other API versions will not be used to calculate performance for this
|
197
|
+
# SLI. If omitted, this SLI applies to all API versions. For service types
|
198
|
+
# that don't support breaking down by version, setting this field will result
|
199
|
+
# in an error.
|
200
|
+
# @!attribute [rw] availability
|
201
|
+
# @return [Google::Monitoring::V3::BasicSli::AvailabilityCriteria]
|
202
|
+
# Good service is defined to be the count of requests made to this service
|
203
|
+
# that return successfully.
|
204
|
+
# @!attribute [rw] latency
|
205
|
+
# @return [Google::Monitoring::V3::BasicSli::LatencyCriteria]
|
206
|
+
# Good service is defined to be the count of requests made to this service
|
207
|
+
# that are fast enough with respect to `latency.threshold`.
|
208
|
+
class BasicSli
|
209
|
+
# Future parameters for the availability SLI.
|
210
|
+
class AvailabilityCriteria; end
|
211
|
+
|
212
|
+
# Parameters for a latency threshold SLI.
|
213
|
+
# @!attribute [rw] threshold
|
214
|
+
# @return [Google::Protobuf::Duration]
|
215
|
+
# Good service is defined to be the count of requests made to this service
|
216
|
+
# that return in no more than `threshold`.
|
217
|
+
class LatencyCriteria; end
|
218
|
+
end
|
219
|
+
|
220
|
+
# Range of numerical values, inclusive of `min` and exclusive of `max`. If the
|
221
|
+
# open range "< range.max" is desired, set `range.min = -infinity`. If the open
|
222
|
+
# range ">= range.min" is desired, set `range.max = infinity`.
|
223
|
+
# @!attribute [rw] min
|
224
|
+
# @return [Float]
|
225
|
+
# Range minimum.
|
226
|
+
# @!attribute [rw] max
|
227
|
+
# @return [Float]
|
228
|
+
# Range maximum.
|
229
|
+
class Range; end
|
230
|
+
|
231
|
+
# Service Level Indicators for which atomic units of service are counted
|
232
|
+
# directly.
|
233
|
+
# @!attribute [rw] good_total_ratio
|
234
|
+
# @return [Google::Monitoring::V3::TimeSeriesRatio]
|
235
|
+
# `good_total_ratio` is used when the ratio of `good_service` to
|
236
|
+
# `total_service` is computed from two `TimeSeries`.
|
237
|
+
# @!attribute [rw] distribution_cut
|
238
|
+
# @return [Google::Monitoring::V3::DistributionCut]
|
239
|
+
# `distribution_cut` is used when `good_service` is a count of values
|
240
|
+
# aggregated in a `Distribution` that fall into a good range. The
|
241
|
+
# `total_service` is the total count of all values aggregated in the
|
242
|
+
# `Distribution`.
|
243
|
+
class RequestBasedSli; end
|
244
|
+
|
245
|
+
# A `TimeSeriesRatio` specifies two `TimeSeries` to use for computing the
|
246
|
+
# `good_service / total_service` ratio. The specified `TimeSeries` must have
|
247
|
+
# `ValueType = DOUBLE` or `ValueType = INT64` and must have `MetricKind =
|
248
|
+
# DELTA` or `MetricKind = CUMULATIVE`. The `TimeSeriesRatio` must specify
|
249
|
+
# exactly two of good, bad, and total, and the relationship `good_service +
|
250
|
+
# bad_service = total_service` will be assumed.
|
251
|
+
# @!attribute [rw] good_service_filter
|
252
|
+
# @return [String]
|
253
|
+
# A [monitoring filter](https://cloud.google.com/monitoring/api/v3/filters)
|
254
|
+
# specifying a `TimeSeries` quantifying good service provided. Must have
|
255
|
+
# `ValueType = DOUBLE` or `ValueType = INT64` and must have `MetricKind =
|
256
|
+
# DELTA` or `MetricKind = CUMULATIVE`.
|
257
|
+
# @!attribute [rw] bad_service_filter
|
258
|
+
# @return [String]
|
259
|
+
# A [monitoring filter](https://cloud.google.com/monitoring/api/v3/filters)
|
260
|
+
# specifying a `TimeSeries` quantifying bad service, either demanded service
|
261
|
+
# that was not provided or demanded service that was of inadequate quality.
|
262
|
+
# Must have `ValueType = DOUBLE` or `ValueType = INT64` and must have
|
263
|
+
# `MetricKind = DELTA` or `MetricKind = CUMULATIVE`.
|
264
|
+
# @!attribute [rw] total_service_filter
|
265
|
+
# @return [String]
|
266
|
+
# A [monitoring filter](https://cloud.google.com/monitoring/api/v3/filters)
|
267
|
+
# specifying a `TimeSeries` quantifying total demanded service. Must have
|
268
|
+
# `ValueType = DOUBLE` or `ValueType = INT64` and must have `MetricKind =
|
269
|
+
# DELTA` or `MetricKind = CUMULATIVE`.
|
270
|
+
class TimeSeriesRatio; end
|
271
|
+
|
272
|
+
# A `DistributionCut` defines a `TimeSeries` and thresholds used for measuring
|
273
|
+
# good service and total service. The `TimeSeries` must have `ValueType =
|
274
|
+
# DISTRIBUTION` and `MetricKind = DELTA` or `MetricKind = CUMULATIVE`. The
|
275
|
+
# computed `good_service` will be the count of values x in the `Distribution`
|
276
|
+
# such that `range.min <= x < range.max`.
|
277
|
+
# @!attribute [rw] distribution_filter
|
278
|
+
# @return [String]
|
279
|
+
# A [monitoring filter](https://cloud.google.com/monitoring/api/v3/filters)
|
280
|
+
# specifying a `TimeSeries` aggregating values. Must have `ValueType =
|
281
|
+
# DISTRIBUTION` and `MetricKind = DELTA` or `MetricKind = CUMULATIVE`.
|
282
|
+
# @!attribute [rw] range
|
283
|
+
# @return [Google::Monitoring::V3::Range]
|
284
|
+
# Range of values considered "good." For a one-sided range, set one bound to
|
285
|
+
# an infinite value.
|
286
|
+
class DistributionCut; end
|
287
|
+
|
288
|
+
# A `WindowsBasedSli` defines `good_service` as the count of time windows for
|
289
|
+
# which the provided service was of good quality. Criteria for determining
|
290
|
+
# if service was good are embedded in the `window_criterion`.
|
291
|
+
# @!attribute [rw] good_bad_metric_filter
|
292
|
+
# @return [String]
|
293
|
+
# A [monitoring filter](https://cloud.google.com/monitoring/api/v3/filters)
|
294
|
+
# specifying a `TimeSeries` with `ValueType = BOOL`. The window is good if
|
295
|
+
# any `true` values appear in the window.
|
296
|
+
# @!attribute [rw] good_total_ratio_threshold
|
297
|
+
# @return [Google::Monitoring::V3::WindowsBasedSli::PerformanceThreshold]
|
298
|
+
# A window is good if its `performance` is high enough.
|
299
|
+
# @!attribute [rw] metric_mean_in_range
|
300
|
+
# @return [Google::Monitoring::V3::WindowsBasedSli::MetricRange]
|
301
|
+
# A window is good if the metric's value is in a good range, averaged
|
302
|
+
# across returned streams.
|
303
|
+
# @!attribute [rw] metric_sum_in_range
|
304
|
+
# @return [Google::Monitoring::V3::WindowsBasedSli::MetricRange]
|
305
|
+
# A window is good if the metric's value is in a good range, summed across
|
306
|
+
# returned streams.
|
307
|
+
# @!attribute [rw] window_period
|
308
|
+
# @return [Google::Protobuf::Duration]
|
309
|
+
# Duration over which window quality is evaluated. Must be an integer
|
310
|
+
# fraction of a day and at least `60s`.
|
311
|
+
class WindowsBasedSli
|
312
|
+
# A `PerformanceThreshold` is used when each window is good when that window
|
313
|
+
# has a sufficiently high `performance`.
|
314
|
+
# @!attribute [rw] performance
|
315
|
+
# @return [Google::Monitoring::V3::RequestBasedSli]
|
316
|
+
# `RequestBasedSli` to evaluate to judge window quality.
|
317
|
+
# @!attribute [rw] basic_sli_performance
|
318
|
+
# @return [Google::Monitoring::V3::BasicSli]
|
319
|
+
# `BasicSli` to evaluate to judge window quality.
|
320
|
+
# @!attribute [rw] threshold
|
321
|
+
# @return [Float]
|
322
|
+
# If window `performance >= threshold`, the window is counted as good.
|
323
|
+
class PerformanceThreshold; end
|
324
|
+
|
325
|
+
# A `MetricRange` is used when each window is good when the value x of a
|
326
|
+
# single `TimeSeries` satisfies `range.min <= x < range.max`. The provided
|
327
|
+
# `TimeSeries` must have `ValueType = INT64` or `ValueType = DOUBLE` and
|
328
|
+
# `MetricKind = GAUGE`.
|
329
|
+
# @!attribute [rw] time_series
|
330
|
+
# @return [String]
|
331
|
+
# A [monitoring filter](https://cloud.google.com/monitoring/api/v3/filters)
|
332
|
+
# specifying the `TimeSeries` to use for evaluating window quality.
|
333
|
+
# @!attribute [rw] range
|
334
|
+
# @return [Google::Monitoring::V3::Range]
|
335
|
+
# Range of values considered "good." For a one-sided range, set one bound
|
336
|
+
# to an infinite value.
|
337
|
+
class MetricRange; end
|
338
|
+
end
|
339
|
+
end
|
340
|
+
end
|
341
|
+
end
|
@@ -0,0 +1,187 @@
|
|
1
|
+
# Copyright 2019 Google LLC
|
2
|
+
#
|
3
|
+
# Licensed under the Apache License, Version 2.0 (the "License");
|
4
|
+
# you may not use this file except in compliance with the License.
|
5
|
+
# You may obtain a copy of the License at
|
6
|
+
#
|
7
|
+
# https://www.apache.org/licenses/LICENSE-2.0
|
8
|
+
#
|
9
|
+
# Unless required by applicable law or agreed to in writing, software
|
10
|
+
# distributed under the License is distributed on an "AS IS" BASIS,
|
11
|
+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
12
|
+
# See the License for the specific language governing permissions and
|
13
|
+
# limitations under the License.
|
14
|
+
|
15
|
+
|
16
|
+
module Google
|
17
|
+
module Monitoring
|
18
|
+
module V3
|
19
|
+
# The `CreateService` request.
|
20
|
+
# @!attribute [rw] parent
|
21
|
+
# @return [String]
|
22
|
+
# Resource name of the parent workspace.
|
23
|
+
# Of the form `projects/{project_id}`.
|
24
|
+
# @!attribute [rw] service_id
|
25
|
+
# @return [String]
|
26
|
+
# Optional. The Service id to use for this Service. If omitted, an id will be
|
27
|
+
# generated instead. Must match the pattern [a-z0-9\-]+
|
28
|
+
# @!attribute [rw] service
|
29
|
+
# @return [Google::Monitoring::V3::Service]
|
30
|
+
# The `Service` to create.
|
31
|
+
class CreateServiceRequest; end
|
32
|
+
|
33
|
+
# The `GetService` request.
|
34
|
+
# @!attribute [rw] name
|
35
|
+
# @return [String]
|
36
|
+
# Resource name of the `Service`.
|
37
|
+
# Of the form `projects/{project_id}/services/{service_id}`.
|
38
|
+
class GetServiceRequest; end
|
39
|
+
|
40
|
+
# The `ListServices` request.
|
41
|
+
# @!attribute [rw] parent
|
42
|
+
# @return [String]
|
43
|
+
# Resource name of the parent `Workspace`.
|
44
|
+
# Of the form `projects/{project_id}`.
|
45
|
+
# @!attribute [rw] filter
|
46
|
+
# @return [String]
|
47
|
+
# A filter specifying what `Service`s to return. The filter currently
|
48
|
+
# supports the following fields:
|
49
|
+
#
|
50
|
+
# * `identifier_case`
|
51
|
+
# * `app_engine.module_id`
|
52
|
+
# * `cloud_endpoints.service`
|
53
|
+
# * `cluster_istio.location`
|
54
|
+
# * `cluster_istio.cluster_name`
|
55
|
+
# * `cluster_istio.service_namespace`
|
56
|
+
# * `cluster_istio.service_name`
|
57
|
+
#
|
58
|
+
# `identifier_case` refers to which option in the identifier oneof is
|
59
|
+
# populated. For example, the filter `identifier_case = "CUSTOM"` would match
|
60
|
+
# all services with a value for the `custom` field. Valid options are
|
61
|
+
# "CUSTOM", "APP_ENGINE", "CLOUD_ENDPOINTS", and "CLUSTER_ISTIO".
|
62
|
+
# @!attribute [rw] page_size
|
63
|
+
# @return [Integer]
|
64
|
+
# A non-negative number that is the maximum number of results to return.
|
65
|
+
# When 0, use default page size.
|
66
|
+
# @!attribute [rw] page_token
|
67
|
+
# @return [String]
|
68
|
+
# If this field is not empty then it must contain the `nextPageToken` value
|
69
|
+
# returned by a previous call to this method. Using this field causes the
|
70
|
+
# method to return additional results from the previous method call.
|
71
|
+
class ListServicesRequest; end
|
72
|
+
|
73
|
+
# The `ListServices` response.
|
74
|
+
# @!attribute [rw] services
|
75
|
+
# @return [Array<Google::Monitoring::V3::Service>]
|
76
|
+
# The `Service`s matching the specified filter.
|
77
|
+
# @!attribute [rw] next_page_token
|
78
|
+
# @return [String]
|
79
|
+
# If there are more results than have been returned, then this field is set
|
80
|
+
# to a non-empty value. To see the additional results,
|
81
|
+
# use that value as `pageToken` in the next call to this method.
|
82
|
+
class ListServicesResponse; end
|
83
|
+
|
84
|
+
# The `UpdateService` request.
|
85
|
+
# @!attribute [rw] service
|
86
|
+
# @return [Google::Monitoring::V3::Service]
|
87
|
+
# The `Service` to draw updates from.
|
88
|
+
# The given `name` specifies the resource to update.
|
89
|
+
# @!attribute [rw] update_mask
|
90
|
+
# @return [Google::Protobuf::FieldMask]
|
91
|
+
# A set of field paths defining which fields to use for the update.
|
92
|
+
class UpdateServiceRequest; end
|
93
|
+
|
94
|
+
# The `DeleteService` request.
|
95
|
+
# @!attribute [rw] name
|
96
|
+
# @return [String]
|
97
|
+
# Resource name of the `Service` to delete.
|
98
|
+
# Of the form `projects/{project_id}/service/{service_id}`.
|
99
|
+
class DeleteServiceRequest; end
|
100
|
+
|
101
|
+
# The `CreateServiceLevelObjective` request.
|
102
|
+
# @!attribute [rw] parent
|
103
|
+
# @return [String]
|
104
|
+
# Resource name of the parent `Service`.
|
105
|
+
# Of the form `projects/{project_id}/services/{service_id}`.
|
106
|
+
# @!attribute [rw] service_level_objective_id
|
107
|
+
# @return [String]
|
108
|
+
# Optional. The ServiceLevelObjective id to use for this
|
109
|
+
# ServiceLevelObjective. If omitted, an id will be generated instead. Must
|
110
|
+
# match the pattern [a-z0-9\-]+
|
111
|
+
# @!attribute [rw] service_level_objective
|
112
|
+
# @return [Google::Monitoring::V3::ServiceLevelObjective]
|
113
|
+
# The `ServiceLevelObjective` to create.
|
114
|
+
# The provided `name` will be respected if no `ServiceLevelObjective` exists
|
115
|
+
# with this name.
|
116
|
+
class CreateServiceLevelObjectiveRequest; end
|
117
|
+
|
118
|
+
# The `GetServiceLevelObjective` request.
|
119
|
+
# @!attribute [rw] name
|
120
|
+
# @return [String]
|
121
|
+
# Resource name of the `ServiceLevelObjective` to get.
|
122
|
+
# Of the form
|
123
|
+
# `projects/{project_id}/services/{service_id}/serviceLevelObjectives/{slo_name}`.
|
124
|
+
# @!attribute [rw] view
|
125
|
+
# @return [Google::Monitoring::V3::ServiceLevelObjective::View]
|
126
|
+
# View of the `ServiceLevelObjective` to return. If `DEFAULT`, return the
|
127
|
+
# `ServiceLevelObjective` as originally defined. If `EXPLICIT` and the
|
128
|
+
# `ServiceLevelObjective` is defined in terms of a `BasicSli`, replace the
|
129
|
+
# `BasicSli` with a `RequestBasedSli` spelling out how the SLI is computed.
|
130
|
+
class GetServiceLevelObjectiveRequest; end
|
131
|
+
|
132
|
+
# The `ListServiceLevelObjectives` request.
|
133
|
+
# @!attribute [rw] parent
|
134
|
+
# @return [String]
|
135
|
+
# Resource name of the parent `Service`.
|
136
|
+
# Of the form `projects/{project_id}/services/{service_id}`.
|
137
|
+
# @!attribute [rw] filter
|
138
|
+
# @return [String]
|
139
|
+
# A filter specifying what `ServiceLevelObjective`s to return.
|
140
|
+
# @!attribute [rw] page_size
|
141
|
+
# @return [Integer]
|
142
|
+
# A non-negative number that is the maximum number of results to return.
|
143
|
+
# When 0, use default page size.
|
144
|
+
# @!attribute [rw] page_token
|
145
|
+
# @return [String]
|
146
|
+
# If this field is not empty then it must contain the `nextPageToken` value
|
147
|
+
# returned by a previous call to this method. Using this field causes the
|
148
|
+
# method to return additional results from the previous method call.
|
149
|
+
# @!attribute [rw] view
|
150
|
+
# @return [Google::Monitoring::V3::ServiceLevelObjective::View]
|
151
|
+
# View of the `ServiceLevelObjective`s to return. If `DEFAULT`, return each
|
152
|
+
# `ServiceLevelObjective` as originally defined. If `EXPLICIT` and the
|
153
|
+
# `ServiceLevelObjective` is defined in terms of a `BasicSli`, replace the
|
154
|
+
# `BasicSli` with a `RequestBasedSli` spelling out how the SLI is computed.
|
155
|
+
class ListServiceLevelObjectivesRequest; end
|
156
|
+
|
157
|
+
# The `ListServiceLevelObjectives` response.
|
158
|
+
# @!attribute [rw] service_level_objectives
|
159
|
+
# @return [Array<Google::Monitoring::V3::ServiceLevelObjective>]
|
160
|
+
# The `ServiceLevelObjective`s matching the specified filter.
|
161
|
+
# @!attribute [rw] next_page_token
|
162
|
+
# @return [String]
|
163
|
+
# If there are more results than have been returned, then this field is set
|
164
|
+
# to a non-empty value. To see the additional results,
|
165
|
+
# use that value as `pageToken` in the next call to this method.
|
166
|
+
class ListServiceLevelObjectivesResponse; end
|
167
|
+
|
168
|
+
# The `UpdateServiceLevelObjective` request.
|
169
|
+
# @!attribute [rw] service_level_objective
|
170
|
+
# @return [Google::Monitoring::V3::ServiceLevelObjective]
|
171
|
+
# The `ServiceLevelObjective` to draw updates from.
|
172
|
+
# The given `name` specifies the resource to update.
|
173
|
+
# @!attribute [rw] update_mask
|
174
|
+
# @return [Google::Protobuf::FieldMask]
|
175
|
+
# A set of field paths defining which fields to use for the update.
|
176
|
+
class UpdateServiceLevelObjectiveRequest; end
|
177
|
+
|
178
|
+
# The `DeleteServiceLevelObjective` request.
|
179
|
+
# @!attribute [rw] name
|
180
|
+
# @return [String]
|
181
|
+
# Resource name of the `ServiceLevelObjective` to delete.
|
182
|
+
# Of the form
|
183
|
+
# `projects/{project_id}/services/{service_id}/serviceLevelObjectives/{slo_name}`.
|
184
|
+
class DeleteServiceLevelObjectiveRequest; end
|
185
|
+
end
|
186
|
+
end
|
187
|
+
end
|