google-api-client 0.9.8 → 0.9.20

Sign up to get free protection for your applications and to get access to all the features.
Files changed (238) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +37 -0
  3. data/Gemfile +9 -1
  4. data/README.md +10 -2
  5. data/api_names.yaml +63 -110
  6. data/generated/google/apis/adexchangebuyer2_v2beta1.rb +35 -0
  7. data/generated/google/apis/adexchangebuyer2_v2beta1/classes.rb +298 -0
  8. data/generated/google/apis/adexchangebuyer2_v2beta1/representations.rb +122 -0
  9. data/generated/google/apis/adexchangebuyer2_v2beta1/service.rb +458 -0
  10. data/generated/google/apis/adexchangebuyer_v1_4.rb +1 -1
  11. data/generated/google/apis/adexchangebuyer_v1_4/classes.rb +260 -13
  12. data/generated/google/apis/adexchangebuyer_v1_4/representations.rb +81 -0
  13. data/generated/google/apis/adexchangebuyer_v1_4/service.rb +60 -8
  14. data/generated/google/apis/adexchangeseller_v2_0.rb +2 -3
  15. data/generated/google/apis/adexchangeseller_v2_0/service.rb +1 -2
  16. data/generated/google/apis/admin_directory_v1.rb +1 -1
  17. data/generated/google/apis/admin_directory_v1/classes.rb +86 -0
  18. data/generated/google/apis/admin_directory_v1/representations.rb +24 -0
  19. data/generated/google/apis/admin_directory_v1/service.rb +41 -2
  20. data/generated/google/apis/admin_reports_v1.rb +3 -3
  21. data/generated/google/apis/admin_reports_v1/service.rb +2 -2
  22. data/generated/google/apis/adsense_v1_4.rb +1 -1
  23. data/generated/google/apis/adsense_v1_4/classes.rb +1 -1
  24. data/generated/google/apis/adsensehost_v4_1.rb +1 -1
  25. data/generated/google/apis/adsensehost_v4_1/classes.rb +1 -2
  26. data/generated/google/apis/analytics_v3.rb +1 -1
  27. data/generated/google/apis/analytics_v3/classes.rb +379 -3
  28. data/generated/google/apis/analytics_v3/representations.rb +136 -0
  29. data/generated/google/apis/analytics_v3/service.rb +217 -0
  30. data/generated/google/apis/analyticsreporting_v4.rb +1 -1
  31. data/generated/google/apis/analyticsreporting_v4/classes.rb +50 -22
  32. data/generated/google/apis/androidenterprise_v1.rb +1 -1
  33. data/generated/google/apis/androidenterprise_v1/classes.rb +813 -49
  34. data/generated/google/apis/androidenterprise_v1/representations.rb +336 -0
  35. data/generated/google/apis/androidenterprise_v1/service.rb +1234 -145
  36. data/generated/google/apis/androidpublisher_v2.rb +1 -1
  37. data/generated/google/apis/androidpublisher_v2/classes.rb +47 -8
  38. data/generated/google/apis/androidpublisher_v2/representations.rb +27 -0
  39. data/generated/google/apis/androidpublisher_v2/service.rb +55 -0
  40. data/generated/google/apis/appengine_v1beta5.rb +7 -1
  41. data/generated/google/apis/appengine_v1beta5/classes.rb +516 -313
  42. data/generated/google/apis/appengine_v1beta5/representations.rb +115 -22
  43. data/generated/google/apis/appengine_v1beta5/service.rb +329 -33
  44. data/generated/google/apis/appsactivity_v1.rb +1 -1
  45. data/generated/google/apis/appsactivity_v1/classes.rb +7 -0
  46. data/generated/google/apis/appsactivity_v1/representations.rb +1 -0
  47. data/generated/google/apis/appstate_v1.rb +1 -1
  48. data/generated/google/apis/bigquery_v2.rb +1 -1
  49. data/generated/google/apis/bigquery_v2/classes.rb +277 -20
  50. data/generated/google/apis/bigquery_v2/representations.rb +86 -0
  51. data/generated/google/apis/bigquery_v2/service.rb +8 -2
  52. data/generated/google/apis/books_v1.rb +2 -2
  53. data/generated/google/apis/books_v1/classes.rb +79 -1
  54. data/generated/google/apis/books_v1/representations.rb +34 -0
  55. data/generated/google/apis/books_v1/service.rb +7 -3
  56. data/generated/google/apis/calendar_v3.rb +1 -1
  57. data/generated/google/apis/civicinfo_v2.rb +3 -2
  58. data/generated/google/apis/civicinfo_v2/classes.rb +377 -5
  59. data/generated/google/apis/civicinfo_v2/representations.rb +149 -0
  60. data/generated/google/apis/civicinfo_v2/service.rb +27 -6
  61. data/generated/google/apis/classroom_v1.rb +1 -1
  62. data/generated/google/apis/classroom_v1/classes.rb +183 -37
  63. data/generated/google/apis/classroom_v1/representations.rb +74 -9
  64. data/generated/google/apis/classroom_v1/service.rb +403 -38
  65. data/generated/google/apis/cloudbuild_v1.rb +1 -1
  66. data/generated/google/apis/cloudbuild_v1/classes.rb +381 -17
  67. data/generated/google/apis/cloudbuild_v1/representations.rb +137 -2
  68. data/generated/google/apis/cloudbuild_v1/service.rb +174 -1
  69. data/generated/google/apis/clouddebugger_v2.rb +3 -6
  70. data/generated/google/apis/clouddebugger_v2/service.rb +4 -4
  71. data/generated/google/apis/cloudmonitoring_v2beta2.rb +1 -1
  72. data/generated/google/apis/cloudresourcemanager_v1.rb +1 -1
  73. data/generated/google/apis/cloudresourcemanager_v1/classes.rb +502 -111
  74. data/generated/google/apis/cloudresourcemanager_v1/representations.rb +162 -24
  75. data/generated/google/apis/cloudresourcemanager_v1/service.rb +274 -30
  76. data/generated/google/apis/cloudresourcemanager_v1beta1.rb +1 -1
  77. data/generated/google/apis/cloudresourcemanager_v1beta1/classes.rb +121 -9
  78. data/generated/google/apis/cloudresourcemanager_v1beta1/representations.rb +46 -0
  79. data/generated/google/apis/cloudresourcemanager_v1beta1/service.rb +71 -58
  80. data/generated/google/apis/compute_beta.rb +1 -1
  81. data/generated/google/apis/compute_beta/classes.rb +2299 -434
  82. data/generated/google/apis/compute_beta/representations.rb +752 -33
  83. data/generated/google/apis/compute_beta/service.rb +6067 -3153
  84. data/generated/google/apis/compute_v1.rb +1 -1
  85. data/generated/google/apis/compute_v1/classes.rb +1681 -207
  86. data/generated/google/apis/compute_v1/representations.rb +552 -0
  87. data/generated/google/apis/compute_v1/service.rb +2797 -1171
  88. data/generated/google/apis/content_v2.rb +1 -1
  89. data/generated/google/apis/content_v2/classes.rb +757 -1
  90. data/generated/google/apis/content_v2/representations.rb +337 -0
  91. data/generated/google/apis/content_v2/service.rb +244 -0
  92. data/generated/google/apis/dataflow_v1b3.rb +38 -0
  93. data/generated/google/apis/dataflow_v1b3/classes.rb +4053 -0
  94. data/generated/google/apis/dataflow_v1b3/representations.rb +1736 -0
  95. data/generated/google/apis/dataflow_v1b3/service.rb +875 -0
  96. data/generated/google/apis/dataproc_v1.rb +2 -2
  97. data/generated/google/apis/dataproc_v1/classes.rb +213 -68
  98. data/generated/google/apis/dataproc_v1/representations.rb +38 -0
  99. data/generated/google/apis/dataproc_v1/service.rb +78 -48
  100. data/generated/google/apis/datastore_v1.rb +38 -0
  101. data/generated/google/apis/datastore_v1/classes.rb +1284 -0
  102. data/generated/google/apis/datastore_v1/representations.rb +572 -0
  103. data/generated/google/apis/datastore_v1/service.rb +259 -0
  104. data/generated/google/apis/datastore_v1beta3.rb +38 -0
  105. data/generated/google/apis/datastore_v1beta3/classes.rb +1284 -0
  106. data/generated/google/apis/datastore_v1beta3/representations.rb +572 -0
  107. data/generated/google/apis/datastore_v1beta3/service.rb +259 -0
  108. data/generated/google/apis/deploymentmanager_v2.rb +1 -1
  109. data/generated/google/apis/deploymentmanager_v2/classes.rb +384 -2
  110. data/generated/google/apis/deploymentmanager_v2/representations.rb +161 -0
  111. data/generated/google/apis/deploymentmanager_v2/service.rb +217 -55
  112. data/generated/google/apis/dfareporting_v2_5.rb +40 -0
  113. data/generated/google/apis/dfareporting_v2_5/classes.rb +11225 -0
  114. data/generated/google/apis/dfareporting_v2_5/representations.rb +3982 -0
  115. data/generated/google/apis/dfareporting_v2_5/service.rb +8755 -0
  116. data/generated/google/apis/dfareporting_v2_6.rb +40 -0
  117. data/generated/google/apis/dfareporting_v2_6/classes.rb +11586 -0
  118. data/generated/google/apis/dfareporting_v2_6/representations.rb +4119 -0
  119. data/generated/google/apis/dfareporting_v2_6/service.rb +9025 -0
  120. data/generated/google/apis/dns_v1.rb +1 -1
  121. data/generated/google/apis/dns_v1/classes.rb +1 -1
  122. data/generated/google/apis/doubleclickbidmanager_v1.rb +1 -1
  123. data/generated/google/apis/doubleclickbidmanager_v1/classes.rb +79 -86
  124. data/generated/google/apis/doubleclickbidmanager_v1/representations.rb +25 -28
  125. data/generated/google/apis/doubleclickbidmanager_v1/service.rb +10 -8
  126. data/generated/google/apis/doubleclicksearch_v2.rb +1 -1
  127. data/generated/google/apis/drive_v2.rb +1 -1
  128. data/generated/google/apis/drive_v2/classes.rb +27 -3
  129. data/generated/google/apis/drive_v2/representations.rb +4 -0
  130. data/generated/google/apis/drive_v2/service.rb +16 -3
  131. data/generated/google/apis/drive_v3.rb +1 -1
  132. data/generated/google/apis/drive_v3/classes.rb +50 -16
  133. data/generated/google/apis/drive_v3/representations.rb +4 -0
  134. data/generated/google/apis/drive_v3/service.rb +12 -2
  135. data/generated/google/apis/fitness_v1.rb +8 -2
  136. data/generated/google/apis/fitness_v1/classes.rb +64 -6
  137. data/generated/google/apis/fitness_v1/representations.rb +20 -0
  138. data/generated/google/apis/fitness_v1/service.rb +17 -18
  139. data/generated/google/apis/fusiontables_v2.rb +1 -1
  140. data/generated/google/apis/fusiontables_v2/classes.rb +4 -3
  141. data/generated/google/apis/games_configuration_v1configuration.rb +1 -1
  142. data/generated/google/apis/games_management_v1management.rb +1 -1
  143. data/generated/google/apis/games_v1.rb +1 -1
  144. data/generated/google/apis/genomics_v1.rb +2 -4
  145. data/generated/google/apis/genomics_v1/classes.rb +143 -34
  146. data/generated/google/apis/genomics_v1/representations.rb +48 -11
  147. data/generated/google/apis/genomics_v1/service.rb +35 -37
  148. data/generated/google/apis/gmail_v1.rb +10 -1
  149. data/generated/google/apis/gmail_v1/classes.rb +542 -4
  150. data/generated/google/apis/gmail_v1/representations.rb +213 -0
  151. data/generated/google/apis/gmail_v1/service.rb +898 -1
  152. data/generated/google/apis/groupssettings_v1.rb +1 -1
  153. data/generated/google/apis/groupssettings_v1/classes.rb +12 -0
  154. data/generated/google/apis/groupssettings_v1/representations.rb +2 -0
  155. data/generated/google/apis/iam_v1.rb +2 -2
  156. data/generated/google/apis/iam_v1/classes.rb +181 -206
  157. data/generated/google/apis/iam_v1/representations.rb +36 -45
  158. data/generated/google/apis/iam_v1/service.rb +101 -67
  159. data/generated/google/apis/identitytoolkit_v3.rb +4 -1
  160. data/generated/google/apis/identitytoolkit_v3/classes.rb +171 -1
  161. data/generated/google/apis/identitytoolkit_v3/representations.rb +26 -0
  162. data/generated/google/apis/language_v1beta1.rb +36 -0
  163. data/generated/google/apis/language_v1beta1/classes.rb +599 -0
  164. data/generated/google/apis/language_v1beta1/representations.rb +289 -0
  165. data/generated/google/apis/language_v1beta1/service.rb +152 -0
  166. data/generated/google/apis/logging_v2beta1.rb +6 -6
  167. data/generated/google/apis/logging_v2beta1/classes.rb +760 -731
  168. data/generated/google/apis/logging_v2beta1/representations.rb +136 -147
  169. data/generated/google/apis/logging_v2beta1/service.rb +290 -209
  170. data/generated/google/apis/mirror_v1.rb +2 -2
  171. data/generated/google/apis/mirror_v1/service.rb +1 -1
  172. data/generated/google/apis/monitoring_v3.rb +45 -0
  173. data/generated/google/apis/monitoring_v3/classes.rb +1337 -0
  174. data/generated/google/apis/monitoring_v3/representations.rb +516 -0
  175. data/generated/google/apis/monitoring_v3/service.rb +711 -0
  176. data/generated/google/apis/oauth2_v2.rb +1 -1
  177. data/generated/google/apis/pagespeedonline_v2.rb +1 -1
  178. data/generated/google/apis/plus_domains_v1.rb +1 -1
  179. data/generated/google/apis/plus_v1.rb +1 -1
  180. data/generated/google/apis/pubsub_v1.rb +1 -1
  181. data/generated/google/apis/pubsub_v1/classes.rb +10 -9
  182. data/generated/google/apis/pubsub_v1/service.rb +128 -27
  183. data/generated/google/apis/qpx_express_v1.rb +1 -1
  184. data/generated/google/apis/qpx_express_v1/classes.rb +6 -0
  185. data/generated/google/apis/qpx_express_v1/representations.rb +1 -0
  186. data/generated/google/apis/replicapool_v1beta2.rb +1 -1
  187. data/generated/google/apis/replicapoolupdater_v1beta1.rb +4 -2
  188. data/generated/google/apis/replicapoolupdater_v1beta1/service.rb +3 -1
  189. data/generated/google/apis/script_v1.rb +1 -1
  190. data/generated/google/apis/script_v1/classes.rb +6 -0
  191. data/generated/google/apis/script_v1/representations.rb +1 -0
  192. data/generated/google/apis/sheets_v4.rb +1 -1
  193. data/generated/google/apis/sheets_v4/classes.rb +910 -89
  194. data/generated/google/apis/sheets_v4/representations.rb +194 -10
  195. data/generated/google/apis/sheets_v4/service.rb +216 -49
  196. data/generated/google/apis/slides_v1.rb +49 -0
  197. data/generated/google/apis/slides_v1/classes.rb +3926 -0
  198. data/generated/google/apis/slides_v1/representations.rb +1722 -0
  199. data/generated/google/apis/slides_v1/service.rb +202 -0
  200. data/generated/google/apis/speech_v1beta1.rb +34 -0
  201. data/generated/google/apis/speech_v1beta1/classes.rb +511 -0
  202. data/generated/google/apis/speech_v1beta1/representations.rb +218 -0
  203. data/generated/google/apis/speech_v1beta1/service.rb +271 -0
  204. data/generated/google/apis/sqladmin_v1beta4.rb +1 -1
  205. data/generated/google/apis/sqladmin_v1beta4/classes.rb +32 -8
  206. data/generated/google/apis/sqladmin_v1beta4/representations.rb +3 -0
  207. data/generated/google/apis/sqladmin_v1beta4/service.rb +42 -0
  208. data/generated/google/apis/storage_v1.rb +1 -1
  209. data/generated/google/apis/storage_v1/classes.rb +43 -18
  210. data/generated/google/apis/storage_v1/representations.rb +4 -1
  211. data/generated/google/apis/storage_v1/service.rb +5 -2
  212. data/generated/google/apis/translate_v2.rb +2 -2
  213. data/generated/google/apis/translate_v2/service.rb +1 -1
  214. data/generated/google/apis/vision_v1.rb +1 -1
  215. data/generated/google/apis/vision_v1/classes.rb +12 -11
  216. data/generated/google/apis/youtube_analytics_v1.rb +1 -1
  217. data/generated/google/apis/youtube_partner_v1.rb +1 -1
  218. data/generated/google/apis/youtube_partner_v1/classes.rb +6 -0
  219. data/generated/google/apis/youtube_partner_v1/representations.rb +2 -0
  220. data/generated/google/apis/youtube_partner_v1/service.rb +15 -3
  221. data/generated/google/apis/youtube_v3.rb +1 -1
  222. data/generated/google/apis/youtube_v3/classes.rb +183 -21
  223. data/generated/google/apis/youtube_v3/representations.rb +85 -4
  224. data/generated/google/apis/youtube_v3/service.rb +41 -5
  225. data/generated/google/apis/youtubereporting_v1.rb +1 -1
  226. data/google-api-client.gemspec +2 -1
  227. data/lib/google/apis/core/api_command.rb +4 -0
  228. data/lib/google/apis/core/base_service.rb +10 -4
  229. data/lib/google/apis/core/download.rb +7 -2
  230. data/lib/google/apis/core/http_command.rb +5 -1
  231. data/lib/google/apis/core/upload.rb +7 -1
  232. data/lib/google/apis/errors.rb +2 -2
  233. data/lib/google/apis/generator/annotator.rb +6 -0
  234. data/lib/google/apis/version.rb +1 -1
  235. data/samples/cli/lib/samples/bigquery.rb +101 -0
  236. data/samples/cli/lib/samples/sheets.rb +61 -0
  237. data/sync.rb +71 -0
  238. metadata +55 -13
@@ -20,12 +20,12 @@ module Google
20
20
  module Apis
21
21
  # Google Mirror API
22
22
  #
23
- # API for interacting with Glass users via the timeline.
23
+ # Interacts with Glass users via the timeline.
24
24
  #
25
25
  # @see https://developers.google.com/glass
26
26
  module MirrorV1
27
27
  VERSION = 'V1'
28
- REVISION = '20151206'
28
+ REVISION = '20160616'
29
29
 
30
30
  # View your location
31
31
  AUTH_GLASS_LOCATION = 'https://www.googleapis.com/auth/glass.location'
@@ -22,7 +22,7 @@ module Google
22
22
  module MirrorV1
23
23
  # Google Mirror API
24
24
  #
25
- # API for interacting with Glass users via the timeline.
25
+ # Interacts with Glass users via the timeline.
26
26
  #
27
27
  # @example
28
28
  # require 'google/apis/mirror_v1'
@@ -0,0 +1,45 @@
1
+ # Copyright 2015 Google Inc.
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
+ # http://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
+ require 'google/apis/monitoring_v3/service.rb'
16
+ require 'google/apis/monitoring_v3/classes.rb'
17
+ require 'google/apis/monitoring_v3/representations.rb'
18
+
19
+ module Google
20
+ module Apis
21
+ # Stackdriver Monitoring API
22
+ #
23
+ # Manages your Stackdriver Monitoring data and configurations. Most projects
24
+ # must be associated with a Stackdriver account, with a few exceptions as noted
25
+ # on the individual method pages.
26
+ #
27
+ # @see https://cloud.google.com/monitoring/api/
28
+ module MonitoringV3
29
+ VERSION = 'V3'
30
+ REVISION = '20161031'
31
+
32
+ # View and manage your data across Google Cloud Platform services
33
+ AUTH_CLOUD_PLATFORM = 'https://www.googleapis.com/auth/cloud-platform'
34
+
35
+ # View monitoring data for all of your Google Cloud and third-party projects
36
+ AUTH_MONITORING_READ = 'https://www.googleapis.com/auth/monitoring.read'
37
+
38
+ # Publish metric data to your Google Cloud projects
39
+ AUTH_MONITORING_WRITE = 'https://www.googleapis.com/auth/monitoring.write'
40
+
41
+ # View and write monitoring data for all of your Google and third-party Cloud and API projects
42
+ AUTH_MONITORING = 'https://www.googleapis.com/auth/monitoring'
43
+ end
44
+ end
45
+ end
@@ -0,0 +1,1337 @@
1
+ # Copyright 2015 Google Inc.
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
+ # http://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
+ require 'date'
16
+ require 'google/apis/core/base_service'
17
+ require 'google/apis/core/json_representation'
18
+ require 'google/apis/core/hashable'
19
+ require 'google/apis/errors'
20
+
21
+ module Google
22
+ module Apis
23
+ module MonitoringV3
24
+
25
+ # A specific metric, identified by specifying values for all of the labels of a
26
+ # MetricDescriptor.
27
+ class Metric
28
+ include Google::Apis::Core::Hashable
29
+
30
+ # The set of label values that uniquely identify this metric. All labels listed
31
+ # in the MetricDescriptor must be assigned values.
32
+ # Corresponds to the JSON property `labels`
33
+ # @return [Hash<String,String>]
34
+ attr_accessor :labels
35
+
36
+ # An existing metric type, see google.api.MetricDescriptor. For example, custom.
37
+ # googleapis.com/invoice/paid/amount.
38
+ # Corresponds to the JSON property `type`
39
+ # @return [String]
40
+ attr_accessor :type
41
+
42
+ def initialize(**args)
43
+ update!(**args)
44
+ end
45
+
46
+ # Update properties of this object
47
+ def update!(**args)
48
+ @labels = args[:labels] if args.key?(:labels)
49
+ @type = args[:type] if args.key?(:type)
50
+ end
51
+ end
52
+
53
+ # The ListGroupMembers response.
54
+ class ListGroupMembersResponse
55
+ include Google::Apis::Core::Hashable
56
+
57
+ # A set of monitored resources in the group.
58
+ # Corresponds to the JSON property `members`
59
+ # @return [Array<Google::Apis::MonitoringV3::MonitoredResource>]
60
+ attr_accessor :members
61
+
62
+ # If there are more results than have been returned, then this field is set to a
63
+ # non-empty value. To see the additional results, use that value as pageToken in
64
+ # the next call to this method.
65
+ # Corresponds to the JSON property `nextPageToken`
66
+ # @return [String]
67
+ attr_accessor :next_page_token
68
+
69
+ # The total number of elements matching this request.
70
+ # Corresponds to the JSON property `totalSize`
71
+ # @return [Fixnum]
72
+ attr_accessor :total_size
73
+
74
+ def initialize(**args)
75
+ update!(**args)
76
+ end
77
+
78
+ # Update properties of this object
79
+ def update!(**args)
80
+ @members = args[:members] if args.key?(:members)
81
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
82
+ @total_size = args[:total_size] if args.key?(:total_size)
83
+ end
84
+ end
85
+
86
+ # A time interval extending just after a start time through an end time. If the
87
+ # start time is the same as the end time, then the interval represents a single
88
+ # point in time.
89
+ class TimeInterval
90
+ include Google::Apis::Core::Hashable
91
+
92
+ # Required. The end of the time interval.
93
+ # Corresponds to the JSON property `endTime`
94
+ # @return [String]
95
+ attr_accessor :end_time
96
+
97
+ # Optional. The beginning of the time interval. The default value for the start
98
+ # time is the end time. The start time must not be later than the end time.
99
+ # Corresponds to the JSON property `startTime`
100
+ # @return [String]
101
+ attr_accessor :start_time
102
+
103
+ def initialize(**args)
104
+ update!(**args)
105
+ end
106
+
107
+ # Update properties of this object
108
+ def update!(**args)
109
+ @end_time = args[:end_time] if args.key?(:end_time)
110
+ @start_time = args[:start_time] if args.key?(:start_time)
111
+ end
112
+ end
113
+
114
+ # The description of a dynamic collection of monitored resources. Each group has
115
+ # a filter that is matched against monitored resources and their associated
116
+ # metadata. If a group's filter matches an available monitored resource, then
117
+ # that resource is a member of that group. Groups can contain any number of
118
+ # monitored resources, and each monitored resource can be a member of any number
119
+ # of groups.Groups can be nested in parent-child hierarchies. The parentName
120
+ # field identifies an optional parent for each group. If a group has a parent,
121
+ # then the only monitored resources available to be matched by the group's
122
+ # filter are the resources contained in the parent group. In other words, a
123
+ # group contains the monitored resources that match its filter and the filters
124
+ # of all the group's ancestors. A group without a parent can contain any
125
+ # monitored resource.For example, consider an infrastructure running a set of
126
+ # instances with two user-defined tags: &quot;environment&quot; and &quot;role&
127
+ # quot;. A parent group has a filter, environment=&quot;production&quot;. A
128
+ # child of that parent group has a filter, role=&quot;transcoder&quot;. The
129
+ # parent group contains all instances in the production environment, regardless
130
+ # of their roles. The child group contains instances that have the transcoder
131
+ # role and are in the production environment.The monitored resources contained
132
+ # in a group can change at any moment, depending on what resources exist and
133
+ # what filters are associated with the group and its ancestors.
134
+ class Group
135
+ include Google::Apis::Core::Hashable
136
+
137
+ # A user-assigned name for this group, used only for display purposes.
138
+ # Corresponds to the JSON property `displayName`
139
+ # @return [String]
140
+ attr_accessor :display_name
141
+
142
+ # The name of the group's parent, if it has one. The format is &quot;projects/`
143
+ # project_id_or_number`/groups/`group_id`&quot;. For groups with no parent,
144
+ # parentName is the empty string, &quot;&quot;.
145
+ # Corresponds to the JSON property `parentName`
146
+ # @return [String]
147
+ attr_accessor :parent_name
148
+
149
+ # If true, the members of this group are considered to be a cluster. The system
150
+ # can perform additional analysis on groups that are clusters.
151
+ # Corresponds to the JSON property `isCluster`
152
+ # @return [Boolean]
153
+ attr_accessor :is_cluster
154
+ alias_method :is_cluster?, :is_cluster
155
+
156
+ # The filter used to determine which monitored resources belong to this group.
157
+ # Corresponds to the JSON property `filter`
158
+ # @return [String]
159
+ attr_accessor :filter
160
+
161
+ # Output only. The name of this group. The format is &quot;projects/`
162
+ # project_id_or_number`/groups/`group_id`&quot;. When creating a group, this
163
+ # field is ignored and a new name is created consisting of the project specified
164
+ # in the call to CreateGroup and a unique `group_id` that is generated
165
+ # automatically.
166
+ # Corresponds to the JSON property `name`
167
+ # @return [String]
168
+ attr_accessor :name
169
+
170
+ def initialize(**args)
171
+ update!(**args)
172
+ end
173
+
174
+ # Update properties of this object
175
+ def update!(**args)
176
+ @display_name = args[:display_name] if args.key?(:display_name)
177
+ @parent_name = args[:parent_name] if args.key?(:parent_name)
178
+ @is_cluster = args[:is_cluster] if args.key?(:is_cluster)
179
+ @filter = args[:filter] if args.key?(:filter)
180
+ @name = args[:name] if args.key?(:name)
181
+ end
182
+ end
183
+
184
+ # The ListTimeSeries response.
185
+ class ListTimeSeriesResponse
186
+ include Google::Apis::Core::Hashable
187
+
188
+ # One or more time series that match the filter included in the request.
189
+ # Corresponds to the JSON property `timeSeries`
190
+ # @return [Array<Google::Apis::MonitoringV3::TimeSeries>]
191
+ attr_accessor :time_series
192
+
193
+ # If there are more results than have been returned, then this field is set to a
194
+ # non-empty value. To see the additional results, use that value as pageToken in
195
+ # the next call to this method.
196
+ # Corresponds to the JSON property `nextPageToken`
197
+ # @return [String]
198
+ attr_accessor :next_page_token
199
+
200
+ def initialize(**args)
201
+ update!(**args)
202
+ end
203
+
204
+ # Update properties of this object
205
+ def update!(**args)
206
+ @time_series = args[:time_series] if args.key?(:time_series)
207
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
208
+ end
209
+ end
210
+
211
+ # A single data point in a time series.
212
+ class Point
213
+ include Google::Apis::Core::Hashable
214
+
215
+ # A single strongly-typed value.
216
+ # Corresponds to the JSON property `value`
217
+ # @return [Google::Apis::MonitoringV3::TypedValue]
218
+ attr_accessor :value
219
+
220
+ # A time interval extending just after a start time through an end time. If the
221
+ # start time is the same as the end time, then the interval represents a single
222
+ # point in time.
223
+ # Corresponds to the JSON property `interval`
224
+ # @return [Google::Apis::MonitoringV3::TimeInterval]
225
+ attr_accessor :interval
226
+
227
+ def initialize(**args)
228
+ update!(**args)
229
+ end
230
+
231
+ # Update properties of this object
232
+ def update!(**args)
233
+ @value = args[:value] if args.key?(:value)
234
+ @interval = args[:interval] if args.key?(:interval)
235
+ end
236
+ end
237
+
238
+ # A single data point from a collectd-based plugin.
239
+ class CollectdValue
240
+ include Google::Apis::Core::Hashable
241
+
242
+ # A single strongly-typed value.
243
+ # Corresponds to the JSON property `value`
244
+ # @return [Google::Apis::MonitoringV3::TypedValue]
245
+ attr_accessor :value
246
+
247
+ # The data source for the collectd value. For example there are two data sources
248
+ # for network measurements: &quot;rx&quot; and &quot;tx&quot;.
249
+ # Corresponds to the JSON property `dataSourceName`
250
+ # @return [String]
251
+ attr_accessor :data_source_name
252
+
253
+ # The type of measurement.
254
+ # Corresponds to the JSON property `dataSourceType`
255
+ # @return [String]
256
+ attr_accessor :data_source_type
257
+
258
+ def initialize(**args)
259
+ update!(**args)
260
+ end
261
+
262
+ # Update properties of this object
263
+ def update!(**args)
264
+ @value = args[:value] if args.key?(:value)
265
+ @data_source_name = args[:data_source_name] if args.key?(:data_source_name)
266
+ @data_source_type = args[:data_source_type] if args.key?(:data_source_type)
267
+ end
268
+ end
269
+
270
+ # A collection of data points that describes the time-varying values of a metric.
271
+ # A time series is identified by a combination of a fully-specified monitored
272
+ # resource and a fully-specified metric. This type is used for both listing and
273
+ # creating time series.
274
+ class TimeSeries
275
+ include Google::Apis::Core::Hashable
276
+
277
+ # A specific metric, identified by specifying values for all of the labels of a
278
+ # MetricDescriptor.
279
+ # Corresponds to the JSON property `metric`
280
+ # @return [Google::Apis::MonitoringV3::Metric]
281
+ attr_accessor :metric
282
+
283
+ # The data points of this time series. When listing time series, the order of
284
+ # the points is specified by the list method.When creating a time series, this
285
+ # field must contain exactly one point and the point's type must be the same as
286
+ # the value type of the associated metric. If the associated metric's descriptor
287
+ # must be auto-created, then the value type of the descriptor is determined by
288
+ # the point's type, which must be BOOL, INT64, DOUBLE, or DISTRIBUTION.
289
+ # Corresponds to the JSON property `points`
290
+ # @return [Array<Google::Apis::MonitoringV3::Point>]
291
+ attr_accessor :points
292
+
293
+ # The value type of the time series. When listing time series, this value type
294
+ # might be different from the value type of the associated metric if this time
295
+ # series is an alignment or reduction of other time series.When creating a time
296
+ # series, this field is optional. If present, it must be the same as the type of
297
+ # the data in the points field.
298
+ # Corresponds to the JSON property `valueType`
299
+ # @return [String]
300
+ attr_accessor :value_type
301
+
302
+ # An object representing a resource that can be used for monitoring, logging,
303
+ # billing, or other purposes. Examples include virtual machine instances,
304
+ # databases, and storage devices such as disks. The type field identifies a
305
+ # MonitoredResourceDescriptor object that describes the resource's schema.
306
+ # Information in the labels field identifies the actual resource and its
307
+ # attributes according to the schema. For example, a particular Compute Engine
308
+ # VM instance could be represented by the following object, because the
309
+ # MonitoredResourceDescriptor for &quot;gce_instance&quot; has labels &quot;
310
+ # instance_id&quot; and &quot;zone&quot;:
311
+ # ` &quot;type&quot;: &quot;gce_instance&quot;,
312
+ # &quot;labels&quot;: ` &quot;instance_id&quot;: &quot;12345678901234&quot;,
313
+ # &quot;zone&quot;: &quot;us-central1-a&quot; ``
314
+ # Corresponds to the JSON property `resource`
315
+ # @return [Google::Apis::MonitoringV3::MonitoredResource]
316
+ attr_accessor :resource
317
+
318
+ # The metric kind of the time series. When listing time series, this metric kind
319
+ # might be different from the metric kind of the associated metric if this time
320
+ # series is an alignment or reduction of other time series.When creating a time
321
+ # series, this field is optional. If present, it must be the same as the metric
322
+ # kind of the associated metric. If the associated metric's descriptor must be
323
+ # auto-created, then this field specifies the metric kind of the new descriptor
324
+ # and must be either GAUGE (the default) or CUMULATIVE.
325
+ # Corresponds to the JSON property `metricKind`
326
+ # @return [String]
327
+ attr_accessor :metric_kind
328
+
329
+ def initialize(**args)
330
+ update!(**args)
331
+ end
332
+
333
+ # Update properties of this object
334
+ def update!(**args)
335
+ @metric = args[:metric] if args.key?(:metric)
336
+ @points = args[:points] if args.key?(:points)
337
+ @value_type = args[:value_type] if args.key?(:value_type)
338
+ @resource = args[:resource] if args.key?(:resource)
339
+ @metric_kind = args[:metric_kind] if args.key?(:metric_kind)
340
+ end
341
+ end
342
+
343
+ # Defines a metric type and its schema. Once a metric descriptor is created,
344
+ # deleting or altering it stops data collection and makes the metric type's
345
+ # existing data unusable.
346
+ class MetricDescriptor
347
+ include Google::Apis::Core::Hashable
348
+
349
+ # A detailed description of the metric, which can be used in documentation.
350
+ # Corresponds to the JSON property `description`
351
+ # @return [String]
352
+ attr_accessor :description
353
+
354
+ # The unit in which the metric value is reported. It is only applicable if the
355
+ # value_type is INT64, DOUBLE, or DISTRIBUTION. The supported units are a subset
356
+ # of The Unified Code for Units of Measure (http://unitsofmeasure.org/ucum.html)
357
+ # standard:Basic units (UNIT)
358
+ # bit bit
359
+ # By byte
360
+ # s second
361
+ # min minute
362
+ # h hour
363
+ # d dayPrefixes (PREFIX)
364
+ # k kilo (10**3)
365
+ # M mega (10**6)
366
+ # G giga (10**9)
367
+ # T tera (10**12)
368
+ # P peta (10**15)
369
+ # E exa (10**18)
370
+ # Z zetta (10**21)
371
+ # Y yotta (10**24)
372
+ # m milli (10**-3)
373
+ # u micro (10**-6)
374
+ # n nano (10**-9)
375
+ # p pico (10**-12)
376
+ # f femto (10**-15)
377
+ # a atto (10**-18)
378
+ # z zepto (10**-21)
379
+ # y yocto (10**-24)
380
+ # Ki kibi (2**10)
381
+ # Mi mebi (2**20)
382
+ # Gi gibi (2**30)
383
+ # Ti tebi (2**40)GrammarThe grammar includes the dimensionless unit 1, such as 1/
384
+ # s.The grammar also includes these connectors:
385
+ # / division (as an infix operator, e.g. 1/s).
386
+ # . multiplication (as an infix operator, e.g. GBy.d)The grammar for a unit is
387
+ # as follows:
388
+ # Expression = Component ` &quot;.&quot; Component ` ` &quot;/&quot; Component `
389
+ # ;
390
+ # Component = [ PREFIX ] UNIT [ Annotation ]
391
+ # | Annotation
392
+ # | &quot;1&quot;
393
+ # ;
394
+ # Annotation = &quot;`&quot; NAME &quot;`&quot; ;
395
+ # Notes:
396
+ # Annotation is just a comment if it follows a UNIT and is equivalent to 1 if
397
+ # it is used alone. For examples, `requests`/s == 1/s, By`transmitted`/s == By/
398
+ # s.
399
+ # NAME is a sequence of non-blank printable ASCII characters not containing '`'
400
+ # or '`'.
401
+ # Corresponds to the JSON property `unit`
402
+ # @return [String]
403
+ attr_accessor :unit
404
+
405
+ # The set of labels that can be used to describe a specific instance of this
406
+ # metric type. For example, the appengine.googleapis.com/http/server/
407
+ # response_latencies metric type has a label for the HTTP response code,
408
+ # response_code, so you can look at latencies for successful responses or just
409
+ # for responses that failed.
410
+ # Corresponds to the JSON property `labels`
411
+ # @return [Array<Google::Apis::MonitoringV3::LabelDescriptor>]
412
+ attr_accessor :labels
413
+
414
+ # Whether the metric records instantaneous values, changes to a value, etc. Some
415
+ # combinations of metric_kind and value_type might not be supported.
416
+ # Corresponds to the JSON property `metricKind`
417
+ # @return [String]
418
+ attr_accessor :metric_kind
419
+
420
+ # Whether the measurement is an integer, a floating-point number, etc. Some
421
+ # combinations of metric_kind and value_type might not be supported.
422
+ # Corresponds to the JSON property `valueType`
423
+ # @return [String]
424
+ attr_accessor :value_type
425
+
426
+ # A concise name for the metric, which can be displayed in user interfaces. Use
427
+ # sentence case without an ending period, for example "Request count".
428
+ # Corresponds to the JSON property `displayName`
429
+ # @return [String]
430
+ attr_accessor :display_name
431
+
432
+ # The resource name of the metric descriptor. Depending on the implementation,
433
+ # the name typically includes: (1) the parent resource name that defines the
434
+ # scope of the metric type or of its data; and (2) the metric's URL-encoded type,
435
+ # which also appears in the type field of this descriptor. For example,
436
+ # following is the resource name of a custom metric within the GCP project
437
+ # 123456789:
438
+ # &quot;projects/123456789/metricDescriptors/custom.googleapis.com%2Finvoice%
439
+ # 2Fpaid%2Famount&quot;
440
+ # Corresponds to the JSON property `name`
441
+ # @return [String]
442
+ attr_accessor :name
443
+
444
+ # The metric type, including its DNS name prefix. The type is not URL-encoded.
445
+ # All user-defined metric types have the DNS name custom.googleapis.com. Metric
446
+ # types should use a natural hierarchical grouping. For example:
447
+ # &quot;custom.googleapis.com/invoice/paid/amount&quot;
448
+ # &quot;appengine.googleapis.com/http/server/response_latencies&quot;
449
+ # Corresponds to the JSON property `type`
450
+ # @return [String]
451
+ attr_accessor :type
452
+
453
+ def initialize(**args)
454
+ update!(**args)
455
+ end
456
+
457
+ # Update properties of this object
458
+ def update!(**args)
459
+ @description = args[:description] if args.key?(:description)
460
+ @unit = args[:unit] if args.key?(:unit)
461
+ @labels = args[:labels] if args.key?(:labels)
462
+ @metric_kind = args[:metric_kind] if args.key?(:metric_kind)
463
+ @value_type = args[:value_type] if args.key?(:value_type)
464
+ @display_name = args[:display_name] if args.key?(:display_name)
465
+ @name = args[:name] if args.key?(:name)
466
+ @type = args[:type] if args.key?(:type)
467
+ end
468
+ end
469
+
470
+ # Specify a sequence of buckets that have a width that is proportional to the
471
+ # value of the lower bound. Each bucket represents a constant relative
472
+ # uncertainty on a specific value in the bucket.Defines num_finite_buckets + 2 (=
473
+ # N) buckets with these boundaries for bucket i:Upper bound (0 &lt;= i &lt; N-1)
474
+ # : scale * (growth_factor ^ i). Lower bound (1 &lt;= i &lt; N): scale * (
475
+ # growth_factor ^ (i - 1)).
476
+ class Exponential
477
+ include Google::Apis::Core::Hashable
478
+
479
+ # Must be greater than 1.
480
+ # Corresponds to the JSON property `growthFactor`
481
+ # @return [Float]
482
+ attr_accessor :growth_factor
483
+
484
+ # Must be greater than 0.
485
+ # Corresponds to the JSON property `scale`
486
+ # @return [Float]
487
+ attr_accessor :scale
488
+
489
+ # Must be greater than 0.
490
+ # Corresponds to the JSON property `numFiniteBuckets`
491
+ # @return [Fixnum]
492
+ attr_accessor :num_finite_buckets
493
+
494
+ def initialize(**args)
495
+ update!(**args)
496
+ end
497
+
498
+ # Update properties of this object
499
+ def update!(**args)
500
+ @growth_factor = args[:growth_factor] if args.key?(:growth_factor)
501
+ @scale = args[:scale] if args.key?(:scale)
502
+ @num_finite_buckets = args[:num_finite_buckets] if args.key?(:num_finite_buckets)
503
+ end
504
+ end
505
+
506
+ # A set of buckets with arbitrary widths.Defines size(bounds) + 1 (= N) buckets
507
+ # with these boundaries for bucket i:Upper bound (0 &lt;= i &lt; N-1): boundsi
508
+ # Lower bound (1 &lt;= i &lt; N); boundsi - 1There must be at least one element
509
+ # in bounds. If bounds has only one element, there are no finite buckets, and
510
+ # that single element is the common boundary of the overflow and underflow
511
+ # buckets.
512
+ class Explicit
513
+ include Google::Apis::Core::Hashable
514
+
515
+ # The values must be monotonically increasing.
516
+ # Corresponds to the JSON property `bounds`
517
+ # @return [Array<Float>]
518
+ attr_accessor :bounds
519
+
520
+ def initialize(**args)
521
+ update!(**args)
522
+ end
523
+
524
+ # Update properties of this object
525
+ def update!(**args)
526
+ @bounds = args[:bounds] if args.key?(:bounds)
527
+ end
528
+ end
529
+
530
+ # Specify a sequence of buckets that all have the same width (except overflow
531
+ # and underflow). Each bucket represents a constant absolute uncertainty on the
532
+ # specific value in the bucket.Defines num_finite_buckets + 2 (= N) buckets with
533
+ # these boundaries for bucket i:Upper bound (0 &lt;= i &lt; N-1): offset + (
534
+ # width * i). Lower bound (1 &lt;= i &lt; N): offset + (width * (i - 1)).
535
+ class Linear
536
+ include Google::Apis::Core::Hashable
537
+
538
+ # Must be greater than 0.
539
+ # Corresponds to the JSON property `width`
540
+ # @return [Float]
541
+ attr_accessor :width
542
+
543
+ # Lower bound of the first bucket.
544
+ # Corresponds to the JSON property `offset`
545
+ # @return [Float]
546
+ attr_accessor :offset
547
+
548
+ # Must be greater than 0.
549
+ # Corresponds to the JSON property `numFiniteBuckets`
550
+ # @return [Fixnum]
551
+ attr_accessor :num_finite_buckets
552
+
553
+ def initialize(**args)
554
+ update!(**args)
555
+ end
556
+
557
+ # Update properties of this object
558
+ def update!(**args)
559
+ @width = args[:width] if args.key?(:width)
560
+ @offset = args[:offset] if args.key?(:offset)
561
+ @num_finite_buckets = args[:num_finite_buckets] if args.key?(:num_finite_buckets)
562
+ end
563
+ end
564
+
565
+ # A collection of data points sent from a collectd-based plugin. See the
566
+ # collectd documentation for more information.
567
+ class CollectdPayload
568
+ include Google::Apis::Core::Hashable
569
+
570
+ # The end time of the interval.
571
+ # Corresponds to the JSON property `endTime`
572
+ # @return [String]
573
+ attr_accessor :end_time
574
+
575
+ # The measurement metadata. Example: &quot;process_id&quot; -&gt; 12345
576
+ # Corresponds to the JSON property `metadata`
577
+ # @return [Hash<String,Google::Apis::MonitoringV3::TypedValue>]
578
+ attr_accessor :metadata
579
+
580
+ # The measured values during this time interval. Each value must have a
581
+ # different dataSourceName.
582
+ # Corresponds to the JSON property `values`
583
+ # @return [Array<Google::Apis::MonitoringV3::CollectdValue>]
584
+ attr_accessor :values
585
+
586
+ # The instance name of the plugin Example: &quot;hdcl&quot;.
587
+ # Corresponds to the JSON property `pluginInstance`
588
+ # @return [String]
589
+ attr_accessor :plugin_instance
590
+
591
+ # The start time of the interval.
592
+ # Corresponds to the JSON property `startTime`
593
+ # @return [String]
594
+ attr_accessor :start_time
595
+
596
+ # The measurement type instance. Example: &quot;used&quot;.
597
+ # Corresponds to the JSON property `typeInstance`
598
+ # @return [String]
599
+ attr_accessor :type_instance
600
+
601
+ # The measurement type. Example: &quot;memory&quot;.
602
+ # Corresponds to the JSON property `type`
603
+ # @return [String]
604
+ attr_accessor :type
605
+
606
+ # The name of the plugin. Example: &quot;disk&quot;.
607
+ # Corresponds to the JSON property `plugin`
608
+ # @return [String]
609
+ attr_accessor :plugin
610
+
611
+ def initialize(**args)
612
+ update!(**args)
613
+ end
614
+
615
+ # Update properties of this object
616
+ def update!(**args)
617
+ @end_time = args[:end_time] if args.key?(:end_time)
618
+ @metadata = args[:metadata] if args.key?(:metadata)
619
+ @values = args[:values] if args.key?(:values)
620
+ @plugin_instance = args[:plugin_instance] if args.key?(:plugin_instance)
621
+ @start_time = args[:start_time] if args.key?(:start_time)
622
+ @type_instance = args[:type_instance] if args.key?(:type_instance)
623
+ @type = args[:type] if args.key?(:type)
624
+ @plugin = args[:plugin] if args.key?(:plugin)
625
+ end
626
+ end
627
+
628
+ # The ListMetricDescriptors response.
629
+ class ListMetricDescriptorsResponse
630
+ include Google::Apis::Core::Hashable
631
+
632
+ # The metric descriptors that are available to the project and that match the
633
+ # value of filter, if present.
634
+ # Corresponds to the JSON property `metricDescriptors`
635
+ # @return [Array<Google::Apis::MonitoringV3::MetricDescriptor>]
636
+ attr_accessor :metric_descriptors
637
+
638
+ # If there are more results than have been returned, then this field is set to a
639
+ # non-empty value. To see the additional results, use that value as pageToken in
640
+ # the next call to this method.
641
+ # Corresponds to the JSON property `nextPageToken`
642
+ # @return [String]
643
+ attr_accessor :next_page_token
644
+
645
+ def initialize(**args)
646
+ update!(**args)
647
+ end
648
+
649
+ # Update properties of this object
650
+ def update!(**args)
651
+ @metric_descriptors = args[:metric_descriptors] if args.key?(:metric_descriptors)
652
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
653
+ end
654
+ end
655
+
656
+ # Distribution contains summary statistics for a population of values and,
657
+ # optionally, a histogram representing the distribution of those values across a
658
+ # specified set of histogram buckets.The summary statistics are the count, mean,
659
+ # sum of the squared deviation from the mean, the minimum, and the maximum of
660
+ # the set of population of values.The histogram is based on a sequence of
661
+ # buckets and gives a count of values that fall into each bucket. The boundaries
662
+ # of the buckets are given either explicitly or by specifying parameters for a
663
+ # method of computing them (buckets of fixed width or buckets of exponentially
664
+ # increasing width).Although it is not forbidden, it is generally a bad idea to
665
+ # include non-finite values (infinities or NaNs) in the population of values, as
666
+ # this will render the mean and sum_of_squared_deviation fields meaningless.
667
+ class Distribution
668
+ include Google::Apis::Core::Hashable
669
+
670
+ # If bucket_options is given, then the sum of the values in bucket_counts must
671
+ # equal the value in count. If bucket_options is not given, no bucket_counts
672
+ # fields may be given.Bucket counts are given in order under the numbering
673
+ # scheme described above (the underflow bucket has number 0; the finite buckets,
674
+ # if any, have numbers 1 through N-2; the overflow bucket has number N-1).The
675
+ # size of bucket_counts must be no greater than N as defined in bucket_options.
676
+ # Any suffix of trailing zero bucket_count fields may be omitted.
677
+ # Corresponds to the JSON property `bucketCounts`
678
+ # @return [Array<String>]
679
+ attr_accessor :bucket_counts
680
+
681
+ # A Distribution may optionally contain a histogram of the values in the
682
+ # population. The histogram is given in bucket_counts as counts of values that
683
+ # fall into one of a sequence of non-overlapping buckets. The sequence of
684
+ # buckets is described by bucket_options.A bucket specifies an inclusive lower
685
+ # bound and exclusive upper bound for the values that are counted for that
686
+ # bucket. The upper bound of a bucket is strictly greater than the lower bound.
687
+ # The sequence of N buckets for a Distribution consists of an underflow bucket (
688
+ # number 0), zero or more finite buckets (number 1 through N - 2) and an
689
+ # overflow bucket (number N - 1). The buckets are contiguous: the lower bound of
690
+ # bucket i (i &gt; 0) is the same as the upper bound of bucket i - 1. The
691
+ # buckets span the whole range of finite values: lower bound of the underflow
692
+ # bucket is -infinity and the upper bound of the overflow bucket is +infinity.
693
+ # The finite buckets are so-called because both bounds are finite.BucketOptions
694
+ # describes bucket boundaries in one of three ways. Two describe the boundaries
695
+ # by giving parameters for a formula to generate boundaries and one gives the
696
+ # bucket boundaries explicitly.If bucket_options is not given, then no
697
+ # bucket_counts may be given.
698
+ # Corresponds to the JSON property `bucketOptions`
699
+ # @return [Google::Apis::MonitoringV3::BucketOptions]
700
+ attr_accessor :bucket_options
701
+
702
+ # The number of values in the population. Must be non-negative.
703
+ # Corresponds to the JSON property `count`
704
+ # @return [String]
705
+ attr_accessor :count
706
+
707
+ # The sum of squared deviations from the mean of the values in the population.
708
+ # For values x_i this is:
709
+ # Sum[i=1..n]((x_i - mean)^2)
710
+ # Knuth, "The Art of Computer Programming", Vol. 2, page 323, 3rd edition
711
+ # describes Welford's method for accumulating this sum in one pass.If count is
712
+ # zero then this field must be zero.
713
+ # Corresponds to the JSON property `sumOfSquaredDeviation`
714
+ # @return [Float]
715
+ attr_accessor :sum_of_squared_deviation
716
+
717
+ # The arithmetic mean of the values in the population. If count is zero then
718
+ # this field must be zero.
719
+ # Corresponds to the JSON property `mean`
720
+ # @return [Float]
721
+ attr_accessor :mean
722
+
723
+ # The range of the population values.
724
+ # Corresponds to the JSON property `range`
725
+ # @return [Google::Apis::MonitoringV3::Range]
726
+ attr_accessor :range
727
+
728
+ def initialize(**args)
729
+ update!(**args)
730
+ end
731
+
732
+ # Update properties of this object
733
+ def update!(**args)
734
+ @bucket_counts = args[:bucket_counts] if args.key?(:bucket_counts)
735
+ @bucket_options = args[:bucket_options] if args.key?(:bucket_options)
736
+ @count = args[:count] if args.key?(:count)
737
+ @sum_of_squared_deviation = args[:sum_of_squared_deviation] if args.key?(:sum_of_squared_deviation)
738
+ @mean = args[:mean] if args.key?(:mean)
739
+ @range = args[:range] if args.key?(:range)
740
+ end
741
+ end
742
+
743
+ # An object representing a resource that can be used for monitoring, logging,
744
+ # billing, or other purposes. Examples include virtual machine instances,
745
+ # databases, and storage devices such as disks. The type field identifies a
746
+ # MonitoredResourceDescriptor object that describes the resource's schema.
747
+ # Information in the labels field identifies the actual resource and its
748
+ # attributes according to the schema. For example, a particular Compute Engine
749
+ # VM instance could be represented by the following object, because the
750
+ # MonitoredResourceDescriptor for &quot;gce_instance&quot; has labels &quot;
751
+ # instance_id&quot; and &quot;zone&quot;:
752
+ # ` &quot;type&quot;: &quot;gce_instance&quot;,
753
+ # &quot;labels&quot;: ` &quot;instance_id&quot;: &quot;12345678901234&quot;,
754
+ # &quot;zone&quot;: &quot;us-central1-a&quot; ``
755
+ class MonitoredResource
756
+ include Google::Apis::Core::Hashable
757
+
758
+ # Required. Values for all of the labels listed in the associated monitored
759
+ # resource descriptor. For example, Cloud SQL databases use the labels &quot;
760
+ # database_id&quot; and &quot;zone&quot;.
761
+ # Corresponds to the JSON property `labels`
762
+ # @return [Hash<String,String>]
763
+ attr_accessor :labels
764
+
765
+ # Required. The monitored resource type. This field must match the type field of
766
+ # a MonitoredResourceDescriptor object. For example, the type of a Cloud SQL
767
+ # database is &quot;cloudsql_database&quot;.
768
+ # Corresponds to the JSON property `type`
769
+ # @return [String]
770
+ attr_accessor :type
771
+
772
+ def initialize(**args)
773
+ update!(**args)
774
+ end
775
+
776
+ # Update properties of this object
777
+ def update!(**args)
778
+ @labels = args[:labels] if args.key?(:labels)
779
+ @type = args[:type] if args.key?(:type)
780
+ end
781
+ end
782
+
783
+ # A description of a label.
784
+ class LabelDescriptor
785
+ include Google::Apis::Core::Hashable
786
+
787
+ # A human-readable description for the label.
788
+ # Corresponds to the JSON property `description`
789
+ # @return [String]
790
+ attr_accessor :description
791
+
792
+ # The type of data that can be assigned to the label.
793
+ # Corresponds to the JSON property `valueType`
794
+ # @return [String]
795
+ attr_accessor :value_type
796
+
797
+ # The label key.
798
+ # Corresponds to the JSON property `key`
799
+ # @return [String]
800
+ attr_accessor :key
801
+
802
+ def initialize(**args)
803
+ update!(**args)
804
+ end
805
+
806
+ # Update properties of this object
807
+ def update!(**args)
808
+ @description = args[:description] if args.key?(:description)
809
+ @value_type = args[:value_type] if args.key?(:value_type)
810
+ @key = args[:key] if args.key?(:key)
811
+ end
812
+ end
813
+
814
+ # An object that describes the schema of a MonitoredResource object using a type
815
+ # name and a set of labels. For example, the monitored resource descriptor for
816
+ # Google Compute Engine VM instances has a type of &quot;gce_instance&quot; and
817
+ # specifies the use of the labels &quot;instance_id&quot; and &quot;zone&quot;
818
+ # to identify particular VM instances.Different APIs can support different
819
+ # monitored resource types. APIs generally provide a list method that returns
820
+ # the monitored resource descriptors used by the API.
821
+ class MonitoredResourceDescriptor
822
+ include Google::Apis::Core::Hashable
823
+
824
+ # Optional. A concise name for the monitored resource type that might be
825
+ # displayed in user interfaces. It should be a Title Cased Noun Phrase, without
826
+ # any article or other determiners. For example, &quot;Google Cloud SQL Database&
827
+ # quot;.
828
+ # Corresponds to the JSON property `displayName`
829
+ # @return [String]
830
+ attr_accessor :display_name
831
+
832
+ # Optional. A detailed description of the monitored resource type that might be
833
+ # used in documentation.
834
+ # Corresponds to the JSON property `description`
835
+ # @return [String]
836
+ attr_accessor :description
837
+
838
+ # Required. A set of labels used to describe instances of this monitored
839
+ # resource type. For example, an individual Google Cloud SQL database is
840
+ # identified by values for the labels &quot;database_id&quot; and &quot;zone&
841
+ # quot;.
842
+ # Corresponds to the JSON property `labels`
843
+ # @return [Array<Google::Apis::MonitoringV3::LabelDescriptor>]
844
+ attr_accessor :labels
845
+
846
+ # Required. The monitored resource type. For example, the type &quot;
847
+ # cloudsql_database&quot; represents databases in Google Cloud SQL. The maximum
848
+ # length of this value is 256 characters.
849
+ # Corresponds to the JSON property `type`
850
+ # @return [String]
851
+ attr_accessor :type
852
+
853
+ # Optional. The resource name of the monitored resource descriptor: &quot;
854
+ # projects/`project_id`/monitoredResourceDescriptors/`type`&quot; where `type`
855
+ # is the value of the type field in this object and `project_id` is a project ID
856
+ # that provides API-specific context for accessing the type. APIs that do not
857
+ # use project information can use the resource name format &quot;
858
+ # monitoredResourceDescriptors/`type`&quot;.
859
+ # Corresponds to the JSON property `name`
860
+ # @return [String]
861
+ attr_accessor :name
862
+
863
+ def initialize(**args)
864
+ update!(**args)
865
+ end
866
+
867
+ # Update properties of this object
868
+ def update!(**args)
869
+ @display_name = args[:display_name] if args.key?(:display_name)
870
+ @description = args[:description] if args.key?(:description)
871
+ @labels = args[:labels] if args.key?(:labels)
872
+ @type = args[:type] if args.key?(:type)
873
+ @name = args[:name] if args.key?(:name)
874
+ end
875
+ end
876
+
877
+ # A single strongly-typed value.
878
+ class TypedValue
879
+ include Google::Apis::Core::Hashable
880
+
881
+ # A Boolean value: true or false.
882
+ # Corresponds to the JSON property `boolValue`
883
+ # @return [Boolean]
884
+ attr_accessor :bool_value
885
+ alias_method :bool_value?, :bool_value
886
+
887
+ # A variable-length string value.
888
+ # Corresponds to the JSON property `stringValue`
889
+ # @return [String]
890
+ attr_accessor :string_value
891
+
892
+ # A 64-bit integer. Its range is approximately &plusmn;9.2x10<sup>18</sup>.
893
+ # Corresponds to the JSON property `int64Value`
894
+ # @return [String]
895
+ attr_accessor :int64_value
896
+
897
+ # A 64-bit double-precision floating-point number. Its magnitude is
898
+ # approximately &plusmn;10<sup>&plusmn;300</sup> and it has 16 significant
899
+ # digits of precision.
900
+ # Corresponds to the JSON property `doubleValue`
901
+ # @return [Float]
902
+ attr_accessor :double_value
903
+
904
+ # Distribution contains summary statistics for a population of values and,
905
+ # optionally, a histogram representing the distribution of those values across a
906
+ # specified set of histogram buckets.The summary statistics are the count, mean,
907
+ # sum of the squared deviation from the mean, the minimum, and the maximum of
908
+ # the set of population of values.The histogram is based on a sequence of
909
+ # buckets and gives a count of values that fall into each bucket. The boundaries
910
+ # of the buckets are given either explicitly or by specifying parameters for a
911
+ # method of computing them (buckets of fixed width or buckets of exponentially
912
+ # increasing width).Although it is not forbidden, it is generally a bad idea to
913
+ # include non-finite values (infinities or NaNs) in the population of values, as
914
+ # this will render the mean and sum_of_squared_deviation fields meaningless.
915
+ # Corresponds to the JSON property `distributionValue`
916
+ # @return [Google::Apis::MonitoringV3::Distribution]
917
+ attr_accessor :distribution_value
918
+
919
+ def initialize(**args)
920
+ update!(**args)
921
+ end
922
+
923
+ # Update properties of this object
924
+ def update!(**args)
925
+ @bool_value = args[:bool_value] if args.key?(:bool_value)
926
+ @string_value = args[:string_value] if args.key?(:string_value)
927
+ @int64_value = args[:int64_value] if args.key?(:int64_value)
928
+ @double_value = args[:double_value] if args.key?(:double_value)
929
+ @distribution_value = args[:distribution_value] if args.key?(:distribution_value)
930
+ end
931
+ end
932
+
933
+ # The ListMonitoredResourcDescriptors response.
934
+ class ListMonitoredResourceDescriptorsResponse
935
+ include Google::Apis::Core::Hashable
936
+
937
+ # If there are more results than have been returned, then this field is set to a
938
+ # non-empty value. To see the additional results, use that value as pageToken in
939
+ # the next call to this method.
940
+ # Corresponds to the JSON property `nextPageToken`
941
+ # @return [String]
942
+ attr_accessor :next_page_token
943
+
944
+ # The monitored resource descriptors that are available to this project and that
945
+ # match filter, if present.
946
+ # Corresponds to the JSON property `resourceDescriptors`
947
+ # @return [Array<Google::Apis::MonitoringV3::MonitoredResourceDescriptor>]
948
+ attr_accessor :resource_descriptors
949
+
950
+ def initialize(**args)
951
+ update!(**args)
952
+ end
953
+
954
+ # Update properties of this object
955
+ def update!(**args)
956
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
957
+ @resource_descriptors = args[:resource_descriptors] if args.key?(:resource_descriptors)
958
+ end
959
+ end
960
+
961
+ # A single field of a message type.
962
+ class Field
963
+ include Google::Apis::Core::Hashable
964
+
965
+ # The string value of the default value of this field. Proto2 syntax only.
966
+ # Corresponds to the JSON property `defaultValue`
967
+ # @return [String]
968
+ attr_accessor :default_value
969
+
970
+ # The field JSON name.
971
+ # Corresponds to the JSON property `jsonName`
972
+ # @return [String]
973
+ attr_accessor :json_name
974
+
975
+ # The protocol buffer options.
976
+ # Corresponds to the JSON property `options`
977
+ # @return [Array<Google::Apis::MonitoringV3::Option>]
978
+ attr_accessor :options
979
+
980
+ # The index of the field type in Type.oneofs, for message or enumeration types.
981
+ # The first type has index 1; zero means the type is not in the list.
982
+ # Corresponds to the JSON property `oneofIndex`
983
+ # @return [Fixnum]
984
+ attr_accessor :oneof_index
985
+
986
+ # The field cardinality.
987
+ # Corresponds to the JSON property `cardinality`
988
+ # @return [String]
989
+ attr_accessor :cardinality
990
+
991
+ # The field type URL, without the scheme, for message or enumeration types.
992
+ # Example: &quot;type.googleapis.com/google.protobuf.Timestamp&quot;.
993
+ # Corresponds to the JSON property `typeUrl`
994
+ # @return [String]
995
+ attr_accessor :type_url
996
+
997
+ # The field name.
998
+ # Corresponds to the JSON property `name`
999
+ # @return [String]
1000
+ attr_accessor :name
1001
+
1002
+ # Whether to use alternative packed wire representation.
1003
+ # Corresponds to the JSON property `packed`
1004
+ # @return [Boolean]
1005
+ attr_accessor :packed
1006
+ alias_method :packed?, :packed
1007
+
1008
+ # The field number.
1009
+ # Corresponds to the JSON property `number`
1010
+ # @return [Fixnum]
1011
+ attr_accessor :number
1012
+
1013
+ # The field type.
1014
+ # Corresponds to the JSON property `kind`
1015
+ # @return [String]
1016
+ attr_accessor :kind
1017
+
1018
+ def initialize(**args)
1019
+ update!(**args)
1020
+ end
1021
+
1022
+ # Update properties of this object
1023
+ def update!(**args)
1024
+ @default_value = args[:default_value] if args.key?(:default_value)
1025
+ @json_name = args[:json_name] if args.key?(:json_name)
1026
+ @options = args[:options] if args.key?(:options)
1027
+ @oneof_index = args[:oneof_index] if args.key?(:oneof_index)
1028
+ @cardinality = args[:cardinality] if args.key?(:cardinality)
1029
+ @type_url = args[:type_url] if args.key?(:type_url)
1030
+ @name = args[:name] if args.key?(:name)
1031
+ @packed = args[:packed] if args.key?(:packed)
1032
+ @number = args[:number] if args.key?(:number)
1033
+ @kind = args[:kind] if args.key?(:kind)
1034
+ end
1035
+ end
1036
+
1037
+ # A protocol buffer option, which can be attached to a message, field,
1038
+ # enumeration, etc.
1039
+ class Option
1040
+ include Google::Apis::Core::Hashable
1041
+
1042
+ # The option's value. For example, &quot;com.google.protobuf&quot;.
1043
+ # Corresponds to the JSON property `value`
1044
+ # @return [Hash<String,Object>]
1045
+ attr_accessor :value
1046
+
1047
+ # The option's name. For example, &quot;java_package&quot;.
1048
+ # Corresponds to the JSON property `name`
1049
+ # @return [String]
1050
+ attr_accessor :name
1051
+
1052
+ def initialize(**args)
1053
+ update!(**args)
1054
+ end
1055
+
1056
+ # Update properties of this object
1057
+ def update!(**args)
1058
+ @value = args[:value] if args.key?(:value)
1059
+ @name = args[:name] if args.key?(:name)
1060
+ end
1061
+ end
1062
+
1063
+ # A generic empty message that you can re-use to avoid defining duplicated empty
1064
+ # messages in your APIs. A typical example is to use it as the request or the
1065
+ # response type of an API method. For instance:
1066
+ # service Foo `
1067
+ # rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty);
1068
+ # `
1069
+ # The JSON representation for Empty is empty JSON object ``.
1070
+ class Empty
1071
+ include Google::Apis::Core::Hashable
1072
+
1073
+ def initialize(**args)
1074
+ update!(**args)
1075
+ end
1076
+
1077
+ # Update properties of this object
1078
+ def update!(**args)
1079
+ end
1080
+ end
1081
+
1082
+ # SourceContext represents information about the source of a protobuf element,
1083
+ # like the file in which it is defined.
1084
+ class SourceContext
1085
+ include Google::Apis::Core::Hashable
1086
+
1087
+ # The path-qualified name of the .proto file that contained the associated
1088
+ # protobuf element. For example: &quot;google/protobuf/source_context.proto&quot;
1089
+ # .
1090
+ # Corresponds to the JSON property `fileName`
1091
+ # @return [String]
1092
+ attr_accessor :file_name
1093
+
1094
+ def initialize(**args)
1095
+ update!(**args)
1096
+ end
1097
+
1098
+ # Update properties of this object
1099
+ def update!(**args)
1100
+ @file_name = args[:file_name] if args.key?(:file_name)
1101
+ end
1102
+ end
1103
+
1104
+ # The range of the population values.
1105
+ class Range
1106
+ include Google::Apis::Core::Hashable
1107
+
1108
+ # The maximum of the population values.
1109
+ # Corresponds to the JSON property `max`
1110
+ # @return [Float]
1111
+ attr_accessor :max
1112
+
1113
+ # The minimum of the population values.
1114
+ # Corresponds to the JSON property `min`
1115
+ # @return [Float]
1116
+ attr_accessor :min
1117
+
1118
+ def initialize(**args)
1119
+ update!(**args)
1120
+ end
1121
+
1122
+ # Update properties of this object
1123
+ def update!(**args)
1124
+ @max = args[:max] if args.key?(:max)
1125
+ @min = args[:min] if args.key?(:min)
1126
+ end
1127
+ end
1128
+
1129
+ # The CreateTimeSeries request.
1130
+ class CreateTimeSeriesRequest
1131
+ include Google::Apis::Core::Hashable
1132
+
1133
+ # The new data to be added to a list of time series. Adds at most one data point
1134
+ # to each of several time series. The new data point must be more recent than
1135
+ # any other point in its time series. Each TimeSeries value must fully specify a
1136
+ # unique time series by supplying all label values for the metric and the
1137
+ # monitored resource.
1138
+ # Corresponds to the JSON property `timeSeries`
1139
+ # @return [Array<Google::Apis::MonitoringV3::TimeSeries>]
1140
+ attr_accessor :time_series
1141
+
1142
+ def initialize(**args)
1143
+ update!(**args)
1144
+ end
1145
+
1146
+ # Update properties of this object
1147
+ def update!(**args)
1148
+ @time_series = args[:time_series] if args.key?(:time_series)
1149
+ end
1150
+ end
1151
+
1152
+ # A Distribution may optionally contain a histogram of the values in the
1153
+ # population. The histogram is given in bucket_counts as counts of values that
1154
+ # fall into one of a sequence of non-overlapping buckets. The sequence of
1155
+ # buckets is described by bucket_options.A bucket specifies an inclusive lower
1156
+ # bound and exclusive upper bound for the values that are counted for that
1157
+ # bucket. The upper bound of a bucket is strictly greater than the lower bound.
1158
+ # The sequence of N buckets for a Distribution consists of an underflow bucket (
1159
+ # number 0), zero or more finite buckets (number 1 through N - 2) and an
1160
+ # overflow bucket (number N - 1). The buckets are contiguous: the lower bound of
1161
+ # bucket i (i &gt; 0) is the same as the upper bound of bucket i - 1. The
1162
+ # buckets span the whole range of finite values: lower bound of the underflow
1163
+ # bucket is -infinity and the upper bound of the overflow bucket is +infinity.
1164
+ # The finite buckets are so-called because both bounds are finite.BucketOptions
1165
+ # describes bucket boundaries in one of three ways. Two describe the boundaries
1166
+ # by giving parameters for a formula to generate boundaries and one gives the
1167
+ # bucket boundaries explicitly.If bucket_options is not given, then no
1168
+ # bucket_counts may be given.
1169
+ class BucketOptions
1170
+ include Google::Apis::Core::Hashable
1171
+
1172
+ # A set of buckets with arbitrary widths.Defines size(bounds) + 1 (= N) buckets
1173
+ # with these boundaries for bucket i:Upper bound (0 &lt;= i &lt; N-1): boundsi
1174
+ # Lower bound (1 &lt;= i &lt; N); boundsi - 1There must be at least one element
1175
+ # in bounds. If bounds has only one element, there are no finite buckets, and
1176
+ # that single element is the common boundary of the overflow and underflow
1177
+ # buckets.
1178
+ # Corresponds to the JSON property `explicitBuckets`
1179
+ # @return [Google::Apis::MonitoringV3::Explicit]
1180
+ attr_accessor :explicit_buckets
1181
+
1182
+ # Specify a sequence of buckets that have a width that is proportional to the
1183
+ # value of the lower bound. Each bucket represents a constant relative
1184
+ # uncertainty on a specific value in the bucket.Defines num_finite_buckets + 2 (=
1185
+ # N) buckets with these boundaries for bucket i:Upper bound (0 &lt;= i &lt; N-1)
1186
+ # : scale * (growth_factor ^ i). Lower bound (1 &lt;= i &lt; N): scale * (
1187
+ # growth_factor ^ (i - 1)).
1188
+ # Corresponds to the JSON property `exponentialBuckets`
1189
+ # @return [Google::Apis::MonitoringV3::Exponential]
1190
+ attr_accessor :exponential_buckets
1191
+
1192
+ # Specify a sequence of buckets that all have the same width (except overflow
1193
+ # and underflow). Each bucket represents a constant absolute uncertainty on the
1194
+ # specific value in the bucket.Defines num_finite_buckets + 2 (= N) buckets with
1195
+ # these boundaries for bucket i:Upper bound (0 &lt;= i &lt; N-1): offset + (
1196
+ # width * i). Lower bound (1 &lt;= i &lt; N): offset + (width * (i - 1)).
1197
+ # Corresponds to the JSON property `linearBuckets`
1198
+ # @return [Google::Apis::MonitoringV3::Linear]
1199
+ attr_accessor :linear_buckets
1200
+
1201
+ def initialize(**args)
1202
+ update!(**args)
1203
+ end
1204
+
1205
+ # Update properties of this object
1206
+ def update!(**args)
1207
+ @explicit_buckets = args[:explicit_buckets] if args.key?(:explicit_buckets)
1208
+ @exponential_buckets = args[:exponential_buckets] if args.key?(:exponential_buckets)
1209
+ @linear_buckets = args[:linear_buckets] if args.key?(:linear_buckets)
1210
+ end
1211
+ end
1212
+
1213
+ # The CreateCollectdTimeSeries request.
1214
+ class CreateCollectdTimeSeriesRequest
1215
+ include Google::Apis::Core::Hashable
1216
+
1217
+ # The collectd payloads representing the time series data. You must not include
1218
+ # more than a single point for each time series, so no two payloads can have the
1219
+ # same values for all of the fields plugin, plugin_instance, type, and
1220
+ # type_instance.
1221
+ # Corresponds to the JSON property `collectdPayloads`
1222
+ # @return [Array<Google::Apis::MonitoringV3::CollectdPayload>]
1223
+ attr_accessor :collectd_payloads
1224
+
1225
+ # The version of collectd that collected the data. Example: &quot;5.3.0-192.el6&
1226
+ # quot;.
1227
+ # Corresponds to the JSON property `collectdVersion`
1228
+ # @return [String]
1229
+ attr_accessor :collectd_version
1230
+
1231
+ # An object representing a resource that can be used for monitoring, logging,
1232
+ # billing, or other purposes. Examples include virtual machine instances,
1233
+ # databases, and storage devices such as disks. The type field identifies a
1234
+ # MonitoredResourceDescriptor object that describes the resource's schema.
1235
+ # Information in the labels field identifies the actual resource and its
1236
+ # attributes according to the schema. For example, a particular Compute Engine
1237
+ # VM instance could be represented by the following object, because the
1238
+ # MonitoredResourceDescriptor for &quot;gce_instance&quot; has labels &quot;
1239
+ # instance_id&quot; and &quot;zone&quot;:
1240
+ # ` &quot;type&quot;: &quot;gce_instance&quot;,
1241
+ # &quot;labels&quot;: ` &quot;instance_id&quot;: &quot;12345678901234&quot;,
1242
+ # &quot;zone&quot;: &quot;us-central1-a&quot; ``
1243
+ # Corresponds to the JSON property `resource`
1244
+ # @return [Google::Apis::MonitoringV3::MonitoredResource]
1245
+ attr_accessor :resource
1246
+
1247
+ def initialize(**args)
1248
+ update!(**args)
1249
+ end
1250
+
1251
+ # Update properties of this object
1252
+ def update!(**args)
1253
+ @collectd_payloads = args[:collectd_payloads] if args.key?(:collectd_payloads)
1254
+ @collectd_version = args[:collectd_version] if args.key?(:collectd_version)
1255
+ @resource = args[:resource] if args.key?(:resource)
1256
+ end
1257
+ end
1258
+
1259
+ # A protocol buffer message type.
1260
+ class Type
1261
+ include Google::Apis::Core::Hashable
1262
+
1263
+ # The list of types appearing in oneof definitions in this type.
1264
+ # Corresponds to the JSON property `oneofs`
1265
+ # @return [Array<String>]
1266
+ attr_accessor :oneofs
1267
+
1268
+ # The protocol buffer options.
1269
+ # Corresponds to the JSON property `options`
1270
+ # @return [Array<Google::Apis::MonitoringV3::Option>]
1271
+ attr_accessor :options
1272
+
1273
+ # SourceContext represents information about the source of a protobuf element,
1274
+ # like the file in which it is defined.
1275
+ # Corresponds to the JSON property `sourceContext`
1276
+ # @return [Google::Apis::MonitoringV3::SourceContext]
1277
+ attr_accessor :source_context
1278
+
1279
+ # The list of fields.
1280
+ # Corresponds to the JSON property `fields`
1281
+ # @return [Array<Google::Apis::MonitoringV3::Field>]
1282
+ attr_accessor :fields
1283
+
1284
+ # The fully qualified message name.
1285
+ # Corresponds to the JSON property `name`
1286
+ # @return [String]
1287
+ attr_accessor :name
1288
+
1289
+ # The source syntax.
1290
+ # Corresponds to the JSON property `syntax`
1291
+ # @return [String]
1292
+ attr_accessor :syntax
1293
+
1294
+ def initialize(**args)
1295
+ update!(**args)
1296
+ end
1297
+
1298
+ # Update properties of this object
1299
+ def update!(**args)
1300
+ @oneofs = args[:oneofs] if args.key?(:oneofs)
1301
+ @options = args[:options] if args.key?(:options)
1302
+ @source_context = args[:source_context] if args.key?(:source_context)
1303
+ @fields = args[:fields] if args.key?(:fields)
1304
+ @name = args[:name] if args.key?(:name)
1305
+ @syntax = args[:syntax] if args.key?(:syntax)
1306
+ end
1307
+ end
1308
+
1309
+ # The ListGroups response.
1310
+ class ListGroupsResponse
1311
+ include Google::Apis::Core::Hashable
1312
+
1313
+ # The groups that match the specified filters.
1314
+ # Corresponds to the JSON property `group`
1315
+ # @return [Array<Google::Apis::MonitoringV3::Group>]
1316
+ attr_accessor :group
1317
+
1318
+ # If there are more results than have been returned, then this field is set to a
1319
+ # non-empty value. To see the additional results, use that value as pageToken in
1320
+ # the next call to this method.
1321
+ # Corresponds to the JSON property `nextPageToken`
1322
+ # @return [String]
1323
+ attr_accessor :next_page_token
1324
+
1325
+ def initialize(**args)
1326
+ update!(**args)
1327
+ end
1328
+
1329
+ # Update properties of this object
1330
+ def update!(**args)
1331
+ @group = args[:group] if args.key?(:group)
1332
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
1333
+ end
1334
+ end
1335
+ end
1336
+ end
1337
+ end