google-cloud-monitoring 0.38.0 → 1.0.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (101) hide show
  1. checksums.yaml +4 -4
  2. data/.yardopts +2 -1
  3. data/AUTHENTICATION.md +51 -54
  4. data/LICENSE.md +203 -0
  5. data/MIGRATING.md +361 -0
  6. data/README.md +34 -50
  7. data/lib/google-cloud-monitoring.rb +6 -5
  8. data/lib/google/cloud/monitoring.rb +255 -443
  9. data/lib/google/cloud/monitoring/dashboard.rb +88 -117
  10. data/lib/google/cloud/monitoring/{v3/doc/google/protobuf/wrappers.rb → dashboard/version.rb} +12 -9
  11. data/lib/google/cloud/monitoring/version.rb +6 -2
  12. metadata +71 -128
  13. data/LICENSE +0 -201
  14. data/lib/google/cloud/monitoring/dashboard/v1.rb +0 -148
  15. data/lib/google/cloud/monitoring/dashboard/v1/credentials.rb +0 -46
  16. data/lib/google/cloud/monitoring/dashboard/v1/dashboards_service_client.rb +0 -457
  17. data/lib/google/cloud/monitoring/dashboard/v1/dashboards_service_client_config.json +0 -51
  18. data/lib/google/cloud/monitoring/dashboard/v1/doc/google/monitoring/dashboard/v1/common.rb +0 -394
  19. data/lib/google/cloud/monitoring/dashboard/v1/doc/google/monitoring/dashboard/v1/dashboard.rb +0 -53
  20. data/lib/google/cloud/monitoring/dashboard/v1/doc/google/monitoring/dashboard/v1/dashboards_service.rb +0 -82
  21. data/lib/google/cloud/monitoring/dashboard/v1/doc/google/monitoring/dashboard/v1/layouts.rb +0 -71
  22. data/lib/google/cloud/monitoring/dashboard/v1/doc/google/monitoring/dashboard/v1/metrics.rb +0 -151
  23. data/lib/google/cloud/monitoring/dashboard/v1/doc/google/monitoring/dashboard/v1/scorecard.rb +0 -102
  24. data/lib/google/cloud/monitoring/dashboard/v1/doc/google/monitoring/dashboard/v1/text.rb +0 -43
  25. data/lib/google/cloud/monitoring/dashboard/v1/doc/google/monitoring/dashboard/v1/widget.rb +0 -41
  26. data/lib/google/cloud/monitoring/dashboard/v1/doc/google/monitoring/dashboard/v1/xychart.rb +0 -141
  27. data/lib/google/cloud/monitoring/dashboard/v1/doc/google/protobuf/duration.rb +0 -91
  28. data/lib/google/cloud/monitoring/dashboard/v1/doc/google/protobuf/empty.rb +0 -29
  29. data/lib/google/cloud/monitoring/v3.rb +0 -532
  30. data/lib/google/cloud/monitoring/v3/alert_policy_service_client.rb +0 -553
  31. data/lib/google/cloud/monitoring/v3/alert_policy_service_client_config.json +0 -51
  32. data/lib/google/cloud/monitoring/v3/credentials.rb +0 -44
  33. data/lib/google/cloud/monitoring/v3/doc/google/api/distribution.rb +0 -200
  34. data/lib/google/cloud/monitoring/v3/doc/google/api/label.rb +0 -42
  35. data/lib/google/cloud/monitoring/v3/doc/google/api/metric.rb +0 -245
  36. data/lib/google/cloud/monitoring/v3/doc/google/api/monitored_resource.rb +0 -108
  37. data/lib/google/cloud/monitoring/v3/doc/google/monitoring/v3/alert.rb +0 -344
  38. data/lib/google/cloud/monitoring/v3/doc/google/monitoring/v3/alert_service.rb +0 -138
  39. data/lib/google/cloud/monitoring/v3/doc/google/monitoring/v3/common.rb +0 -449
  40. data/lib/google/cloud/monitoring/v3/doc/google/monitoring/v3/group.rb +0 -75
  41. data/lib/google/cloud/monitoring/v3/doc/google/monitoring/v3/group_service.rb +0 -167
  42. data/lib/google/cloud/monitoring/v3/doc/google/monitoring/v3/metric.rb +0 -85
  43. data/lib/google/cloud/monitoring/v3/doc/google/monitoring/v3/metric_service.rb +0 -230
  44. data/lib/google/cloud/monitoring/v3/doc/google/monitoring/v3/mutation_record.rb +0 -29
  45. data/lib/google/cloud/monitoring/v3/doc/google/monitoring/v3/notification.rb +0 -156
  46. data/lib/google/cloud/monitoring/v3/doc/google/monitoring/v3/notification_service.rb +0 -221
  47. data/lib/google/cloud/monitoring/v3/doc/google/monitoring/v3/service.rb +0 -361
  48. data/lib/google/cloud/monitoring/v3/doc/google/monitoring/v3/service_service.rb +0 -197
  49. data/lib/google/cloud/monitoring/v3/doc/google/monitoring/v3/uptime.rb +0 -364
  50. data/lib/google/cloud/monitoring/v3/doc/google/monitoring/v3/uptime_service.rb +0 -136
  51. data/lib/google/cloud/monitoring/v3/doc/google/protobuf/any.rb +0 -131
  52. data/lib/google/cloud/monitoring/v3/doc/google/protobuf/duration.rb +0 -91
  53. data/lib/google/cloud/monitoring/v3/doc/google/protobuf/empty.rb +0 -29
  54. data/lib/google/cloud/monitoring/v3/doc/google/protobuf/field_mask.rb +0 -222
  55. data/lib/google/cloud/monitoring/v3/doc/google/protobuf/struct.rb +0 -74
  56. data/lib/google/cloud/monitoring/v3/doc/google/protobuf/timestamp.rb +0 -113
  57. data/lib/google/cloud/monitoring/v3/doc/google/rpc/status.rb +0 -39
  58. data/lib/google/cloud/monitoring/v3/group_service_client.rb +0 -606
  59. data/lib/google/cloud/monitoring/v3/group_service_client_config.json +0 -56
  60. data/lib/google/cloud/monitoring/v3/metric_service_client.rb +0 -750
  61. data/lib/google/cloud/monitoring/v3/metric_service_client_config.json +0 -66
  62. data/lib/google/cloud/monitoring/v3/notification_channel_service_client.rb +0 -811
  63. data/lib/google/cloud/monitoring/v3/notification_channel_service_client_config.json +0 -76
  64. data/lib/google/cloud/monitoring/v3/service_monitoring_service_client.rb +0 -788
  65. data/lib/google/cloud/monitoring/v3/service_monitoring_service_client_config.json +0 -76
  66. data/lib/google/cloud/monitoring/v3/uptime_check_service_client.rb +0 -550
  67. data/lib/google/cloud/monitoring/v3/uptime_check_service_client_config.json +0 -56
  68. data/lib/google/monitoring/dashboard/v1/common_pb.rb +0 -95
  69. data/lib/google/monitoring/dashboard/v1/dashboard_pb.rb +0 -29
  70. data/lib/google/monitoring/dashboard/v1/dashboards_service_pb.rb +0 -51
  71. data/lib/google/monitoring/dashboard/v1/dashboards_service_services_pb.rb +0 -76
  72. data/lib/google/monitoring/dashboard/v1/drilldowns_pb.rb +0 -17
  73. data/lib/google/monitoring/dashboard/v1/layouts_pb.rb +0 -41
  74. data/lib/google/monitoring/dashboard/v1/metrics_pb.rb +0 -76
  75. data/lib/google/monitoring/dashboard/v1/scorecard_pb.rb +0 -38
  76. data/lib/google/monitoring/dashboard/v1/service_pb.rb +0 -17
  77. data/lib/google/monitoring/dashboard/v1/text_pb.rb +0 -28
  78. data/lib/google/monitoring/dashboard/v1/widget_pb.rb +0 -32
  79. data/lib/google/monitoring/dashboard/v1/xychart_pb.rb +0 -66
  80. data/lib/google/monitoring/v3/alert_pb.rb +0 -87
  81. data/lib/google/monitoring/v3/alert_service_pb.rb +0 -53
  82. data/lib/google/monitoring/v3/alert_service_services_pb.rb +0 -63
  83. data/lib/google/monitoring/v3/common_pb.rb +0 -95
  84. data/lib/google/monitoring/v3/dropped_labels_pb.rb +0 -19
  85. data/lib/google/monitoring/v3/group_pb.rb +0 -24
  86. data/lib/google/monitoring/v3/group_service_pb.rb +0 -73
  87. data/lib/google/monitoring/v3/group_service_services_pb.rb +0 -66
  88. data/lib/google/monitoring/v3/metric_pb.rb +0 -82
  89. data/lib/google/monitoring/v3/metric_service_pb.rb +0 -130
  90. data/lib/google/monitoring/v3/metric_service_services_pb.rb +0 -66
  91. data/lib/google/monitoring/v3/mutation_record_pb.rb +0 -21
  92. data/lib/google/monitoring/v3/notification_pb.rb +0 -47
  93. data/lib/google/monitoring/v3/notification_service_pb.rb +0 -90
  94. data/lib/google/monitoring/v3/notification_service_services_pb.rb +0 -94
  95. data/lib/google/monitoring/v3/service_pb.rb +0 -149
  96. data/lib/google/monitoring/v3/service_service_pb.rb +0 -86
  97. data/lib/google/monitoring/v3/service_service_services_pb.rb +0 -65
  98. data/lib/google/monitoring/v3/span_context_pb.rb +0 -19
  99. data/lib/google/monitoring/v3/uptime_pb.rb +0 -123
  100. data/lib/google/monitoring/v3/uptime_service_pb.rb +0 -63
  101. data/lib/google/monitoring/v3/uptime_service_services_pb.rb +0 -67
@@ -1,41 +0,0 @@
1
- # Copyright 2020 Google LLC
2
- #
3
- # Licensed under the Apache License, Version 2.0 (the "License");
4
- # you may not use this file except in compliance with the License.
5
- # You may obtain a copy of the License at
6
- #
7
- # https://www.apache.org/licenses/LICENSE-2.0
8
- #
9
- # Unless required by applicable law or agreed to in writing, software
10
- # distributed under the License is distributed on an "AS IS" BASIS,
11
- # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
- # See the License for the specific language governing permissions and
13
- # limitations under the License.
14
-
15
-
16
- module Google
17
- module Monitoring
18
- module Dashboard
19
- module V1
20
- # Widget contains a single dashboard component and configuration of how to
21
- # present the component in the dashboard.
22
- # @!attribute [rw] title
23
- # @return [String]
24
- # Optional. The title of the widget.
25
- # @!attribute [rw] xy_chart
26
- # @return [Google::Monitoring::Dashboard::V1::XyChart]
27
- # A chart of time series data.
28
- # @!attribute [rw] scorecard
29
- # @return [Google::Monitoring::Dashboard::V1::Scorecard]
30
- # A scorecard summarizing time series data.
31
- # @!attribute [rw] text
32
- # @return [Google::Monitoring::Dashboard::V1::Text]
33
- # A raw string or markdown displaying textual content.
34
- # @!attribute [rw] blank
35
- # @return [Google::Protobuf::Empty]
36
- # A blank space.
37
- class Widget; end
38
- end
39
- end
40
- end
41
- end
@@ -1,141 +0,0 @@
1
- # Copyright 2020 Google LLC
2
- #
3
- # Licensed under the Apache License, Version 2.0 (the "License");
4
- # you may not use this file except in compliance with the License.
5
- # You may obtain a copy of the License at
6
- #
7
- # https://www.apache.org/licenses/LICENSE-2.0
8
- #
9
- # Unless required by applicable law or agreed to in writing, software
10
- # distributed under the License is distributed on an "AS IS" BASIS,
11
- # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
- # See the License for the specific language governing permissions and
13
- # limitations under the License.
14
-
15
-
16
- module Google
17
- module Monitoring
18
- module Dashboard
19
- module V1
20
- # A chart that displays data on a 2D (X and Y axes) plane.
21
- # @!attribute [rw] data_sets
22
- # @return [Array<Google::Monitoring::Dashboard::V1::XyChart::DataSet>]
23
- # The data displayed in this chart.
24
- # @!attribute [rw] timeshift_duration
25
- # @return [Google::Protobuf::Duration]
26
- # The duration used to display a comparison chart. A comparison chart
27
- # simultaneously shows values from two similar-length time periods
28
- # (e.g., week-over-week metrics).
29
- # The duration must be positive, and it can only be applied to charts with
30
- # data sets of LINE plot type.
31
- # @!attribute [rw] thresholds
32
- # @return [Array<Google::Monitoring::Dashboard::V1::Threshold>]
33
- # Threshold lines drawn horizontally across the chart.
34
- # @!attribute [rw] x_axis
35
- # @return [Google::Monitoring::Dashboard::V1::XyChart::Axis]
36
- # The properties applied to the X axis.
37
- # @!attribute [rw] y_axis
38
- # @return [Google::Monitoring::Dashboard::V1::XyChart::Axis]
39
- # The properties applied to the Y axis.
40
- # @!attribute [rw] chart_options
41
- # @return [Google::Monitoring::Dashboard::V1::ChartOptions]
42
- # Display options for the chart.
43
- class XyChart
44
- # Groups a time series query definition with charting options.
45
- # @!attribute [rw] time_series_query
46
- # @return [Google::Monitoring::Dashboard::V1::TimeSeriesQuery]
47
- # Fields for querying time series data from the
48
- # Stackdriver metrics API.
49
- # @!attribute [rw] plot_type
50
- # @return [Google::Monitoring::Dashboard::V1::XyChart::DataSet::PlotType]
51
- # How this data should be plotted on the chart.
52
- # @!attribute [rw] legend_template
53
- # @return [String]
54
- # A template string for naming `TimeSeries` in the resulting data set.
55
- # This should be a string with interpolations of the form ${label_name},
56
- # which will resolve to the label's value.
57
- # @!attribute [rw] min_alignment_period
58
- # @return [Google::Protobuf::Duration]
59
- # Optional. The lower bound on data point frequency for this data set, implemented by
60
- # specifying the minimum alignment period to use in a time series query
61
- # For example, if the data is published once every 10 minutes, the
62
- # `min_alignment_period` should be at least 10 minutes. It would not
63
- # make sense to fetch and align data at one minute intervals.
64
- class DataSet
65
- # The types of plotting strategies for data sets.
66
- module PlotType
67
- # Plot type is unspecified. The view will default to `LINE`.
68
- PLOT_TYPE_UNSPECIFIED = 0
69
-
70
- # The data is plotted as a set of lines (one line per series).
71
- LINE = 1
72
-
73
- # The data is plotted as a set of filled areas (one area per series),
74
- # with the areas stacked vertically (the base of each area is the top of
75
- # its predecessor, and the base of the first area is the X axis). Since
76
- # the areas do not overlap, each is filled with a different opaque color.
77
- STACKED_AREA = 2
78
-
79
- # The data is plotted as a set of rectangular boxes (one box per series),
80
- # with the boxes stacked vertically (the base of each box is the top of
81
- # its predecessor, and the base of the first box is the X axis). Since
82
- # the boxes do not overlap, each is filled with a different opaque color.
83
- STACKED_BAR = 3
84
-
85
- # The data is plotted as a heatmap. The series being plotted must have a
86
- # `DISTRIBUTION` value type. The value of each bucket in the distribution
87
- # is displayed as a color. This type is not currently available in the
88
- # Stackdriver Monitoring application.
89
- HEATMAP = 4
90
- end
91
- end
92
-
93
- # A chart axis.
94
- # @!attribute [rw] label
95
- # @return [String]
96
- # The label of the axis.
97
- # @!attribute [rw] scale
98
- # @return [Google::Monitoring::Dashboard::V1::XyChart::Axis::Scale]
99
- # The axis scale. By default, a linear scale is used.
100
- class Axis
101
- # Types of scales used in axes.
102
- module Scale
103
- # Scale is unspecified. The view will default to `LINEAR`.
104
- SCALE_UNSPECIFIED = 0
105
-
106
- # Linear scale.
107
- LINEAR = 1
108
-
109
- # Logarithmic scale (base 10).
110
- LOG10 = 2
111
- end
112
- end
113
- end
114
-
115
- # Options to control visual rendering of a chart.
116
- # @!attribute [rw] mode
117
- # @return [Google::Monitoring::Dashboard::V1::ChartOptions::Mode]
118
- # The chart mode.
119
- class ChartOptions
120
- # Chart mode options.
121
- module Mode
122
- # Mode is unspecified. The view will default to `COLOR`.
123
- MODE_UNSPECIFIED = 0
124
-
125
- # The chart distinguishes data series using different color. Line
126
- # colors may get reused when there are many lines in the chart.
127
- COLOR = 1
128
-
129
- # The chart uses the Stackdriver x-ray mode, in which each
130
- # data set is plotted using the same semi-transparent color.
131
- X_RAY = 2
132
-
133
- # The chart displays statistics such as average, median, 95th percentile,
134
- # and more.
135
- STATS = 3
136
- end
137
- end
138
- end
139
- end
140
- end
141
- end
@@ -1,91 +0,0 @@
1
- # Copyright 2020 Google LLC
2
- #
3
- # Licensed under the Apache License, Version 2.0 (the "License");
4
- # you may not use this file except in compliance with the License.
5
- # You may obtain a copy of the License at
6
- #
7
- # https://www.apache.org/licenses/LICENSE-2.0
8
- #
9
- # Unless required by applicable law or agreed to in writing, software
10
- # distributed under the License is distributed on an "AS IS" BASIS,
11
- # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
- # See the License for the specific language governing permissions and
13
- # limitations under the License.
14
-
15
-
16
- module Google
17
- module Protobuf
18
- # A Duration represents a signed, fixed-length span of time represented
19
- # as a count of seconds and fractions of seconds at nanosecond
20
- # resolution. It is independent of any calendar and concepts like "day"
21
- # or "month". It is related to Timestamp in that the difference between
22
- # two Timestamp values is a Duration and it can be added or subtracted
23
- # from a Timestamp. Range is approximately +-10,000 years.
24
- #
25
- # = Examples
26
- #
27
- # Example 1: Compute Duration from two Timestamps in pseudo code.
28
- #
29
- # Timestamp start = ...;
30
- # Timestamp end = ...;
31
- # Duration duration = ...;
32
- #
33
- # duration.seconds = end.seconds - start.seconds;
34
- # duration.nanos = end.nanos - start.nanos;
35
- #
36
- # if (duration.seconds < 0 && duration.nanos > 0) {
37
- # duration.seconds += 1;
38
- # duration.nanos -= 1000000000;
39
- # } else if (durations.seconds > 0 && duration.nanos < 0) {
40
- # duration.seconds -= 1;
41
- # duration.nanos += 1000000000;
42
- # }
43
- #
44
- # Example 2: Compute Timestamp from Timestamp + Duration in pseudo code.
45
- #
46
- # Timestamp start = ...;
47
- # Duration duration = ...;
48
- # Timestamp end = ...;
49
- #
50
- # end.seconds = start.seconds + duration.seconds;
51
- # end.nanos = start.nanos + duration.nanos;
52
- #
53
- # if (end.nanos < 0) {
54
- # end.seconds -= 1;
55
- # end.nanos += 1000000000;
56
- # } else if (end.nanos >= 1000000000) {
57
- # end.seconds += 1;
58
- # end.nanos -= 1000000000;
59
- # }
60
- #
61
- # Example 3: Compute Duration from datetime.timedelta in Python.
62
- #
63
- # td = datetime.timedelta(days=3, minutes=10)
64
- # duration = Duration()
65
- # duration.FromTimedelta(td)
66
- #
67
- # = JSON Mapping
68
- #
69
- # In JSON format, the Duration type is encoded as a string rather than an
70
- # object, where the string ends in the suffix "s" (indicating seconds) and
71
- # is preceded by the number of seconds, with nanoseconds expressed as
72
- # fractional seconds. For example, 3 seconds with 0 nanoseconds should be
73
- # encoded in JSON format as "3s", while 3 seconds and 1 nanosecond should
74
- # be expressed in JSON format as "3.000000001s", and 3 seconds and 1
75
- # microsecond should be expressed in JSON format as "3.000001s".
76
- # @!attribute [rw] seconds
77
- # @return [Integer]
78
- # Signed seconds of the span of time. Must be from -315,576,000,000
79
- # to +315,576,000,000 inclusive. Note: these bounds are computed from:
80
- # 60 sec/min * 60 min/hr * 24 hr/day * 365.25 days/year * 10000 years
81
- # @!attribute [rw] nanos
82
- # @return [Integer]
83
- # Signed fractions of a second at nanosecond resolution of the span
84
- # of time. Durations less than one second are represented with a 0
85
- # `seconds` field and a positive or negative `nanos` field. For durations
86
- # of one second or more, a non-zero value for the `nanos` field must be
87
- # of the same sign as the `seconds` field. Must be from -999,999,999
88
- # to +999,999,999 inclusive.
89
- class Duration; end
90
- end
91
- end
@@ -1,29 +0,0 @@
1
- # Copyright 2020 Google LLC
2
- #
3
- # Licensed under the Apache License, Version 2.0 (the "License");
4
- # you may not use this file except in compliance with the License.
5
- # You may obtain a copy of the License at
6
- #
7
- # https://www.apache.org/licenses/LICENSE-2.0
8
- #
9
- # Unless required by applicable law or agreed to in writing, software
10
- # distributed under the License is distributed on an "AS IS" BASIS,
11
- # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
- # See the License for the specific language governing permissions and
13
- # limitations under the License.
14
-
15
-
16
- module Google
17
- module Protobuf
18
- # A generic empty message that you can re-use to avoid defining duplicated
19
- # empty messages in your APIs. A typical example is to use it as the request
20
- # or the response type of an API method. For instance:
21
- #
22
- # service Foo {
23
- # rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty);
24
- # }
25
- #
26
- # The JSON representation for `Empty` is empty JSON object `{}`.
27
- class Empty; end
28
- end
29
- end
@@ -1,532 +0,0 @@
1
- # Copyright 2020 Google LLC
2
- #
3
- # Licensed under the Apache License, Version 2.0 (the "License");
4
- # you may not use this file except in compliance with the License.
5
- # You may obtain a copy of the License at
6
- #
7
- # https://www.apache.org/licenses/LICENSE-2.0
8
- #
9
- # Unless required by applicable law or agreed to in writing, software
10
- # distributed under the License is distributed on an "AS IS" BASIS,
11
- # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
- # See the License for the specific language governing permissions and
13
- # limitations under the License.
14
-
15
-
16
- require "google/cloud/monitoring/v3/alert_policy_service_client"
17
- require "google/cloud/monitoring/v3/group_service_client"
18
- require "google/cloud/monitoring/v3/metric_service_client"
19
- require "google/cloud/monitoring/v3/notification_channel_service_client"
20
- require "google/cloud/monitoring/v3/service_monitoring_service_client"
21
- require "google/cloud/monitoring/v3/uptime_check_service_client"
22
- require "google/monitoring/v3/span_context_pb"
23
- require "google/monitoring/v3/dropped_labels_pb"
24
-
25
- module Google
26
- module Cloud
27
- module Monitoring
28
- # rubocop:disable LineLength
29
-
30
- ##
31
- # # Ruby Client for Cloud Monitoring API
32
- #
33
- # [Cloud Monitoring API][Product Documentation]:
34
- # Manages your Cloud Monitoring data and configurations. Most projects must
35
- # be associated with a Workspace, with a few exceptions as noted on the
36
- # individual method pages. The table entries below are presented in
37
- # alphabetical order, not in order of common use. For explanations of the
38
- # concepts found in the table entries, read the [Cloud Monitoring
39
- # documentation](https://cloud.google.com/monitoring/docs).
40
- # - [Product Documentation][]
41
- #
42
- # ## Quick Start
43
- # In order to use this library, you first need to go through the following
44
- # steps:
45
- #
46
- # 1. [Select or create a Cloud Platform project.](https://console.cloud.google.com/project)
47
- # 2. [Enable billing for your project.](https://cloud.google.com/billing/docs/how-to/modify-project#enable_billing_for_a_project)
48
- # 3. [Enable the Cloud Monitoring API.](https://console.cloud.google.com/apis/library/monitoring.googleapis.com)
49
- # 4. [Setup Authentication.](https://googleapis.dev/ruby/google-cloud-monitoring/latest/file.AUTHENTICATION.html)
50
- #
51
- # ### Installation
52
- # ```
53
- # $ gem install google-cloud-monitoring
54
- # ```
55
- #
56
- # ### Preview
57
- # #### MetricServiceClient
58
- # ```rb
59
- # require "google/cloud/monitoring"
60
- #
61
- # metric_client = Google::Cloud::Monitoring::Metric.new(version: :v3)
62
- # formatted_name = Google::Cloud::Monitoring::V3::MetricServiceClient.project_path(project_id)
63
- #
64
- # # Iterate over all results.
65
- # metric_client.list_monitored_resource_descriptors(formatted_name).each do |element|
66
- # # Process element.
67
- # end
68
- #
69
- # # Or iterate over results one page at a time.
70
- # metric_client.list_monitored_resource_descriptors(formatted_name).each_page do |page|
71
- # # Process each page at a time.
72
- # page.each do |element|
73
- # # Process element.
74
- # end
75
- # end
76
- # ```
77
- #
78
- # ### Next Steps
79
- # - Read the [Cloud Monitoring API Product documentation][Product Documentation]
80
- # to learn more about the product and see How-to Guides.
81
- # - View this [repository's main README](https://github.com/googleapis/google-cloud-ruby/blob/master/README.md)
82
- # to see the full list of Cloud APIs that we cover.
83
- #
84
- # [Product Documentation]: https://cloud.google.com/monitoring
85
- #
86
- # ## Enabling Logging
87
- #
88
- # To enable logging for this library, set the logger for the underlying [gRPC](https://github.com/grpc/grpc/tree/master/src/ruby) library.
89
- # The logger that you set may be a Ruby stdlib [`Logger`](https://ruby-doc.org/stdlib-2.5.0/libdoc/logger/rdoc/Logger.html) as shown below,
90
- # or a [`Google::Cloud::Logging::Logger`](https://googleapis.dev/ruby/google-cloud-logging/latest)
91
- # that will write logs to [Stackdriver Logging](https://cloud.google.com/logging/). See [grpc/logconfig.rb](https://github.com/grpc/grpc/blob/master/src/ruby/lib/grpc/logconfig.rb)
92
- # and the gRPC [spec_helper.rb](https://github.com/grpc/grpc/blob/master/src/ruby/spec/spec_helper.rb) for additional information.
93
- #
94
- # Configuring a Ruby stdlib logger:
95
- #
96
- # ```ruby
97
- # require "logger"
98
- #
99
- # module MyLogger
100
- # LOGGER = Logger.new $stderr, level: Logger::WARN
101
- # def logger
102
- # LOGGER
103
- # end
104
- # end
105
- #
106
- # # Define a gRPC module-level logger method before grpc/logconfig.rb loads.
107
- # module GRPC
108
- # extend MyLogger
109
- # end
110
- # ```
111
- #
112
- module V3
113
- # rubocop:enable LineLength
114
-
115
- module AlertPolicy
116
- ##
117
- # The AlertPolicyService API is used to manage (list, create, delete,
118
- # edit) alert policies in Stackdriver Monitoring. An alerting policy is
119
- # a description of the conditions under which some aspect of your
120
- # system is considered to be "unhealthy" and the ways to notify
121
- # people or services about this state. In addition to using this API, alert
122
- # policies can also be managed through
123
- # [Stackdriver Monitoring](https://cloud.google.com/monitoring/docs/),
124
- # which can be reached by clicking the "Monitoring" tab in
125
- # [Cloud Console](https://console.cloud.google.com/).
126
- #
127
- # @param credentials [Google::Auth::Credentials, String, Hash, GRPC::Core::Channel, GRPC::Core::ChannelCredentials, Proc]
128
- # Provides the means for authenticating requests made by the client. This parameter can
129
- # be many types.
130
- # A `Google::Auth::Credentials` uses a the properties of its represented keyfile for
131
- # authenticating requests made by this client.
132
- # A `String` will be treated as the path to the keyfile to be used for the construction of
133
- # credentials for this client.
134
- # A `Hash` will be treated as the contents of a keyfile to be used for the construction of
135
- # credentials for this client.
136
- # A `GRPC::Core::Channel` will be used to make calls through.
137
- # A `GRPC::Core::ChannelCredentials` for the setting up the RPC client. The channel credentials
138
- # should already be composed with a `GRPC::Core::CallCredentials` object.
139
- # A `Proc` will be used as an updater_proc for the Grpc channel. The proc transforms the
140
- # metadata for requests, generally, to give OAuth credentials.
141
- # @param scopes [Array<String>]
142
- # The OAuth scopes for this service. This parameter is ignored if
143
- # an updater_proc is supplied.
144
- # @param client_config [Hash]
145
- # A Hash for call options for each method. See
146
- # Google::Gax#construct_settings for the structure of
147
- # this data. Falls back to the default config if not specified
148
- # or the specified config is missing data points.
149
- # @param timeout [Numeric]
150
- # The default timeout, in seconds, for calls made through this client.
151
- # @param metadata [Hash]
152
- # Default metadata to be sent with each request. This can be overridden on a per call basis.
153
- # @param service_address [String]
154
- # Override for the service hostname, or `nil` to leave as the default.
155
- # @param service_port [Integer]
156
- # Override for the service port, or `nil` to leave as the default.
157
- # @param exception_transformer [Proc]
158
- # An optional proc that intercepts any exceptions raised during an API call to inject
159
- # custom error handling.
160
- def self.new \
161
- credentials: nil,
162
- scopes: nil,
163
- client_config: nil,
164
- timeout: nil,
165
- metadata: nil,
166
- service_address: nil,
167
- service_port: nil,
168
- exception_transformer: nil,
169
- lib_name: nil,
170
- lib_version: nil
171
- kwargs = {
172
- credentials: credentials,
173
- scopes: scopes,
174
- client_config: client_config,
175
- timeout: timeout,
176
- metadata: metadata,
177
- exception_transformer: exception_transformer,
178
- lib_name: lib_name,
179
- service_address: service_address,
180
- service_port: service_port,
181
- lib_version: lib_version
182
- }.select { |_, v| v != nil }
183
- Google::Cloud::Monitoring::V3::AlertPolicyServiceClient.new(**kwargs)
184
- end
185
- end
186
-
187
- module Group
188
- ##
189
- # The Group API lets you inspect and manage your
190
- # [groups](https://cloud.google.com#google.monitoring.v3.Group).
191
- #
192
- # A group is a named filter that is used to identify
193
- # a collection of monitored resources. Groups are typically used to
194
- # mirror the physical and/or logical topology of the environment.
195
- # Because group membership is computed dynamically, monitored
196
- # resources that are started in the future are automatically placed
197
- # in matching groups. By using a group to name monitored resources in,
198
- # for example, an alert policy, the target of that alert policy is
199
- # updated automatically as monitored resources are added and removed
200
- # from the infrastructure.
201
- #
202
- # @param credentials [Google::Auth::Credentials, String, Hash, GRPC::Core::Channel, GRPC::Core::ChannelCredentials, Proc]
203
- # Provides the means for authenticating requests made by the client. This parameter can
204
- # be many types.
205
- # A `Google::Auth::Credentials` uses a the properties of its represented keyfile for
206
- # authenticating requests made by this client.
207
- # A `String` will be treated as the path to the keyfile to be used for the construction of
208
- # credentials for this client.
209
- # A `Hash` will be treated as the contents of a keyfile to be used for the construction of
210
- # credentials for this client.
211
- # A `GRPC::Core::Channel` will be used to make calls through.
212
- # A `GRPC::Core::ChannelCredentials` for the setting up the RPC client. The channel credentials
213
- # should already be composed with a `GRPC::Core::CallCredentials` object.
214
- # A `Proc` will be used as an updater_proc for the Grpc channel. The proc transforms the
215
- # metadata for requests, generally, to give OAuth credentials.
216
- # @param scopes [Array<String>]
217
- # The OAuth scopes for this service. This parameter is ignored if
218
- # an updater_proc is supplied.
219
- # @param client_config [Hash]
220
- # A Hash for call options for each method. See
221
- # Google::Gax#construct_settings for the structure of
222
- # this data. Falls back to the default config if not specified
223
- # or the specified config is missing data points.
224
- # @param timeout [Numeric]
225
- # The default timeout, in seconds, for calls made through this client.
226
- # @param metadata [Hash]
227
- # Default metadata to be sent with each request. This can be overridden on a per call basis.
228
- # @param service_address [String]
229
- # Override for the service hostname, or `nil` to leave as the default.
230
- # @param service_port [Integer]
231
- # Override for the service port, or `nil` to leave as the default.
232
- # @param exception_transformer [Proc]
233
- # An optional proc that intercepts any exceptions raised during an API call to inject
234
- # custom error handling.
235
- def self.new \
236
- credentials: nil,
237
- scopes: nil,
238
- client_config: nil,
239
- timeout: nil,
240
- metadata: nil,
241
- service_address: nil,
242
- service_port: nil,
243
- exception_transformer: nil,
244
- lib_name: nil,
245
- lib_version: nil
246
- kwargs = {
247
- credentials: credentials,
248
- scopes: scopes,
249
- client_config: client_config,
250
- timeout: timeout,
251
- metadata: metadata,
252
- exception_transformer: exception_transformer,
253
- lib_name: lib_name,
254
- service_address: service_address,
255
- service_port: service_port,
256
- lib_version: lib_version
257
- }.select { |_, v| v != nil }
258
- Google::Cloud::Monitoring::V3::GroupServiceClient.new(**kwargs)
259
- end
260
- end
261
-
262
- module Metric
263
- ##
264
- # Manages metric descriptors, monitored resource descriptors, and
265
- # time series data.
266
- #
267
- # @param credentials [Google::Auth::Credentials, String, Hash, GRPC::Core::Channel, GRPC::Core::ChannelCredentials, Proc]
268
- # Provides the means for authenticating requests made by the client. This parameter can
269
- # be many types.
270
- # A `Google::Auth::Credentials` uses a the properties of its represented keyfile for
271
- # authenticating requests made by this client.
272
- # A `String` will be treated as the path to the keyfile to be used for the construction of
273
- # credentials for this client.
274
- # A `Hash` will be treated as the contents of a keyfile to be used for the construction of
275
- # credentials for this client.
276
- # A `GRPC::Core::Channel` will be used to make calls through.
277
- # A `GRPC::Core::ChannelCredentials` for the setting up the RPC client. The channel credentials
278
- # should already be composed with a `GRPC::Core::CallCredentials` object.
279
- # A `Proc` will be used as an updater_proc for the Grpc channel. The proc transforms the
280
- # metadata for requests, generally, to give OAuth credentials.
281
- # @param scopes [Array<String>]
282
- # The OAuth scopes for this service. This parameter is ignored if
283
- # an updater_proc is supplied.
284
- # @param client_config [Hash]
285
- # A Hash for call options for each method. See
286
- # Google::Gax#construct_settings for the structure of
287
- # this data. Falls back to the default config if not specified
288
- # or the specified config is missing data points.
289
- # @param timeout [Numeric]
290
- # The default timeout, in seconds, for calls made through this client.
291
- # @param metadata [Hash]
292
- # Default metadata to be sent with each request. This can be overridden on a per call basis.
293
- # @param service_address [String]
294
- # Override for the service hostname, or `nil` to leave as the default.
295
- # @param service_port [Integer]
296
- # Override for the service port, or `nil` to leave as the default.
297
- # @param exception_transformer [Proc]
298
- # An optional proc that intercepts any exceptions raised during an API call to inject
299
- # custom error handling.
300
- def self.new \
301
- credentials: nil,
302
- scopes: nil,
303
- client_config: nil,
304
- timeout: nil,
305
- metadata: nil,
306
- service_address: nil,
307
- service_port: nil,
308
- exception_transformer: nil,
309
- lib_name: nil,
310
- lib_version: nil
311
- kwargs = {
312
- credentials: credentials,
313
- scopes: scopes,
314
- client_config: client_config,
315
- timeout: timeout,
316
- metadata: metadata,
317
- exception_transformer: exception_transformer,
318
- lib_name: lib_name,
319
- service_address: service_address,
320
- service_port: service_port,
321
- lib_version: lib_version
322
- }.select { |_, v| v != nil }
323
- Google::Cloud::Monitoring::V3::MetricServiceClient.new(**kwargs)
324
- end
325
- end
326
-
327
- module NotificationChannel
328
- ##
329
- # The Notification Channel API provides access to configuration that
330
- # controls how messages related to incidents are sent.
331
- #
332
- # @param credentials [Google::Auth::Credentials, String, Hash, GRPC::Core::Channel, GRPC::Core::ChannelCredentials, Proc]
333
- # Provides the means for authenticating requests made by the client. This parameter can
334
- # be many types.
335
- # A `Google::Auth::Credentials` uses a the properties of its represented keyfile for
336
- # authenticating requests made by this client.
337
- # A `String` will be treated as the path to the keyfile to be used for the construction of
338
- # credentials for this client.
339
- # A `Hash` will be treated as the contents of a keyfile to be used for the construction of
340
- # credentials for this client.
341
- # A `GRPC::Core::Channel` will be used to make calls through.
342
- # A `GRPC::Core::ChannelCredentials` for the setting up the RPC client. The channel credentials
343
- # should already be composed with a `GRPC::Core::CallCredentials` object.
344
- # A `Proc` will be used as an updater_proc for the Grpc channel. The proc transforms the
345
- # metadata for requests, generally, to give OAuth credentials.
346
- # @param scopes [Array<String>]
347
- # The OAuth scopes for this service. This parameter is ignored if
348
- # an updater_proc is supplied.
349
- # @param client_config [Hash]
350
- # A Hash for call options for each method. See
351
- # Google::Gax#construct_settings for the structure of
352
- # this data. Falls back to the default config if not specified
353
- # or the specified config is missing data points.
354
- # @param timeout [Numeric]
355
- # The default timeout, in seconds, for calls made through this client.
356
- # @param metadata [Hash]
357
- # Default metadata to be sent with each request. This can be overridden on a per call basis.
358
- # @param service_address [String]
359
- # Override for the service hostname, or `nil` to leave as the default.
360
- # @param service_port [Integer]
361
- # Override for the service port, or `nil` to leave as the default.
362
- # @param exception_transformer [Proc]
363
- # An optional proc that intercepts any exceptions raised during an API call to inject
364
- # custom error handling.
365
- def self.new \
366
- credentials: nil,
367
- scopes: nil,
368
- client_config: nil,
369
- timeout: nil,
370
- metadata: nil,
371
- service_address: nil,
372
- service_port: nil,
373
- exception_transformer: nil,
374
- lib_name: nil,
375
- lib_version: nil
376
- kwargs = {
377
- credentials: credentials,
378
- scopes: scopes,
379
- client_config: client_config,
380
- timeout: timeout,
381
- metadata: metadata,
382
- exception_transformer: exception_transformer,
383
- lib_name: lib_name,
384
- service_address: service_address,
385
- service_port: service_port,
386
- lib_version: lib_version
387
- }.select { |_, v| v != nil }
388
- Google::Cloud::Monitoring::V3::NotificationChannelServiceClient.new(**kwargs)
389
- end
390
- end
391
-
392
- module ServiceMonitoring
393
- ##
394
- # The Cloud Monitoring Service-Oriented Monitoring API has endpoints for
395
- # managing and querying aspects of a workspace's services. These include the
396
- # `Service`'s monitored resources, its Service-Level Objectives, and a taxonomy
397
- # of categorized Health Metrics.
398
- #
399
- # @param credentials [Google::Auth::Credentials, String, Hash, GRPC::Core::Channel, GRPC::Core::ChannelCredentials, Proc]
400
- # Provides the means for authenticating requests made by the client. This parameter can
401
- # be many types.
402
- # A `Google::Auth::Credentials` uses a the properties of its represented keyfile for
403
- # authenticating requests made by this client.
404
- # A `String` will be treated as the path to the keyfile to be used for the construction of
405
- # credentials for this client.
406
- # A `Hash` will be treated as the contents of a keyfile to be used for the construction of
407
- # credentials for this client.
408
- # A `GRPC::Core::Channel` will be used to make calls through.
409
- # A `GRPC::Core::ChannelCredentials` for the setting up the RPC client. The channel credentials
410
- # should already be composed with a `GRPC::Core::CallCredentials` object.
411
- # A `Proc` will be used as an updater_proc for the Grpc channel. The proc transforms the
412
- # metadata for requests, generally, to give OAuth credentials.
413
- # @param scopes [Array<String>]
414
- # The OAuth scopes for this service. This parameter is ignored if
415
- # an updater_proc is supplied.
416
- # @param client_config [Hash]
417
- # A Hash for call options for each method. See
418
- # Google::Gax#construct_settings for the structure of
419
- # this data. Falls back to the default config if not specified
420
- # or the specified config is missing data points.
421
- # @param timeout [Numeric]
422
- # The default timeout, in seconds, for calls made through this client.
423
- # @param metadata [Hash]
424
- # Default metadata to be sent with each request. This can be overridden on a per call basis.
425
- # @param service_address [String]
426
- # Override for the service hostname, or `nil` to leave as the default.
427
- # @param service_port [Integer]
428
- # Override for the service port, or `nil` to leave as the default.
429
- # @param exception_transformer [Proc]
430
- # An optional proc that intercepts any exceptions raised during an API call to inject
431
- # custom error handling.
432
- def self.new \
433
- credentials: nil,
434
- scopes: nil,
435
- client_config: nil,
436
- timeout: nil,
437
- metadata: nil,
438
- service_address: nil,
439
- service_port: nil,
440
- exception_transformer: nil,
441
- lib_name: nil,
442
- lib_version: nil
443
- kwargs = {
444
- credentials: credentials,
445
- scopes: scopes,
446
- client_config: client_config,
447
- timeout: timeout,
448
- metadata: metadata,
449
- exception_transformer: exception_transformer,
450
- lib_name: lib_name,
451
- service_address: service_address,
452
- service_port: service_port,
453
- lib_version: lib_version
454
- }.select { |_, v| v != nil }
455
- Google::Cloud::Monitoring::V3::ServiceMonitoringServiceClient.new(**kwargs)
456
- end
457
- end
458
-
459
- module UptimeCheck
460
- ##
461
- # The UptimeCheckService API is used to manage (list, create, delete, edit)
462
- # Uptime check configurations in the Stackdriver Monitoring product. An Uptime
463
- # check is a piece of configuration that determines which resources and
464
- # services to monitor for availability. These configurations can also be
465
- # configured interactively by navigating to the [Cloud Console]
466
- # (http://console.cloud.google.com), selecting the appropriate project,
467
- # clicking on "Monitoring" on the left-hand side to navigate to Stackdriver,
468
- # and then clicking on "Uptime".
469
- #
470
- # @param credentials [Google::Auth::Credentials, String, Hash, GRPC::Core::Channel, GRPC::Core::ChannelCredentials, Proc]
471
- # Provides the means for authenticating requests made by the client. This parameter can
472
- # be many types.
473
- # A `Google::Auth::Credentials` uses a the properties of its represented keyfile for
474
- # authenticating requests made by this client.
475
- # A `String` will be treated as the path to the keyfile to be used for the construction of
476
- # credentials for this client.
477
- # A `Hash` will be treated as the contents of a keyfile to be used for the construction of
478
- # credentials for this client.
479
- # A `GRPC::Core::Channel` will be used to make calls through.
480
- # A `GRPC::Core::ChannelCredentials` for the setting up the RPC client. The channel credentials
481
- # should already be composed with a `GRPC::Core::CallCredentials` object.
482
- # A `Proc` will be used as an updater_proc for the Grpc channel. The proc transforms the
483
- # metadata for requests, generally, to give OAuth credentials.
484
- # @param scopes [Array<String>]
485
- # The OAuth scopes for this service. This parameter is ignored if
486
- # an updater_proc is supplied.
487
- # @param client_config [Hash]
488
- # A Hash for call options for each method. See
489
- # Google::Gax#construct_settings for the structure of
490
- # this data. Falls back to the default config if not specified
491
- # or the specified config is missing data points.
492
- # @param timeout [Numeric]
493
- # The default timeout, in seconds, for calls made through this client.
494
- # @param metadata [Hash]
495
- # Default metadata to be sent with each request. This can be overridden on a per call basis.
496
- # @param service_address [String]
497
- # Override for the service hostname, or `nil` to leave as the default.
498
- # @param service_port [Integer]
499
- # Override for the service port, or `nil` to leave as the default.
500
- # @param exception_transformer [Proc]
501
- # An optional proc that intercepts any exceptions raised during an API call to inject
502
- # custom error handling.
503
- def self.new \
504
- credentials: nil,
505
- scopes: nil,
506
- client_config: nil,
507
- timeout: nil,
508
- metadata: nil,
509
- service_address: nil,
510
- service_port: nil,
511
- exception_transformer: nil,
512
- lib_name: nil,
513
- lib_version: nil
514
- kwargs = {
515
- credentials: credentials,
516
- scopes: scopes,
517
- client_config: client_config,
518
- timeout: timeout,
519
- metadata: metadata,
520
- exception_transformer: exception_transformer,
521
- lib_name: lib_name,
522
- service_address: service_address,
523
- service_port: service_port,
524
- lib_version: lib_version
525
- }.select { |_, v| v != nil }
526
- Google::Cloud::Monitoring::V3::UptimeCheckServiceClient.new(**kwargs)
527
- end
528
- end
529
- end
530
- end
531
- end
532
- end