google-cloud-logging-v2 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
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