google-cloud-service_management-v1 0.3.0 → 0.3.4

Sign up to get free protection for your applications and to get access to all the features.
@@ -36,6 +36,25 @@ module Google
36
36
  #
37
37
  # Available context types are defined in package
38
38
  # `google.rpc.context`.
39
+ #
40
+ # This also provides mechanism to allowlist any protobuf message extension that
41
+ # can be sent in grpc metadata using “x-goog-ext-<extension_id>-bin” and
42
+ # “x-goog-ext-<extension_id>-jspb” format. For example, list any service
43
+ # specific protobuf types that can appear in grpc metadata as follows in your
44
+ # yaml file:
45
+ #
46
+ # Example:
47
+ #
48
+ # context:
49
+ # rules:
50
+ # - selector: "google.example.library.v1.LibraryService.CreateBook"
51
+ # allowed_request_extensions:
52
+ # - google.foo.v1.NewExtension
53
+ # allowed_response_extensions:
54
+ # - google.foo.v1.NewExtension
55
+ #
56
+ # You can also specify extension ID instead of fully qualified extension name
57
+ # here.
39
58
  # @!attribute [rw] rules
40
59
  # @return [::Array<::Google::Api::ContextRule>]
41
60
  # A list of RPC context rules that apply to individual API methods.
@@ -59,6 +78,14 @@ module Google
59
78
  # @!attribute [rw] provided
60
79
  # @return [::Array<::String>]
61
80
  # A list of full type names of provided contexts.
81
+ # @!attribute [rw] allowed_request_extensions
82
+ # @return [::Array<::String>]
83
+ # A list of full type names or extension IDs of extensions allowed in grpc
84
+ # side channel from client to backend.
85
+ # @!attribute [rw] allowed_response_extensions
86
+ # @return [::Array<::String>]
87
+ # A list of full type names or extension IDs of extensions allowed in grpc
88
+ # side channel from backend to client.
62
89
  class ContextRule
63
90
  include ::Google::Protobuf::MessageExts
64
91
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -89,6 +89,12 @@ module Google
89
89
  # @!attribute [rw] documentation_root_url
90
90
  # @return [::String]
91
91
  # The URL to the root of documentation.
92
+ # @!attribute [rw] service_root_url
93
+ # @return [::String]
94
+ # Specifies the service root url if the default one (the service name
95
+ # from the yaml file) is not suitable. This can be seen in any fully
96
+ # specified service urls as well as sections that show a base that other
97
+ # urls are relative to.
92
98
  # @!attribute [rw] overview
93
99
  # @return [::String]
94
100
  # Declares a single overview page. For example:
@@ -115,16 +121,16 @@ module Google
115
121
  # The selector is a comma-separated list of patterns. Each pattern is a
116
122
  # qualified name of the element which may end in "*", indicating a wildcard.
117
123
  # Wildcards are only allowed at the end and for a whole component of the
118
- # qualified name, i.e. "foo.*" is ok, but not "foo.b*" or "foo.*.bar". To
119
- # specify a default for all applicable elements, the whole pattern "*"
120
- # is used.
124
+ # qualified name, i.e. "foo.*" is ok, but not "foo.b*" or "foo.*.bar". A
125
+ # wildcard will match one or more components. To specify a default for all
126
+ # applicable elements, the whole pattern "*" is used.
121
127
  # @!attribute [rw] description
122
128
  # @return [::String]
123
129
  # Description of the selected API(s).
124
130
  # @!attribute [rw] deprecation_description
125
131
  # @return [::String]
126
- # Deprecation description of the selected element(s). It can be provided if an
127
- # element is marked as `deprecated`.
132
+ # Deprecation description of the selected element(s). It can be provided if
133
+ # an element is marked as `deprecated`.
128
134
  class DocumentationRule
129
135
  include ::Google::Protobuf::MessageExts
130
136
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -150,8 +156,8 @@ module Google
150
156
  # `[Java][Tutorial.Java]`.
151
157
  # @!attribute [rw] content
152
158
  # @return [::String]
153
- # The Markdown content of the page. You can use <code>&#40;== include \\{path} ==&#41;</code>
154
- # to include content from a Markdown file.
159
+ # The Markdown content of the page. You can use <code>&#40;== include \\{path}
160
+ # ==&#41;</code> to include content from a Markdown file.
155
161
  # @!attribute [rw] subpages
156
162
  # @return [::Array<::Google::Api::Page>]
157
163
  # Subpages of this page. The order of subpages specified here will be
@@ -19,10 +19,10 @@
19
19
 
20
20
  module Google
21
21
  module Api
22
- # `Endpoint` describes a network endpoint that serves a set of APIs.
23
- # A service may expose any number of endpoints, and all endpoints share the
24
- # same service configuration, such as quota configuration and monitoring
25
- # configuration.
22
+ # `Endpoint` describes a network endpoint of a service that serves a set of
23
+ # APIs. It is commonly known as a service endpoint. A service may expose
24
+ # any number of service endpoints, and all service endpoints share the same
25
+ # service definition, such as quota limits and monitoring metrics.
26
26
  #
27
27
  # Example service configuration:
28
28
  #
@@ -40,20 +40,20 @@ module Google
40
40
  # The canonical name of this endpoint.
41
41
  # @!attribute [rw] aliases
42
42
  # @return [::Array<::String>]
43
+ # Unimplemented. Dot not use.
44
+ #
43
45
  # DEPRECATED: This field is no longer supported. Instead of using aliases,
44
46
  # please specify multiple {::Google::Api::Endpoint google.api.Endpoint} for each of the intended
45
47
  # aliases.
46
48
  #
47
49
  # Additional names that this endpoint will be hosted on.
48
- # @!attribute [rw] features
49
- # @return [::Array<::String>]
50
- # The list of features enabled on this endpoint.
51
50
  # @!attribute [rw] target
52
51
  # @return [::String]
53
52
  # The specification of an Internet routable address of API frontend that will
54
- # handle requests to this [API Endpoint](https://cloud.google.com/apis/design/glossary).
55
- # It should be either a valid IPv4 address or a fully-qualified domain name.
56
- # For example, "8.8.8.8" or "myservice.appspot.com".
53
+ # handle requests to this [API
54
+ # Endpoint](https://cloud.google.com/apis/design/glossary). It should be
55
+ # either a valid IPv4 address or a fully-qualified domain name. For example,
56
+ # "8.8.8.8" or "myservice.appspot.com".
57
57
  # @!attribute [rw] allow_cors
58
58
  # @return [::Boolean]
59
59
  # Allowing
@@ -57,9 +57,15 @@ module Google
57
57
 
58
58
  # Denotes that a (repeated) field is an unordered list.
59
59
  # This indicates that the service may provide the elements of the list
60
- # in any arbitrary order, rather than the order the user originally
60
+ # in any arbitrary order, rather than the order the user originally
61
61
  # provided. Additionally, the list's order may or may not be stable.
62
62
  UNORDERED_LIST = 6
63
+
64
+ # Denotes that this field returns a non-empty default value if not set.
65
+ # This indicates that if the user provides the empty value in a request,
66
+ # a non-empty value will be returned. The user will not be aware of what
67
+ # non-empty value to expect.
68
+ NON_EMPTY_DEFAULT = 7
63
69
  end
64
70
  end
65
71
  end
@@ -0,0 +1,71 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Copyright 2021 Google LLC
4
+ #
5
+ # Licensed under the Apache License, Version 2.0 (the "License");
6
+ # you may not use this file except in compliance with the License.
7
+ # You may obtain a copy of the License at
8
+ #
9
+ # https://www.apache.org/licenses/LICENSE-2.0
10
+ #
11
+ # Unless required by applicable law or agreed to in writing, software
12
+ # distributed under the License is distributed on an "AS IS" BASIS,
13
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ # See the License for the specific language governing permissions and
15
+ # limitations under the License.
16
+
17
+ # Auto-generated by gapic-generator-ruby. DO NOT EDIT!
18
+
19
+
20
+ module Google
21
+ module Api
22
+ # The launch stage as defined by [Google Cloud Platform
23
+ # Launch Stages](http://cloud.google.com/terms/launch-stages).
24
+ module LaunchStage
25
+ # Do not use this default value.
26
+ LAUNCH_STAGE_UNSPECIFIED = 0
27
+
28
+ # The feature is not yet implemented. Users can not use it.
29
+ UNIMPLEMENTED = 6
30
+
31
+ # Prelaunch features are hidden from users and are only visible internally.
32
+ PRELAUNCH = 7
33
+
34
+ # Early Access features are limited to a closed group of testers. To use
35
+ # these features, you must sign up in advance and sign a Trusted Tester
36
+ # agreement (which includes confidentiality provisions). These features may
37
+ # be unstable, changed in backward-incompatible ways, and are not
38
+ # guaranteed to be released.
39
+ EARLY_ACCESS = 1
40
+
41
+ # Alpha is a limited availability test for releases before they are cleared
42
+ # for widespread use. By Alpha, all significant design issues are resolved
43
+ # and we are in the process of verifying functionality. Alpha customers
44
+ # need to apply for access, agree to applicable terms, and have their
45
+ # projects allowlisted. Alpha releases don’t have to be feature complete,
46
+ # no SLAs are provided, and there are no technical support obligations, but
47
+ # they will be far enough along that customers can actually use them in
48
+ # test environments or for limited-use tests -- just like they would in
49
+ # normal production cases.
50
+ ALPHA = 2
51
+
52
+ # Beta is the point at which we are ready to open a release for any
53
+ # customer to use. There are no SLA or technical support obligations in a
54
+ # Beta release. Products will be complete from a feature perspective, but
55
+ # may have some open outstanding issues. Beta releases are suitable for
56
+ # limited production use cases.
57
+ BETA = 3
58
+
59
+ # GA features are open to all developers and are considered stable and
60
+ # fully qualified for production use.
61
+ GA = 4
62
+
63
+ # Deprecated features are scheduled to be shut down and removed. For more
64
+ # information, see the “Deprecation Policy” section of our [Terms of
65
+ # Service](https://cloud.google.com/terms/)
66
+ # and the [Google Cloud Platform Subject to the Deprecation
67
+ # Policy](https://cloud.google.com/terms/deprecation) documentation.
68
+ DEPRECATED = 5
69
+ end
70
+ end
71
+ end
@@ -28,11 +28,12 @@ module Google
28
28
  # @!attribute [rw] type
29
29
  # @return [::String]
30
30
  # The metric type, including its DNS name prefix. The type is not
31
- # URL-encoded. All user-defined custom metric types have the DNS name
32
- # `custom.googleapis.com`. Metric types should use a natural hierarchical
33
- # grouping. For example:
31
+ # URL-encoded. All user-defined metric types have the DNS name
32
+ # `custom.googleapis.com` or `external.googleapis.com`. Metric types should
33
+ # use a natural hierarchical grouping. For example:
34
34
  #
35
35
  # "custom.googleapis.com/invoice/paid/amount"
36
+ # "external.googleapis.com/prometheus/up"
36
37
  # "appengine.googleapis.com/http/server/response_latencies"
37
38
  # @!attribute [rw] labels
38
39
  # @return [::Array<::Google::Api::LabelDescriptor>]
@@ -52,10 +53,28 @@ module Google
52
53
  # Some combinations of `metric_kind` and `value_type` might not be supported.
53
54
  # @!attribute [rw] unit
54
55
  # @return [::String]
55
- # The unit in which the metric value is reported. It is only applicable
56
- # if the `value_type` is `INT64`, `DOUBLE`, or `DISTRIBUTION`. The
57
- # supported units are a subset of [The Unified Code for Units of
58
- # Measure](http://unitsofmeasure.org/ucum.html) standard:
56
+ # The units in which the metric value is reported. It is only applicable
57
+ # if the `value_type` is `INT64`, `DOUBLE`, or `DISTRIBUTION`. The `unit`
58
+ # defines the representation of the stored metric values.
59
+ #
60
+ # Different systems might scale the values to be more easily displayed (so a
61
+ # value of `0.02kBy` _might_ be displayed as `20By`, and a value of
62
+ # `3523kBy` _might_ be displayed as `3.5MBy`). However, if the `unit` is
63
+ # `kBy`, then the value of the metric is always in thousands of bytes, no
64
+ # matter how it might be displayed.
65
+ #
66
+ # If you want a custom metric to record the exact number of CPU-seconds used
67
+ # by a job, you can create an `INT64 CUMULATIVE` metric whose `unit` is
68
+ # `s{CPU}` (or equivalently `1s{CPU}` or just `s`). If the job uses 12,005
69
+ # CPU-seconds, then the value is written as `12005`.
70
+ #
71
+ # Alternatively, if you want a custom metric to record data in a more
72
+ # granular way, you can create a `DOUBLE CUMULATIVE` metric whose `unit` is
73
+ # `ks{CPU}`, and then write the value `12.005` (which is `12005/1000`),
74
+ # or use `Kis{CPU}` and write `11.723` (which is `12005/1024`).
75
+ #
76
+ # The supported units are a subset of [The Unified Code for Units of
77
+ # Measure](https://unitsofmeasure.org/ucum.html) standard:
59
78
  #
60
79
  # **Basic units (UNIT)**
61
80
  #
@@ -65,36 +84,44 @@ module Google
65
84
  # * `min` minute
66
85
  # * `h` hour
67
86
  # * `d` day
87
+ # * `1` dimensionless
68
88
  #
69
89
  # **Prefixes (PREFIX)**
70
90
  #
71
- # * `k` kilo (10**3)
72
- # * `M` mega (10**6)
73
- # * `G` giga (10**9)
74
- # * `T` tera (10**12)
75
- # * `P` peta (10**15)
76
- # * `E` exa (10**18)
77
- # * `Z` zetta (10**21)
78
- # * `Y` yotta (10**24)
79
- # * `m` milli (10**-3)
80
- # * `u` micro (10**-6)
81
- # * `n` nano (10**-9)
82
- # * `p` pico (10**-12)
83
- # * `f` femto (10**-15)
84
- # * `a` atto (10**-18)
85
- # * `z` zepto (10**-21)
86
- # * `y` yocto (10**-24)
87
- # * `Ki` kibi (2**10)
88
- # * `Mi` mebi (2**20)
89
- # * `Gi` gibi (2**30)
90
- # * `Ti` tebi (2**40)
91
+ # * `k` kilo (10^3)
92
+ # * `M` mega (10^6)
93
+ # * `G` giga (10^9)
94
+ # * `T` tera (10^12)
95
+ # * `P` peta (10^15)
96
+ # * `E` exa (10^18)
97
+ # * `Z` zetta (10^21)
98
+ # * `Y` yotta (10^24)
99
+ #
100
+ # * `m` milli (10^-3)
101
+ # * `u` micro (10^-6)
102
+ # * `n` nano (10^-9)
103
+ # * `p` pico (10^-12)
104
+ # * `f` femto (10^-15)
105
+ # * `a` atto (10^-18)
106
+ # * `z` zepto (10^-21)
107
+ # * `y` yocto (10^-24)
108
+ #
109
+ # * `Ki` kibi (2^10)
110
+ # * `Mi` mebi (2^20)
111
+ # * `Gi` gibi (2^30)
112
+ # * `Ti` tebi (2^40)
113
+ # * `Pi` pebi (2^50)
91
114
  #
92
115
  # **Grammar**
93
116
  #
94
117
  # The grammar also includes these connectors:
95
118
  #
96
- # * `/` division (as an infix operator, e.g. `1/s`).
97
- # * `.` multiplication (as an infix operator, e.g. `GBy.d`)
119
+ # * `/` division or ratio (as an infix operator). For examples,
120
+ # `kBy/{email}` or `MiBy/10ms` (although you should almost never
121
+ # have `/s` in a metric `unit`; rates should always be computed at
122
+ # query time from the underlying cumulative or delta value).
123
+ # * `.` multiplication or composition (as an infix operator). For
124
+ # examples, `GBy.d` or `k{watt}.h`.
98
125
  #
99
126
  # The grammar for a unit is as follows:
100
127
  #
@@ -109,14 +136,25 @@ module Google
109
136
  #
110
137
  # Notes:
111
138
  #
112
- # * `Annotation` is just a comment if it follows a `UNIT` and is
113
- # equivalent to `1` if it is used alone. For examples,
114
- # `{requests}/s == 1/s`, `By{transmitted}/s == By/s`.
139
+ # * `Annotation` is just a comment if it follows a `UNIT`. If the annotation
140
+ # is used alone, then the unit is equivalent to `1`. For examples,
141
+ # `{request}/s == 1/s`, `By{transmitted}/s == By/s`.
115
142
  # * `NAME` is a sequence of non-blank printable ASCII characters not
116
- # containing '\\{' or '}'.
117
- # * `1` represents dimensionless value 1, such as in `1/s`.
118
- # * `%` represents dimensionless value 1/100, and annotates values giving
119
- # a percentage.
143
+ # containing `{` or `}`.
144
+ # * `1` represents a unitary [dimensionless
145
+ # unit](https://en.wikipedia.org/wiki/Dimensionless_quantity) of 1, such
146
+ # as in `1/s`. It is typically used when none of the basic units are
147
+ # appropriate. For example, "new users per day" can be represented as
148
+ # `1/d` or `{new-users}/d` (and a metric value `5` would mean "5 new
149
+ # users). Alternatively, "thousands of page views per day" would be
150
+ # represented as `1000/d` or `k1/d` or `k{page_views}/d` (and a metric
151
+ # value of `5.3` would mean "5300 page views per day").
152
+ # * `%` represents dimensionless value of 1/100, and annotates values giving
153
+ # a percentage (so the metric values are typically in the range of 0..100,
154
+ # and a metric value `3` means "3 percent").
155
+ # * `10^2.%` indicates a metric contains a ratio, typically in the range
156
+ # 0..1, that will be multiplied by 100 and displayed as a percentage
157
+ # (so a metric value `0.03` means "3 percent").
120
158
  # @!attribute [rw] description
121
159
  # @return [::String]
122
160
  # A detailed description of the metric, which can be used in documentation.
@@ -126,11 +164,46 @@ module Google
126
164
  # Use sentence case without an ending period, for example "Request count".
127
165
  # This field is optional but it is recommended to be set for any metrics
128
166
  # associated with user-visible concepts, such as Quota.
167
+ # @!attribute [rw] metadata
168
+ # @return [::Google::Api::MetricDescriptor::MetricDescriptorMetadata]
169
+ # Optional. Metadata which can be used to guide usage of the metric.
170
+ # @!attribute [rw] launch_stage
171
+ # @return [::Google::Api::LaunchStage]
172
+ # Optional. The launch stage of the metric definition.
173
+ # @!attribute [rw] monitored_resource_types
174
+ # @return [::Array<::String>]
175
+ # Read-only. If present, then a [time
176
+ # series][google.monitoring.v3.TimeSeries], which is identified partially by
177
+ # a metric type and a {::Google::Api::MonitoredResourceDescriptor MonitoredResourceDescriptor}, that is associated
178
+ # with this metric type can only be associated with one of the monitored
179
+ # resource types listed here.
129
180
  class MetricDescriptor
130
181
  include ::Google::Protobuf::MessageExts
131
182
  extend ::Google::Protobuf::MessageExts::ClassMethods
132
183
 
184
+ # Additional annotations that can be used to guide the usage of a metric.
185
+ # @!attribute [rw] launch_stage
186
+ # @return [::Google::Api::LaunchStage]
187
+ # Deprecated. Must use the {::Google::Api::MetricDescriptor#launch_stage MetricDescriptor.launch_stage} instead.
188
+ # @!attribute [rw] sample_period
189
+ # @return [::Google::Protobuf::Duration]
190
+ # The sampling period of metric data points. For metrics which are written
191
+ # periodically, consecutive data points are stored at this time interval,
192
+ # excluding data loss due to errors. Metrics with a higher granularity have
193
+ # a smaller sampling period.
194
+ # @!attribute [rw] ingest_delay
195
+ # @return [::Google::Protobuf::Duration]
196
+ # The delay of data points caused by ingestion. Data points older than this
197
+ # age are guaranteed to be ingested and available to be read, excluding
198
+ # data loss due to errors.
199
+ class MetricDescriptorMetadata
200
+ include ::Google::Protobuf::MessageExts
201
+ extend ::Google::Protobuf::MessageExts::ClassMethods
202
+ end
203
+
133
204
  # The kind of measurement. It describes how the data is reported.
205
+ # For information on setting the start time and end time based on
206
+ # the MetricKind, see [TimeInterval][google.monitoring.v3.TimeInterval].
134
207
  module MetricKind
135
208
  # Do not use this default value.
136
209
  METRIC_KIND_UNSPECIFIED = 0
@@ -40,7 +40,6 @@ module Google
40
40
  # @return [::String]
41
41
  # Required. The monitored resource type. For example, the type
42
42
  # `"cloudsql_database"` represents databases in Google Cloud SQL.
43
- # The maximum length of this value is 256 characters.
44
43
  # @!attribute [rw] display_name
45
44
  # @return [::String]
46
45
  # Optional. A concise name for the monitored resource type that might be
@@ -56,6 +55,9 @@ module Google
56
55
  # Required. A set of labels used to describe instances of this monitored
57
56
  # resource type. For example, an individual Google Cloud SQL database is
58
57
  # identified by values for the labels `"database_id"` and `"zone"`.
58
+ # @!attribute [rw] launch_stage
59
+ # @return [::Google::Api::LaunchStage]
60
+ # Optional. The launch stage of the monitored resource definition.
59
61
  class MonitoredResourceDescriptor
60
62
  include ::Google::Protobuf::MessageExts
61
63
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -101,15 +103,14 @@ module Google
101
103
  # Auxiliary metadata for a {::Google::Api::MonitoredResource MonitoredResource} object.
102
104
  # {::Google::Api::MonitoredResource MonitoredResource} objects contain the minimum set of information to
103
105
  # uniquely identify a monitored resource instance. There is some other useful
104
- # auxiliary metadata. Google Stackdriver Monitoring & Logging uses an ingestion
105
- # pipeline to extract metadata for cloud resources of all types , and stores
106
+ # auxiliary metadata. Monitoring and Logging use an ingestion
107
+ # pipeline to extract metadata for cloud resources of all types, and store
106
108
  # the metadata in this message.
107
109
  # @!attribute [rw] system_labels
108
110
  # @return [::Google::Protobuf::Struct]
109
111
  # Output only. Values for predefined system metadata labels.
110
- # System labels are a kind of metadata extracted by Google Stackdriver.
111
- # Stackdriver determines what system labels are useful and how to obtain
112
- # their values. Some examples: "machine_image", "vpc", "subnet_id",
112
+ # System labels are a kind of metadata extracted by Google, including
113
+ # "machine_image", "vpc", "subnet_id",
113
114
  # "security_group", "name", etc.
114
115
  # System label values can be only strings, Boolean values, or a list of
115
116
  # strings. For example: