google-cloud-logging-v2 0.1.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (50) hide show
  1. checksums.yaml +7 -0
  2. data/.yardopts +12 -0
  3. data/AUTHENTICATION.md +169 -0
  4. data/LICENSE.md +203 -0
  5. data/README.md +75 -0
  6. data/lib/google-cloud-logging-v2.rb +21 -0
  7. data/lib/google/cloud/logging/v2.rb +37 -0
  8. data/lib/google/cloud/logging/v2/config_service.rb +49 -0
  9. data/lib/google/cloud/logging/v2/config_service/client.rb +1723 -0
  10. data/lib/google/cloud/logging/v2/config_service/credentials.rb +54 -0
  11. data/lib/google/cloud/logging/v2/config_service/paths.rb +413 -0
  12. data/lib/google/cloud/logging/v2/logging_service.rb +49 -0
  13. data/lib/google/cloud/logging/v2/logging_service/client.rb +826 -0
  14. data/lib/google/cloud/logging/v2/logging_service/credentials.rb +55 -0
  15. data/lib/google/cloud/logging/v2/logging_service/paths.rb +154 -0
  16. data/lib/google/cloud/logging/v2/metrics_service.rb +49 -0
  17. data/lib/google/cloud/logging/v2/metrics_service/client.rb +726 -0
  18. data/lib/google/cloud/logging/v2/metrics_service/credentials.rb +55 -0
  19. data/lib/google/cloud/logging/v2/metrics_service/paths.rb +64 -0
  20. data/lib/google/cloud/logging/v2/version.rb +28 -0
  21. data/lib/google/logging/type/http_request_pb.rb +38 -0
  22. data/lib/google/logging/type/log_severity_pb.rb +31 -0
  23. data/lib/google/logging/v2/log_entry_pb.rb +62 -0
  24. data/lib/google/logging/v2/logging_config_pb.rb +176 -0
  25. data/lib/google/logging/v2/logging_config_services_pb.rb +113 -0
  26. data/lib/google/logging/v2/logging_metrics_pb.rb +75 -0
  27. data/lib/google/logging/v2/logging_metrics_services_pb.rb +53 -0
  28. data/lib/google/logging/v2/logging_pb.rb +83 -0
  29. data/lib/google/logging/v2/logging_services_pb.rb +65 -0
  30. data/proto_docs/README.md +4 -0
  31. data/proto_docs/google/api/distribution.rb +225 -0
  32. data/proto_docs/google/api/field_behavior.rb +59 -0
  33. data/proto_docs/google/api/label.rb +49 -0
  34. data/proto_docs/google/api/metric.rb +203 -0
  35. data/proto_docs/google/api/monitored_resource.rb +137 -0
  36. data/proto_docs/google/api/resource.rb +247 -0
  37. data/proto_docs/google/logging/type/http_request.rb +95 -0
  38. data/proto_docs/google/logging/type/log_severity.rb +71 -0
  39. data/proto_docs/google/logging/v2/log_entry.rb +203 -0
  40. data/proto_docs/google/logging/v2/logging.rb +303 -0
  41. data/proto_docs/google/logging/v2/logging_config.rb +735 -0
  42. data/proto_docs/google/logging/v2/logging_metrics.rb +256 -0
  43. data/proto_docs/google/protobuf/any.rb +138 -0
  44. data/proto_docs/google/protobuf/duration.rb +98 -0
  45. data/proto_docs/google/protobuf/empty.rb +36 -0
  46. data/proto_docs/google/protobuf/field_mask.rb +229 -0
  47. data/proto_docs/google/protobuf/struct.rb +96 -0
  48. data/proto_docs/google/protobuf/timestamp.rb +120 -0
  49. data/proto_docs/google/rpc/status.rb +46 -0
  50. metadata +231 -0
@@ -0,0 +1,59 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Copyright 2020 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
+ # An indicator of the behavior of a given field (for example, that a field
23
+ # is required in requests, or given as output but ignored as input).
24
+ # This **does not** change the behavior in protocol buffers itself; it only
25
+ # denotes the behavior and may affect how API tooling handles the field.
26
+ #
27
+ # Note: This enum **may** receive new values in the future.
28
+ module FieldBehavior
29
+ # Conventional default for enums. Do not use this.
30
+ FIELD_BEHAVIOR_UNSPECIFIED = 0
31
+
32
+ # Specifically denotes a field as optional.
33
+ # While all fields in protocol buffers are optional, this may be specified
34
+ # for emphasis if appropriate.
35
+ OPTIONAL = 1
36
+
37
+ # Denotes a field as required.
38
+ # This indicates that the field **must** be provided as part of the request,
39
+ # and failure to do so will cause an error (usually `INVALID_ARGUMENT`).
40
+ REQUIRED = 2
41
+
42
+ # Denotes a field as output only.
43
+ # This indicates that the field is provided in responses, but including the
44
+ # field in a request does nothing (the server *must* ignore it and
45
+ # *must not* throw an error as a result of the field's presence).
46
+ OUTPUT_ONLY = 3
47
+
48
+ # Denotes a field as input only.
49
+ # This indicates that the field is provided in requests, and the
50
+ # corresponding field is not included in output.
51
+ INPUT_ONLY = 4
52
+
53
+ # Denotes a field as immutable.
54
+ # This indicates that the field may be set once in a request to create a
55
+ # resource, but may not be changed thereafter.
56
+ IMMUTABLE = 5
57
+ end
58
+ end
59
+ end
@@ -0,0 +1,49 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Copyright 2020 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
+ # A description of a label.
23
+ # @!attribute [rw] key
24
+ # @return [::String]
25
+ # The label key.
26
+ # @!attribute [rw] value_type
27
+ # @return [::Google::Api::LabelDescriptor::ValueType]
28
+ # The type of data that can be assigned to the label.
29
+ # @!attribute [rw] description
30
+ # @return [::String]
31
+ # A human-readable description for the label.
32
+ class LabelDescriptor
33
+ include ::Google::Protobuf::MessageExts
34
+ extend ::Google::Protobuf::MessageExts::ClassMethods
35
+
36
+ # Value types that can be used as label values.
37
+ module ValueType
38
+ # A variable-length string. This is the default.
39
+ STRING = 0
40
+
41
+ # Boolean; true or false.
42
+ BOOL = 1
43
+
44
+ # A 64-bit signed integer.
45
+ INT64 = 2
46
+ end
47
+ end
48
+ end
49
+ end
@@ -0,0 +1,203 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Copyright 2020 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
+ # Defines a metric type and its schema. Once a metric descriptor is created,
23
+ # deleting or altering it stops data collection and makes the metric type's
24
+ # existing data unusable.
25
+ # @!attribute [rw] name
26
+ # @return [::String]
27
+ # The resource name of the metric descriptor.
28
+ # @!attribute [rw] type
29
+ # @return [::String]
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:
34
+ #
35
+ # "custom.googleapis.com/invoice/paid/amount"
36
+ # "appengine.googleapis.com/http/server/response_latencies"
37
+ # @!attribute [rw] labels
38
+ # @return [::Array<::Google::Api::LabelDescriptor>]
39
+ # The set of labels that can be used to describe a specific
40
+ # instance of this metric type. For example, the
41
+ # `appengine.googleapis.com/http/server/response_latencies` metric
42
+ # type has a label for the HTTP response code, `response_code`, so
43
+ # you can look at latencies for successful responses or just
44
+ # for responses that failed.
45
+ # @!attribute [rw] metric_kind
46
+ # @return [::Google::Api::MetricDescriptor::MetricKind]
47
+ # Whether the metric records instantaneous values, changes to a value, etc.
48
+ # Some combinations of `metric_kind` and `value_type` might not be supported.
49
+ # @!attribute [rw] value_type
50
+ # @return [::Google::Api::MetricDescriptor::ValueType]
51
+ # Whether the measurement is an integer, a floating-point number, etc.
52
+ # Some combinations of `metric_kind` and `value_type` might not be supported.
53
+ # @!attribute [rw] unit
54
+ # @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:
59
+ #
60
+ # **Basic units (UNIT)**
61
+ #
62
+ # * `bit` bit
63
+ # * `By` byte
64
+ # * `s` second
65
+ # * `min` minute
66
+ # * `h` hour
67
+ # * `d` day
68
+ #
69
+ # **Prefixes (PREFIX)**
70
+ #
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
+ #
92
+ # **Grammar**
93
+ #
94
+ # The grammar also includes these connectors:
95
+ #
96
+ # * `/` division (as an infix operator, e.g. `1/s`).
97
+ # * `.` multiplication (as an infix operator, e.g. `GBy.d`)
98
+ #
99
+ # The grammar for a unit is as follows:
100
+ #
101
+ # Expression = Component { "." Component } { "/" Component } ;
102
+ #
103
+ # Component = ( [ PREFIX ] UNIT | "%" ) [ Annotation ]
104
+ # | Annotation
105
+ # | "1"
106
+ # ;
107
+ #
108
+ # Annotation = "{" NAME "}" ;
109
+ #
110
+ # Notes:
111
+ #
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`.
115
+ # * `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.
120
+ # @!attribute [rw] description
121
+ # @return [::String]
122
+ # A detailed description of the metric, which can be used in documentation.
123
+ # @!attribute [rw] display_name
124
+ # @return [::String]
125
+ # A concise name for the metric, which can be displayed in user interfaces.
126
+ # Use sentence case without an ending period, for example "Request count".
127
+ # This field is optional but it is recommended to be set for any metrics
128
+ # associated with user-visible concepts, such as Quota.
129
+ class MetricDescriptor
130
+ include ::Google::Protobuf::MessageExts
131
+ extend ::Google::Protobuf::MessageExts::ClassMethods
132
+
133
+ # The kind of measurement. It describes how the data is reported.
134
+ module MetricKind
135
+ # Do not use this default value.
136
+ METRIC_KIND_UNSPECIFIED = 0
137
+
138
+ # An instantaneous measurement of a value.
139
+ GAUGE = 1
140
+
141
+ # The change in a value during a time interval.
142
+ DELTA = 2
143
+
144
+ # A value accumulated over a time interval. Cumulative
145
+ # measurements in a time series should have the same start time
146
+ # and increasing end times, until an event resets the cumulative
147
+ # value to zero and sets a new start time for the following
148
+ # points.
149
+ CUMULATIVE = 3
150
+ end
151
+
152
+ # The value type of a metric.
153
+ module ValueType
154
+ # Do not use this default value.
155
+ VALUE_TYPE_UNSPECIFIED = 0
156
+
157
+ # The value is a boolean.
158
+ # This value type can be used only if the metric kind is `GAUGE`.
159
+ BOOL = 1
160
+
161
+ # The value is a signed 64-bit integer.
162
+ INT64 = 2
163
+
164
+ # The value is a double precision floating point number.
165
+ DOUBLE = 3
166
+
167
+ # The value is a text string.
168
+ # This value type can be used only if the metric kind is `GAUGE`.
169
+ STRING = 4
170
+
171
+ # The value is a {::Google::Api::Distribution `Distribution`}.
172
+ DISTRIBUTION = 5
173
+
174
+ # The value is money.
175
+ MONEY = 6
176
+ end
177
+ end
178
+
179
+ # A specific metric, identified by specifying values for all of the
180
+ # labels of a {::Google::Api::MetricDescriptor `MetricDescriptor`}.
181
+ # @!attribute [rw] type
182
+ # @return [::String]
183
+ # An existing metric type, see {::Google::Api::MetricDescriptor google.api.MetricDescriptor}.
184
+ # For example, `custom.googleapis.com/invoice/paid/amount`.
185
+ # @!attribute [rw] labels
186
+ # @return [::Google::Protobuf::Map{::String => ::String}]
187
+ # The set of label values that uniquely identify this metric. All
188
+ # labels listed in the `MetricDescriptor` must be assigned values.
189
+ class Metric
190
+ include ::Google::Protobuf::MessageExts
191
+ extend ::Google::Protobuf::MessageExts::ClassMethods
192
+
193
+ # @!attribute [rw] key
194
+ # @return [::String]
195
+ # @!attribute [rw] value
196
+ # @return [::String]
197
+ class LabelsEntry
198
+ include ::Google::Protobuf::MessageExts
199
+ extend ::Google::Protobuf::MessageExts::ClassMethods
200
+ end
201
+ end
202
+ end
203
+ end
@@ -0,0 +1,137 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Copyright 2020 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
+ # An object that describes the schema of a {::Google::Api::MonitoredResource MonitoredResource} object using a
23
+ # type name and a set of labels. For example, the monitored resource
24
+ # descriptor for Google Compute Engine VM instances has a type of
25
+ # `"gce_instance"` and specifies the use of the labels `"instance_id"` and
26
+ # `"zone"` to identify particular VM instances.
27
+ #
28
+ # Different APIs can support different monitored resource types. APIs generally
29
+ # provide a `list` method that returns the monitored resource descriptors used
30
+ # by the API.
31
+ # @!attribute [rw] name
32
+ # @return [::String]
33
+ # Optional. The resource name of the monitored resource descriptor:
34
+ # `"projects/{project_id}/monitoredResourceDescriptors/{type}"` where
35
+ # \\{type} is the value of the `type` field in this object and
36
+ # \\{project_id} is a project ID that provides API-specific context for
37
+ # accessing the type. APIs that do not use project information can use the
38
+ # resource name format `"monitoredResourceDescriptors/{type}"`.
39
+ # @!attribute [rw] type
40
+ # @return [::String]
41
+ # Required. The monitored resource type. For example, the type
42
+ # `"cloudsql_database"` represents databases in Google Cloud SQL.
43
+ # The maximum length of this value is 256 characters.
44
+ # @!attribute [rw] display_name
45
+ # @return [::String]
46
+ # Optional. A concise name for the monitored resource type that might be
47
+ # displayed in user interfaces. It should be a Title Cased Noun Phrase,
48
+ # without any article or other determiners. For example,
49
+ # `"Google Cloud SQL Database"`.
50
+ # @!attribute [rw] description
51
+ # @return [::String]
52
+ # Optional. A detailed description of the monitored resource type that might
53
+ # be used in documentation.
54
+ # @!attribute [rw] labels
55
+ # @return [::Array<::Google::Api::LabelDescriptor>]
56
+ # Required. A set of labels used to describe instances of this monitored
57
+ # resource type. For example, an individual Google Cloud SQL database is
58
+ # identified by values for the labels `"database_id"` and `"zone"`.
59
+ class MonitoredResourceDescriptor
60
+ include ::Google::Protobuf::MessageExts
61
+ extend ::Google::Protobuf::MessageExts::ClassMethods
62
+ end
63
+
64
+ # An object representing a resource that can be used for monitoring, logging,
65
+ # billing, or other purposes. Examples include virtual machine instances,
66
+ # databases, and storage devices such as disks. The `type` field identifies a
67
+ # {::Google::Api::MonitoredResourceDescriptor MonitoredResourceDescriptor} object that describes the resource's
68
+ # schema. Information in the `labels` field identifies the actual resource and
69
+ # its attributes according to the schema. For example, a particular Compute
70
+ # Engine VM instance could be represented by the following object, because the
71
+ # {::Google::Api::MonitoredResourceDescriptor MonitoredResourceDescriptor} for `"gce_instance"` has labels
72
+ # `"instance_id"` and `"zone"`:
73
+ #
74
+ # { "type": "gce_instance",
75
+ # "labels": { "instance_id": "12345678901234",
76
+ # "zone": "us-central1-a" }}
77
+ # @!attribute [rw] type
78
+ # @return [::String]
79
+ # Required. The monitored resource type. This field must match
80
+ # the `type` field of a {::Google::Api::MonitoredResourceDescriptor MonitoredResourceDescriptor} object. For
81
+ # example, the type of a Compute Engine VM instance is `gce_instance`.
82
+ # @!attribute [rw] labels
83
+ # @return [::Google::Protobuf::Map{::String => ::String}]
84
+ # Required. Values for all of the labels listed in the associated monitored
85
+ # resource descriptor. For example, Compute Engine VM instances use the
86
+ # labels `"project_id"`, `"instance_id"`, and `"zone"`.
87
+ class MonitoredResource
88
+ include ::Google::Protobuf::MessageExts
89
+ extend ::Google::Protobuf::MessageExts::ClassMethods
90
+
91
+ # @!attribute [rw] key
92
+ # @return [::String]
93
+ # @!attribute [rw] value
94
+ # @return [::String]
95
+ class LabelsEntry
96
+ include ::Google::Protobuf::MessageExts
97
+ extend ::Google::Protobuf::MessageExts::ClassMethods
98
+ end
99
+ end
100
+
101
+ # Auxiliary metadata for a {::Google::Api::MonitoredResource MonitoredResource} object.
102
+ # {::Google::Api::MonitoredResource MonitoredResource} objects contain the minimum set of information to
103
+ # 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
+ # the metadata in this message.
107
+ # @!attribute [rw] system_labels
108
+ # @return [::Google::Protobuf::Struct]
109
+ # 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",
113
+ # "security_group", "name", etc.
114
+ # System label values can be only strings, Boolean values, or a list of
115
+ # strings. For example:
116
+ #
117
+ # { "name": "my-test-instance",
118
+ # "security_group": ["a", "b", "c"],
119
+ # "spot_instance": false }
120
+ # @!attribute [rw] user_labels
121
+ # @return [::Google::Protobuf::Map{::String => ::String}]
122
+ # Output only. A map of user-defined metadata labels.
123
+ class MonitoredResourceMetadata
124
+ include ::Google::Protobuf::MessageExts
125
+ extend ::Google::Protobuf::MessageExts::ClassMethods
126
+
127
+ # @!attribute [rw] key
128
+ # @return [::String]
129
+ # @!attribute [rw] value
130
+ # @return [::String]
131
+ class UserLabelsEntry
132
+ include ::Google::Protobuf::MessageExts
133
+ extend ::Google::Protobuf::MessageExts::ClassMethods
134
+ end
135
+ end
136
+ end
137
+ end