google-api-client 0.11.2 → 0.11.3

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