google-cloud-monitoring-v3 0.4.1 → 0.6.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (51) hide show
  1. checksums.yaml +4 -4
  2. data/AUTHENTICATION.md +8 -8
  3. data/README.md +1 -1
  4. data/lib/google/cloud/monitoring/v3/alert_policy_service/client.rb +52 -56
  5. data/lib/google/cloud/monitoring/v3/alert_policy_service/paths.rb +14 -0
  6. data/lib/google/cloud/monitoring/v3/group_service/client.rb +58 -66
  7. data/lib/google/cloud/monitoring/v3/group_service/paths.rb +14 -0
  8. data/lib/google/cloud/monitoring/v3/metric_service/client.rb +166 -75
  9. data/lib/google/cloud/monitoring/v3/notification_channel_service/client.rb +75 -79
  10. data/lib/google/cloud/monitoring/v3/notification_channel_service/paths.rb +14 -0
  11. data/lib/google/cloud/monitoring/v3/query_service/client.rb +35 -39
  12. data/lib/google/cloud/monitoring/v3/service_monitoring_service/client.rb +70 -73
  13. data/lib/google/cloud/monitoring/v3/service_monitoring_service/paths.rb +14 -0
  14. data/lib/google/cloud/monitoring/v3/uptime_check_service/client.rb +56 -61
  15. data/lib/google/cloud/monitoring/v3/uptime_check_service/paths.rb +14 -0
  16. data/lib/google/cloud/monitoring/v3/version.rb +1 -1
  17. data/lib/google/monitoring/v3/alert_pb.rb +17 -2
  18. data/lib/google/monitoring/v3/alert_service_pb.rb +2 -2
  19. data/lib/google/monitoring/v3/common_pb.rb +2 -2
  20. data/lib/google/monitoring/v3/group_pb.rb +1 -1
  21. data/lib/google/monitoring/v3/group_service_pb.rb +2 -2
  22. data/lib/google/monitoring/v3/metric_pb.rb +2 -2
  23. data/lib/google/monitoring/v3/metric_service_pb.rb +2 -2
  24. data/lib/google/monitoring/v3/metric_service_services_pb.rb +12 -0
  25. data/lib/google/monitoring/v3/mutation_record_pb.rb +1 -1
  26. data/lib/google/monitoring/v3/notification_pb.rb +2 -2
  27. data/lib/google/monitoring/v3/notification_service_pb.rb +2 -2
  28. data/lib/google/monitoring/v3/query_service_pb.rb +2 -2
  29. data/lib/google/monitoring/v3/service_pb.rb +5 -2
  30. data/lib/google/monitoring/v3/service_service_pb.rb +2 -2
  31. data/lib/google/monitoring/v3/uptime_pb.rb +2 -2
  32. data/lib/google/monitoring/v3/uptime_service_pb.rb +3 -2
  33. data/proto_docs/google/api/distribution.rb +2 -2
  34. data/proto_docs/google/api/field_behavior.rb +7 -1
  35. data/proto_docs/google/api/launch_stage.rb +7 -1
  36. data/proto_docs/google/api/metric.rb +109 -36
  37. data/proto_docs/google/api/monitored_resource.rb +7 -6
  38. data/proto_docs/google/longrunning/operations.rb +164 -0
  39. data/proto_docs/google/monitoring/v3/alert.rb +68 -3
  40. data/proto_docs/google/monitoring/v3/alert_service.rb +4 -2
  41. data/proto_docs/google/monitoring/v3/common.rb +17 -5
  42. data/proto_docs/google/monitoring/v3/group_service.rb +4 -2
  43. data/proto_docs/google/monitoring/v3/metric.rb +3 -1
  44. data/proto_docs/google/monitoring/v3/metric_service.rb +13 -8
  45. data/proto_docs/google/monitoring/v3/notification_service.rb +8 -4
  46. data/proto_docs/google/monitoring/v3/service.rb +38 -6
  47. data/proto_docs/google/monitoring/v3/service_service.rb +4 -2
  48. data/proto_docs/google/monitoring/v3/span_context.rb +2 -2
  49. data/proto_docs/google/monitoring/v3/uptime.rb +5 -2
  50. data/proto_docs/google/monitoring/v3/uptime_service.rb +4 -2
  51. metadata +5 -4
@@ -1,11 +1,11 @@
1
1
  # Generated by the protocol buffer compiler. DO NOT EDIT!
2
2
  # source: google/monitoring/v3/common.proto
3
3
 
4
- require 'google/protobuf'
5
-
6
4
  require 'google/api/distribution_pb'
7
5
  require 'google/protobuf/duration_pb'
8
6
  require 'google/protobuf/timestamp_pb'
7
+ require 'google/protobuf'
8
+
9
9
  Google::Protobuf::DescriptorPool.generated_pool.build do
10
10
  add_file("google/monitoring/v3/common.proto", :syntax => :proto3) do
11
11
  add_message "google.monitoring.v3.TypedValue" do
@@ -1,9 +1,9 @@
1
1
  # Generated by the protocol buffer compiler. DO NOT EDIT!
2
2
  # source: google/monitoring/v3/group.proto
3
3
 
4
+ require 'google/api/resource_pb'
4
5
  require 'google/protobuf'
5
6
 
6
- require 'google/api/resource_pb'
7
7
  Google::Protobuf::DescriptorPool.generated_pool.build do
8
8
  add_file("google/monitoring/v3/group.proto", :syntax => :proto3) do
9
9
  add_message "google.monitoring.v3.Group" do
@@ -1,8 +1,6 @@
1
1
  # Generated by the protocol buffer compiler. DO NOT EDIT!
2
2
  # source: google/monitoring/v3/group_service.proto
3
3
 
4
- require 'google/protobuf'
5
-
6
4
  require 'google/api/annotations_pb'
7
5
  require 'google/api/client_pb'
8
6
  require 'google/api/field_behavior_pb'
@@ -11,6 +9,8 @@ require 'google/api/resource_pb'
11
9
  require 'google/monitoring/v3/common_pb'
12
10
  require 'google/monitoring/v3/group_pb'
13
11
  require 'google/protobuf/empty_pb'
12
+ require 'google/protobuf'
13
+
14
14
  Google::Protobuf::DescriptorPool.generated_pool.build do
15
15
  add_file("google/monitoring/v3/group_service.proto", :syntax => :proto3) do
16
16
  add_message "google.monitoring.v3.ListGroupsRequest" do
@@ -1,14 +1,14 @@
1
1
  # Generated by the protocol buffer compiler. DO NOT EDIT!
2
2
  # source: google/monitoring/v3/metric.proto
3
3
 
4
- require 'google/protobuf'
5
-
6
4
  require 'google/api/distribution_pb'
7
5
  require 'google/api/label_pb'
8
6
  require 'google/api/metric_pb'
9
7
  require 'google/api/monitored_resource_pb'
10
8
  require 'google/monitoring/v3/common_pb'
11
9
  require 'google/protobuf/duration_pb'
10
+ require 'google/protobuf'
11
+
12
12
  Google::Protobuf::DescriptorPool.generated_pool.build do
13
13
  add_file("google/monitoring/v3/metric.proto", :syntax => :proto3) do
14
14
  add_message "google.monitoring.v3.Point" do
@@ -1,8 +1,6 @@
1
1
  # Generated by the protocol buffer compiler. DO NOT EDIT!
2
2
  # source: google/monitoring/v3/metric_service.proto
3
3
 
4
- require 'google/protobuf'
5
-
6
4
  require 'google/api/annotations_pb'
7
5
  require 'google/api/client_pb'
8
6
  require 'google/api/field_behavior_pb'
@@ -15,6 +13,8 @@ require 'google/monitoring/v3/metric_pb'
15
13
  require 'google/protobuf/duration_pb'
16
14
  require 'google/protobuf/empty_pb'
17
15
  require 'google/rpc/status_pb'
16
+ require 'google/protobuf'
17
+
18
18
  Google::Protobuf::DescriptorPool.generated_pool.build do
19
19
  add_file("google/monitoring/v3/metric_service.proto", :syntax => :proto3) do
20
20
  add_message "google.monitoring.v3.ListMonitoredResourceDescriptorsRequest" do
@@ -43,6 +43,8 @@ module Google
43
43
  # Gets a single metric descriptor. This method does not require a Workspace.
44
44
  rpc :GetMetricDescriptor, ::Google::Cloud::Monitoring::V3::GetMetricDescriptorRequest, ::Google::Api::MetricDescriptor
45
45
  # Creates a new metric descriptor.
46
+ # The creation is executed asynchronously and callers may check the returned
47
+ # operation to track its progress.
46
48
  # User-created metric descriptors define
47
49
  # [custom metrics](https://cloud.google.com/monitoring/custom-metrics).
48
50
  rpc :CreateMetricDescriptor, ::Google::Cloud::Monitoring::V3::CreateMetricDescriptorRequest, ::Google::Api::MetricDescriptor
@@ -57,6 +59,16 @@ module Google
57
59
  # If any time series could not be written, a corresponding failure message is
58
60
  # included in the error response.
59
61
  rpc :CreateTimeSeries, ::Google::Cloud::Monitoring::V3::CreateTimeSeriesRequest, ::Google::Protobuf::Empty
62
+ # Creates or adds data to one or more service time series. A service time
63
+ # series is a time series for a metric from a Google Cloud service. The
64
+ # response is empty if all time series in the request were written. If any
65
+ # time series could not be written, a corresponding failure message is
66
+ # included in the error response. This endpoint rejects writes to
67
+ # user-defined metrics.
68
+ # This method is only for use by Google Cloud services. Use
69
+ # [projects.timeSeries.create][google.monitoring.v3.MetricService.CreateTimeSeries]
70
+ # instead.
71
+ rpc :CreateServiceTimeSeries, ::Google::Cloud::Monitoring::V3::CreateTimeSeriesRequest, ::Google::Protobuf::Empty
60
72
  end
61
73
 
62
74
  Stub = Service.rpc_stub_class
@@ -1,9 +1,9 @@
1
1
  # Generated by the protocol buffer compiler. DO NOT EDIT!
2
2
  # source: google/monitoring/v3/mutation_record.proto
3
3
 
4
+ require 'google/protobuf/timestamp_pb'
4
5
  require 'google/protobuf'
5
6
 
6
- require 'google/protobuf/timestamp_pb'
7
7
  Google::Protobuf::DescriptorPool.generated_pool.build do
8
8
  add_file("google/monitoring/v3/mutation_record.proto", :syntax => :proto3) do
9
9
  add_message "google.monitoring.v3.MutationRecord" do
@@ -1,14 +1,14 @@
1
1
  # Generated by the protocol buffer compiler. DO NOT EDIT!
2
2
  # source: google/monitoring/v3/notification.proto
3
3
 
4
- require 'google/protobuf'
5
-
6
4
  require 'google/api/label_pb'
7
5
  require 'google/api/launch_stage_pb'
8
6
  require 'google/api/resource_pb'
9
7
  require 'google/monitoring/v3/common_pb'
10
8
  require 'google/monitoring/v3/mutation_record_pb'
11
9
  require 'google/protobuf/wrappers_pb'
10
+ require 'google/protobuf'
11
+
12
12
  Google::Protobuf::DescriptorPool.generated_pool.build do
13
13
  add_file("google/monitoring/v3/notification.proto", :syntax => :proto3) do
14
14
  add_message "google.monitoring.v3.NotificationChannelDescriptor" do
@@ -1,8 +1,6 @@
1
1
  # Generated by the protocol buffer compiler. DO NOT EDIT!
2
2
  # source: google/monitoring/v3/notification_service.proto
3
3
 
4
- require 'google/protobuf'
5
-
6
4
  require 'google/api/annotations_pb'
7
5
  require 'google/api/client_pb'
8
6
  require 'google/api/field_behavior_pb'
@@ -12,6 +10,8 @@ require 'google/protobuf/empty_pb'
12
10
  require 'google/protobuf/field_mask_pb'
13
11
  require 'google/protobuf/struct_pb'
14
12
  require 'google/protobuf/timestamp_pb'
13
+ require 'google/protobuf'
14
+
15
15
  Google::Protobuf::DescriptorPool.generated_pool.build do
16
16
  add_file("google/monitoring/v3/notification_service.proto", :syntax => :proto3) do
17
17
  add_message "google.monitoring.v3.ListNotificationChannelDescriptorsRequest" do
@@ -1,13 +1,13 @@
1
1
  # Generated by the protocol buffer compiler. DO NOT EDIT!
2
2
  # source: google/monitoring/v3/query_service.proto
3
3
 
4
- require 'google/protobuf'
5
-
6
4
  require 'google/api/annotations_pb'
7
5
  require 'google/api/label_pb'
8
6
  require 'google/monitoring/v3/metric_pb'
9
7
  require 'google/monitoring/v3/metric_service_pb'
10
8
  require 'google/api/client_pb'
9
+ require 'google/protobuf'
10
+
11
11
  Google::Protobuf::DescriptorPool.generated_pool.build do
12
12
  add_file("google/monitoring/v3/query_service.proto", :syntax => :proto3) do
13
13
  end
@@ -1,18 +1,20 @@
1
1
  # Generated by the protocol buffer compiler. DO NOT EDIT!
2
2
  # source: google/monitoring/v3/service.proto
3
3
 
4
- require 'google/protobuf'
5
-
4
+ require 'google/api/field_behavior_pb'
6
5
  require 'google/api/resource_pb'
7
6
  require 'google/protobuf/duration_pb'
8
7
  require 'google/protobuf/timestamp_pb'
9
8
  require 'google/type/calendar_period_pb'
9
+ require 'google/protobuf'
10
+
10
11
  Google::Protobuf::DescriptorPool.generated_pool.build do
11
12
  add_file("google/monitoring/v3/service.proto", :syntax => :proto3) do
12
13
  add_message "google.monitoring.v3.Service" do
13
14
  optional :name, :string, 1
14
15
  optional :display_name, :string, 2
15
16
  optional :telemetry, :message, 13, "google.monitoring.v3.Service.Telemetry"
17
+ map :user_labels, :string, :string, 14
16
18
  oneof :identifier do
17
19
  optional :custom, :message, 6, "google.monitoring.v3.Service.Custom"
18
20
  optional :app_engine, :message, 7, "google.monitoring.v3.Service.AppEngine"
@@ -54,6 +56,7 @@ Google::Protobuf::DescriptorPool.generated_pool.build do
54
56
  optional :display_name, :string, 11
55
57
  optional :service_level_indicator, :message, 3, "google.monitoring.v3.ServiceLevelIndicator"
56
58
  optional :goal, :double, 4
59
+ map :user_labels, :string, :string, 12
57
60
  oneof :period do
58
61
  optional :rolling_period, :message, 5, "google.protobuf.Duration"
59
62
  optional :calendar_period, :enum, 6, "google.type.CalendarPeriod"
@@ -1,8 +1,6 @@
1
1
  # Generated by the protocol buffer compiler. DO NOT EDIT!
2
2
  # source: google/monitoring/v3/service_service.proto
3
3
 
4
- require 'google/protobuf'
5
-
6
4
  require 'google/api/annotations_pb'
7
5
  require 'google/api/client_pb'
8
6
  require 'google/api/field_behavior_pb'
@@ -10,6 +8,8 @@ require 'google/api/resource_pb'
10
8
  require 'google/monitoring/v3/service_pb'
11
9
  require 'google/protobuf/empty_pb'
12
10
  require 'google/protobuf/field_mask_pb'
11
+ require 'google/protobuf'
12
+
13
13
  Google::Protobuf::DescriptorPool.generated_pool.build do
14
14
  add_file("google/monitoring/v3/service_service.proto", :syntax => :proto3) do
15
15
  add_message "google.monitoring.v3.CreateServiceRequest" do
@@ -1,11 +1,11 @@
1
1
  # Generated by the protocol buffer compiler. DO NOT EDIT!
2
2
  # source: google/monitoring/v3/uptime.proto
3
3
 
4
- require 'google/protobuf'
5
-
6
4
  require 'google/api/monitored_resource_pb'
7
5
  require 'google/api/resource_pb'
8
6
  require 'google/protobuf/duration_pb'
7
+ require 'google/protobuf'
8
+
9
9
  Google::Protobuf::DescriptorPool.generated_pool.build do
10
10
  add_file("google/monitoring/v3/uptime.proto", :syntax => :proto3) do
11
11
  add_message "google.monitoring.v3.InternalChecker" do
@@ -1,16 +1,17 @@
1
1
  # Generated by the protocol buffer compiler. DO NOT EDIT!
2
2
  # source: google/monitoring/v3/uptime_service.proto
3
3
 
4
- require 'google/protobuf'
5
-
6
4
  require 'google/api/annotations_pb'
7
5
  require 'google/api/client_pb'
8
6
  require 'google/api/field_behavior_pb'
9
7
  require 'google/api/resource_pb'
8
+ require 'google/longrunning/operations_pb'
10
9
  require 'google/monitoring/v3/uptime_pb'
11
10
  require 'google/protobuf/duration_pb'
12
11
  require 'google/protobuf/empty_pb'
13
12
  require 'google/protobuf/field_mask_pb'
13
+ require 'google/protobuf'
14
+
14
15
  Google::Protobuf::DescriptorPool.generated_pool.build do
15
16
  add_file("google/monitoring/v3/uptime_service.proto", :syntax => :proto3) do
16
17
  add_message "google.monitoring.v3.ListUptimeCheckConfigsRequest" do
@@ -49,7 +49,7 @@ module Google
49
49
  #
50
50
  # Sum[i=1..n]((x_i - mean)^2)
51
51
  #
52
- # Knuth, "The Art of Computer Programming", Vol. 2, page 323, 3rd edition
52
+ # Knuth, "The Art of Computer Programming", Vol. 2, page 232, 3rd edition
53
53
  # describes Welford's method for accumulating this sum in one pass.
54
54
  #
55
55
  # If `count` is zero then this field must be zero.
@@ -207,7 +207,7 @@ module Google
207
207
  # @return [::Array<::Google::Protobuf::Any>]
208
208
  # Contextual information about the example value. Examples are:
209
209
  #
210
- # Trace ID: type.googleapis.com/google.devtools.cloudtrace.v1.Trace
210
+ # Trace: type.googleapis.com/google.monitoring.v3.SpanContext
211
211
  #
212
212
  # Literal string: type.googleapis.com/google.protobuf.StringValue
213
213
  #
@@ -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
@@ -25,6 +25,12 @@ module Google
25
25
  # Do not use this default value.
26
26
  LAUNCH_STAGE_UNSPECIFIED = 0
27
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
+
28
34
  # Early Access features are limited to a closed group of testers. To use
29
35
  # these features, you must sign up in advance and sign a Trusted Tester
30
36
  # agreement (which includes confidentiality provisions). These features may
@@ -36,7 +42,7 @@ module Google
36
42
  # for widespread use. By Alpha, all significant design issues are resolved
37
43
  # and we are in the process of verifying functionality. Alpha customers
38
44
  # need to apply for access, agree to applicable terms, and have their
39
- # projects whitelisted. Alpha releases don’t have to be feature complete,
45
+ # projects allowlisted. Alpha releases don’t have to be feature complete,
40
46
  # no SLAs are provided, and there are no technical support obligations, but
41
47
  # they will be far enough along that customers can actually use them in
42
48
  # test environments or for limited-use tests -- just like they would in
@@ -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 {::Google::Cloud::Monitoring::V3::TimeInterval 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: