google-api-client 0.11.2 → 0.11.3

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