on develop help sign in
Regenerating gogol-monitoring from latest service definition
commit8d006a7d27dd90f517e4d3237500403a321384d7 authorBrendan Hay <brendan.g.hay@gmail.com> dateTue 25 Oct 2016, 11:37 (10 years ago) parentc981559
22 files changed+2599−1926
gen/model/monitoring/v3/monitoring-api.json+1586−1475 gogol-monitoring/README.md+1−1 gogol-monitoring/gen/Network/Google/Monitoring.hs+35−10 gogol-monitoring/gen/Network/Google/Monitoring/Types.hs+31−1 gogol-monitoring/gen/Network/Google/Monitoring/Types/Product.hs+256−238 gogol-monitoring/gen/Network/Google/Monitoring/Types/Sum.hs+503 gogol-monitoring/gen/Network/Google/Resource/Monitoring/Projects/CollectdTimeSeries/Create.hs+11−13 gogol-monitoring/gen/Network/Google/Resource/Monitoring/Projects/Groups/Create.hs+5−5 gogol-monitoring/gen/Network/Google/Resource/Monitoring/Projects/Groups/Delete.hs+5−5 gogol-monitoring/gen/Network/Google/Resource/Monitoring/Projects/Groups/Get.hs+5−5 gogol-monitoring/gen/Network/Google/Resource/Monitoring/Projects/Groups/List.hs+16−20 gogol-monitoring/gen/Network/Google/Resource/Monitoring/Projects/Groups/Members/List.hs+21−21 gogol-monitoring/gen/Network/Google/Resource/Monitoring/Projects/Groups/Update.hs+11−11 gogol-monitoring/gen/Network/Google/Resource/Monitoring/Projects/MetricDescriptors/Create.hs+7−7 gogol-monitoring/gen/Network/Google/Resource/Monitoring/Projects/MetricDescriptors/Delete.hs+10−11 gogol-monitoring/gen/Network/Google/Resource/Monitoring/Projects/MetricDescriptors/Get.hs+7−7 gogol-monitoring/gen/Network/Google/Resource/Monitoring/Projects/MetricDescriptors/List.hs+11−12 gogol-monitoring/gen/Network/Google/Resource/Monitoring/Projects/MonitoredResourceDescriptors/Get.hs+6−7 gogol-monitoring/gen/Network/Google/Resource/Monitoring/Projects/MonitoredResourceDescriptors/List.hs+10−11 gogol-monitoring/gen/Network/Google/Resource/Monitoring/Projects/TimeSeries/Create.hs+5−5 gogol-monitoring/gen/Network/Google/Resource/Monitoring/Projects/TimeSeries/List.hs+53−52 gogol-monitoring/gogol-monitoring.cabal+4−9
gen/model/monitoring/v3/monitoring-api.json+1586−1475
@@ -1,1517 +1,1628 @@
11{
2− "kind": "discovery#restDescription",
3− "etag": "\"jQLIOHBVnDZie4rQHGH1WJF-INE/xW_CLgXez5AZDCw5fhxCvxKwgIc\"",
4− "discoveryVersion": "v1",
5− "id": "monitoring:v3",
6− "name": "monitoring",
7− "version": "v3",
8− "revision": "20160425",
9− "title": "Google Monitoring API",
10− "description": "Manages your Stackdriver monitoring data and configurations. Projects must be associated with a Stackdriver account, except for the following methods: [monitoredResourceDescriptors.list](v3/projects.monitoredResourceDescriptors/list), [monitoredResourceDescriptors.get](v3/projects.monitoredResourceDescriptors/get), [metricDescriptors.list](v3/projects.metricDescriptors/list), [metricDescriptors.get](v3/projects.metricDescriptors/get), and [timeSeries.list](v3/projects.timeSeries/list).",
11− "ownerDomain": "google.com",
12− "ownerName": "Google",
13− "icons": {
14− "x16": "http://www.google.com/images/icons/product/search-16.gif",
15− "x32": "http://www.google.com/images/icons/product/search-32.gif"
16− },
17− "documentationLink": "https://cloud.google.com/monitoring/api/",
18− "protocol": "rest",
19− "baseUrl": "https://monitoring.googleapis.com/",
20− "basePath": "",
21− "rootUrl": "https://monitoring.googleapis.com/",
22− "servicePath": "",
23− "batchPath": "batch",
24− "version_module": true,
25− "parameters": {
26− "access_token": {
27− "type": "string",
28− "description": "OAuth access token.",
29− "location": "query"
30− },
31− "alt": {
32− "type": "string",
33− "description": "Data format for response.",
34− "default": "json",
35− "enumDescriptions": [
36− "Responses with Content-Type of application/json",
37− "Media download with context-dependent Content-Type",
38− "Responses with Content-Type of application/x-protobuf"
39− ],
40− "location": "query"
41− },
42− "bearer_token": {
43− "type": "string",
44− "description": "OAuth bearer token.",
45− "location": "query"
46− },
47− "callback": {
48− "type": "string",
49− "description": "JSONP",
50− "location": "query"
51− },
52− "fields": {
53− "type": "string",
54− "description": "Selector specifying which fields to include in a partial response.",
55− "location": "query"
56− },
57− "key": {
58− "type": "string",
59− "description": "API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token.",
60− "location": "query"
61− },
62− "oauth_token": {
63− "type": "string",
64− "description": "OAuth 2.0 token for the current user.",
65− "location": "query"
66− },
67− "pp": {
68− "type": "boolean",
69− "description": "Pretty-print response.",
70− "default": "true",
71− "location": "query"
72− },
73− "prettyPrint": {
74− "type": "boolean",
75− "description": "Returns response with indentations and line breaks.",
76− "default": "true",
77− "location": "query"
78− },
79− "quotaUser": {
80− "type": "string",
81− "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.",
82− "location": "query"
83− },
84− "upload_protocol": {
85− "type": "string",
86− "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").",
87− "location": "query"
88− },
89− "uploadType": {
90− "type": "string",
91− "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").",
92− "location": "query"
93− },
94− "$.xgafv": {
95− "type": "string",
96− "description": "V1 error format.",
97− "enumDescriptions": [
98− "v1 error format",
99− "v2 error format"
100− ],
101− "location": "query"
102− }
103− },
104− "auth": {
105− "oauth2": {
106− "scopes": {
107− "https://www.googleapis.com/auth/cloud-platform": {
108− "description": "View and manage your data across Google Cloud Platform services"
109− },
110− "https://www.googleapis.com/auth/monitoring": {
111− "description": "View and write monitoring data for all of your Google and third-party Cloud and API projects"
112− },
113− "https://www.googleapis.com/auth/monitoring.read": {
114− "description": "View monitoring data for all of your Google Cloud and third-party projects"
115− },
116− "https://www.googleapis.com/auth/monitoring.write": {
117− "description": "Publish metric data to your Google Cloud projects"
118− }
119− }
120− }
121− },
122− "schemas": {
123− "CreateCollectdTimeSeriesRequest": {
124− "id": "CreateCollectdTimeSeriesRequest",
125− "type": "object",
126− "description": "The `CreateCollectdTimeSeries` request.",
127− "properties": {
128− "resource": {
129− "$ref": "MonitoredResource",
130− "description": "The monitored resource associated with the time series."
131− },
132− "collectdVersion": {
133− "type": "string",
134− "description": "The version of `collectd` that collected the data. Example: `\"5.3.0-192.el6\"`."
135− },
136− "collectdPayloads": {
137− "type": "array",
138− "description": "The `collectd` payloads representing the time series data. You must not include more than a single point for each time series, so no two payloads can have the same values for all of the fields `plugin`, `plugin_instance`, `type`, and `type_instance`.",
139− "items": {
140− "$ref": "CollectdPayload"
141− }
142− }
143− }
144− },
145− "MonitoredResource": {
146− "id": "MonitoredResource",
147− "type": "object",
148− "description": "An object representing a resource that can be used for monitoring, logging, billing, or other purposes. Examples include virtual machine instances, databases, and storage devices such as disks. The `type` field identifies a MonitoredResourceDescriptor object that describes the resource's schema. Information in the `labels` field identifies the actual resource and its attributes according to the schema. For example, a particular Compute Engine VM instance could be represented by the following object, because the MonitoredResourceDescriptor for `\"gce_instance\"` has labels `\"instance_id\"` and `\"zone\"`: { \"type\": \"gce_instance\", \"labels\": { \"instance_id\": \"my-instance\", \"zone\": \"us-central1-a\" }}",
149− "properties": {
150− "type": {
151− "type": "string",
152− "description": "Required. The monitored resource type. This field must match the `type` field of a MonitoredResourceDescriptor object. For example, the type of a Cloud SQL database is `\"cloudsql_database\"`."
153− },
154− "labels": {
155− "type": "object",
156− "description": "Required. Values for all of the labels listed in the associated monitored resource descriptor. For example, Cloud SQL databases use the labels `\"database_id\"` and `\"zone\"`.",
157− "additionalProperties": {
158− "type": "string"
159− }
160− }
161− }
162− },
163− "CollectdPayload": {
164− "id": "CollectdPayload",
165− "type": "object",
166− "description": "A collection of data points sent from a `collectd`-based plugin. See the `collectd` documentation for more information.",
167− "properties": {
168− "values": {
169− "type": "array",
170− "description": "The measured values during this time interval. Each value must have a different `dataSourceName`.",
171− "items": {
172− "$ref": "CollectdValue"
173− }
174− },
175− "startTime": {
176− "type": "string",
177− "description": "The start time of the interval."
178− },
179− "endTime": {
180− "type": "string",
181− "description": "The end time of the interval."
182− },
183− "plugin": {
184− "type": "string",
185− "description": "The name of the plugin. Example: `\"disk\"`."
186− },
187− "pluginInstance": {
188− "type": "string",
189− "description": "The instance name of the plugin Example: `\"hdcl\"`."
190− },
191− "type": {
192− "type": "string",
193− "description": "The measurement type. Example: `\"memory\"`."
194− },
195− "typeInstance": {
196− "type": "string",
197− "description": "The measurement type instance. Example: `\"used\"`."
198− },
199− "metadata": {
200− "type": "object",
201− "description": "The measurement metadata. Example: `\"process_id\" -\u003e 12345`",
202− "additionalProperties": {
203− "$ref": "TypedValue"
204− }
205− }
206− }
207− },
208− "CollectdValue": {
209− "id": "CollectdValue",
210− "type": "object",
211− "description": "A single data point from a `collectd`-based plugin.",
212− "properties": {
213− "dataSourceName": {
214− "type": "string",
215− "description": "The data source for the `collectd` value. For example there are two data sources for network measurements: `\"rx\"` and `\"tx\"`."
216− },
217− "dataSourceType": {
218− "type": "string",
219− "description": "The type of measurement.",
220− "enum": [
221− "UNSPECIFIED_DATA_SOURCE_TYPE",
222− "GAUGE",
223− "COUNTER",
224− "DERIVE",
225− "ABSOLUTE"
226− ]
227− },
228− "value": {
229− "$ref": "TypedValue",
230− "description": "The measurement value."
231− }
232− }
233− },
234− "TypedValue": {
235− "id": "TypedValue",
236− "type": "object",
237− "description": "A single strongly-typed value.",
238− "properties": {
239− "boolValue": {
240− "type": "boolean",
241− "description": "A Boolean value: `true` or `false`."
242− },
243− "int64Value": {
244− "type": "string",
245− "description": "A 64-bit integer. Its range is approximately ±9.2x1018.",
246− "format": "int64"
247− },
248− "doubleValue": {
249− "type": "number",
250− "description": "A 64-bit double-precision floating-point number. Its magnitude is approximately ±10±300 and it has 16 significant digits of precision.",
251− "format": "double"
252− },
253− "stringValue": {
254− "type": "string",
255− "description": "A variable-length string value."
256− },
257− "distributionValue": {
258− "$ref": "Distribution",
259− "description": "A distribution value."
260− }
261− }
262− },
263− "Distribution": {
264− "id": "Distribution",
265− "type": "object",
266− "description": "Distribution contains summary statistics for a population of values and, optionally, a histogram representing the distribution of those values across a specified set of histogram buckets. The summary statistics are the count, mean, sum of the squared deviation from the mean, the minimum, and the maximum of the set of population of values. The histogram is based on a sequence of buckets and gives a count of values that fall into each bucket. The boundaries of the buckets are given either explicitly or by specifying parameters for a method of computing them (buckets of fixed width or buckets of exponentially increasing width). Although it is not forbidden, it is generally a bad idea to include non-finite values (infinities or NaNs) in the population of values, as this will render the `mean` and `sum_of_squared_deviation` fields meaningless.",
267− "properties": {
268− "count": {
269− "type": "string",
270− "description": "The number of values in the population. Must be non-negative.",
271− "format": "int64"
272− },
273− "mean": {
274− "type": "number",
275− "description": "The arithmetic mean of the values in the population. If `count` is zero then this field must be zero.",
276− "format": "double"
277− },
278− "sumOfSquaredDeviation": {
279− "type": "number",
280− "description": "The sum of squared deviations from the mean of the values in the population. For values x_i this is: Sum[i=1..n]((x_i - mean)^2) Knuth, \"The Art of Computer Programming\", Vol. 2, page 323, 3rd edition describes Welford's method for accumulating this sum in one pass. If `count` is zero then this field must be zero.",
281− "format": "double"
282− },
283− "range": {
284− "$ref": "Range",
285− "description": "If specified, contains the range of the population values. The field must not be present if the `count` is zero."
286− },
287− "bucketOptions": {
288− "$ref": "BucketOptions",
289− "description": "Defines the histogram bucket boundaries."
290− },
291− "bucketCounts": {
292− "type": "array",
293− "description": "If `bucket_options` is given, then the sum of the values in `bucket_counts` must equal the value in `count`. If `bucket_options` is not given, no `bucket_counts` fields may be given. Bucket counts are given in order under the numbering scheme described above (the underflow bucket has number 0; the finite buckets, if any, have numbers 1 through N-2; the overflow bucket has number N-1). The size of `bucket_counts` must be no greater than N as defined in `bucket_options`. Any suffix of trailing zero bucket_count fields may be omitted.",
294− "items": {
295− "type": "string",
296− "format": "int64"
297− }
298− }
299− }
300− },
301− "Range": {
302− "id": "Range",
303− "type": "object",
304− "description": "The range of the population values.",
305− "properties": {
306− "min": {
307− "type": "number",
308− "description": "The minimum of the population values.",
309− "format": "double"
310− },
311− "max": {
312− "type": "number",
313− "description": "The maximum of the population values.",
314− "format": "double"
315− }
316− }
317− },
318− "BucketOptions": {
319− "id": "BucketOptions",
320− "type": "object",
321− "description": "A Distribution may optionally contain a histogram of the values in the population. The histogram is given in `bucket_counts` as counts of values that fall into one of a sequence of non-overlapping buckets. The sequence of buckets is described by `bucket_options`. A bucket specifies an inclusive lower bound and exclusive upper bound for the values that are counted for that bucket. The upper bound of a bucket is strictly greater than the lower bound. The sequence of N buckets for a Distribution consists of an underflow bucket (number 0), zero or more finite buckets (number 1 through N - 2) and an overflow bucket (number N - 1). The buckets are contiguous: the lower bound of bucket i (i \u003e 0) is the same as the upper bound of bucket i - 1. The buckets span the whole range of finite values: lower bound of the underflow bucket is -infinity and the upper bound of the overflow bucket is +infinity. The finite buckets are so-called because both bounds are finite. `BucketOptions` describes bucket boundaries in one of three ways. Two describe the boundaries by giving parameters for a formula to generate boundaries and one gives the bucket boundaries explicitly. If `bucket_boundaries` is not given, then no `bucket_counts` may be given.",
322− "properties": {
323− "linearBuckets": {
324− "$ref": "Linear",
325− "description": "The linear bucket."
326− },
327− "exponentialBuckets": {
328− "$ref": "Exponential",
329− "description": "The exponential buckets."
330− },
331− "explicitBuckets": {
332− "$ref": "Explicit",
333− "description": "The explicit buckets."
334− }
335− }
336− },
337− "Linear": {
338− "id": "Linear",
339− "type": "object",
340− "description": "Specify a sequence of buckets that all have the same width (except overflow and underflow). Each bucket represents a constant absolute uncertainty on the specific value in the bucket. Defines `num_finite_buckets + 2` (= N) buckets with these boundaries for bucket `i`: Upper bound (0 \u003c= i \u003c N-1): offset + (width * i). Lower bound (1 \u003c= i \u003c N): offset + (width * (i - 1)).",
341− "properties": {
342− "numFiniteBuckets": {
343− "type": "integer",
344− "description": "Must be greater than 0.",
345− "format": "int32"
346− },
347− "width": {
348− "type": "number",
349− "description": "Must be greater than 0.",
350− "format": "double"
351− },
352− "offset": {
353− "type": "number",
354− "description": "Lower bound of the first bucket.",
355− "format": "double"
356− }
357− }
358− },
359− "Exponential": {
360− "id": "Exponential",
361− "type": "object",
362− "description": "Specify a sequence of buckets that have a width that is proportional to the value of the lower bound. Each bucket represents a constant relative uncertainty on a specific value in the bucket. Defines `num_finite_buckets + 2` (= N) buckets with these boundaries for bucket i: Upper bound (0 \u003c= i \u003c N-1): scale * (growth_factor ^ i). Lower bound (1 \u003c= i \u003c N): scale * (growth_factor ^ (i - 1)).",
363− "properties": {
364− "numFiniteBuckets": {
365− "type": "integer",
366− "description": "must be greater than 0",
367− "format": "int32"
368− },
369− "growthFactor": {
370− "type": "number",
371− "description": "Must be greater than 1",
372− "format": "double"
373− },
374− "scale": {
375− "type": "number",
376− "description": "Must be greater than 0",
377− "format": "double"
378− }
379− }
380− },
381− "Explicit": {
382− "id": "Explicit",
383− "type": "object",
384− "description": "A set of buckets with arbitrary widths. Defines `size(bounds) + 1` (= N) buckets with these boundaries for bucket i: Upper bound (0 \u003c= i \u003c N-1): bounds[i] Lower bound (1 \u003c= i \u003c N); bounds[i - 1] There must be at least one element in `bounds`. If `bounds` has only one element, there are no finite buckets, and that single element is the common boundary of the overflow and underflow buckets.",
385− "properties": {
386− "bounds": {
387− "type": "array",
388− "description": "The values must be monotonically increasing.",
389− "items": {
390− "type": "number",
391− "format": "double"
392− }
393− }
394− }
395− },
396− "Empty": {
397− "id": "Empty",
398− "type": "object",
399− "description": "A generic empty message that you can re-use to avoid defining duplicated empty messages in your APIs. A typical example is to use it as the request or the response type of an API method. For instance: service Foo { rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty); } The JSON representation for `Empty` is empty JSON object `{}`."
400− },
401− "ListGroupsResponse": {
402− "id": "ListGroupsResponse",
403− "type": "object",
404− "description": "The `ListGroups` response.",
405− "properties": {
406− "group": {
407− "type": "array",
408− "description": "The groups that match the specified filters.",
409− "items": {
410− "$ref": "Group"
411− }
412− },
413− "nextPageToken": {
414− "type": "string",
415− "description": "If there are more results than have been returned, then this field is set to a non-empty value. To see the additional results, use that value as `pageToken` in the next call to this method."
416− }
417− }
418− },
419− "Group": {
420− "id": "Group",
421− "type": "object",
422− "description": "The description of a dynamic collection of monitored resources. Each group has a filter that is matched against monitored resources and their associated metadata. If a group's filter matches an available monitored resource, then that resource is a member of that group. Groups can contain any number of monitored resources, and each monitored resource can be a member of any number of groups. Groups can be nested in parent-child hierarchies. The `parentName` field identifies an optional parent for each group. If a group has a parent, then the only monitored resources available to be matched by the group's filter are the resources contained in the parent group. In other words, a group contains the monitored resources that match its filter and the filters of all the group's ancestors. A group without a parent can contain any monitored resource. For example, consider an infrastructure running a set of instances with two user-defined tags: `\"environment\"` and `\"role\"`. A parent group has a filter, `environment=\"production\"`. A child of that parent group has a filter, `role=\"transcoder\"`. The parent group contains all instances in the production environment, regardless of their roles. The child group contains instances that have the transcoder role *and* are in the production environment. The monitored resources contained in a group can change at any moment, depending on what resources exist and what filters are associated with the group and its ancestors.",
423− "properties": {
424− "name": {
425− "type": "string",
426− "description": "The name of this group. The format is `\"projects/{project_id_or_number}/groups/{group_id}\"`. When creating a group, this field is ignored and a new name is created consisting of the project specified in the call to `CreateGroup` and a unique `{group_id}` that is generated automatically. @OutputOnly"
427− },
428− "displayName": {
429− "type": "string",
430− "description": "A user-assigned name for this group, used only for display purposes."
431− },
432− "parentName": {
433− "type": "string",
434− "description": "The name of the group's parent, if it has one. The format is `\"projects/{project_id_or_number}/groups/{group_id}\"`. For groups with no parent, `parentName` is the empty string, `\"\"`."
435− },
436− "filter": {
437− "type": "string",
438− "description": "The filter used to determine which monitored resources belong to this group."
439− },
440− "isCluster": {
441− "type": "boolean",
442− "description": "If true, the members of this group are considered to be a cluster. The system can perform additional analysis on groups that are clusters."
443− }
444− }
445− },
446− "ListGroupMembersResponse": {
447− "id": "ListGroupMembersResponse",
448− "type": "object",
449− "description": "The `ListGroupMembers` response.",
450− "properties": {
451− "members": {
452− "type": "array",
453− "description": "A set of monitored resources in the group.",
454− "items": {
455− "$ref": "MonitoredResource"
456− }
457− },
458− "nextPageToken": {
459− "type": "string",
460− "description": "If there are more results than have been returned, then this field is set to a non-empty value. To see the additional results, use that value as `pageToken` in the next call to this method."
461− },
462− "totalSize": {
463− "type": "integer",
464− "description": "The total number of elements matching this request.",
465− "format": "int32"
466− }
467− }
468− },
469− "ListMonitoredResourceDescriptorsResponse": {
470− "id": "ListMonitoredResourceDescriptorsResponse",
471− "type": "object",
472− "description": "The `ListMonitoredResourcDescriptors` response.",
473− "properties": {
474− "resourceDescriptors": {
475− "type": "array",
476− "description": "The monitored resource descriptors that are available to this project and that match `filter`, if present.",
477− "items": {
478− "$ref": "MonitoredResourceDescriptor"
479− }
480− },
481− "nextPageToken": {
482− "type": "string",
483− "description": "If there are more results than have been returned, then this field is set to a non-empty value. To see the additional results, use that value as `pageToken` in the next call to this method."
484− }
485− }
486− },
487− "MonitoredResourceDescriptor": {
488− "id": "MonitoredResourceDescriptor",
489− "type": "object",
490− "description": "An object that describes the schema of a MonitoredResource object using a type name and a set of labels. For example, the monitored resource descriptor for Google Compute Engine VM instances has a type of `\"gce_instance\"` and specifies the use of the labels `\"instance_id\"` and `\"zone\"` to identify particular VM instances. Different APIs can support different monitored resource types. APIs generally provide a `list` method that returns the monitored resource descriptors used by the API.",
491− "properties": {
492− "name": {
493− "type": "string",
494− "description": "Optional. The resource name of the monitored resource descriptor: `\"projects/{project_id}/monitoredResourceDescriptors/{type}\"` where {type} is the value of the `type` field in this object and {project_id} is a project ID that provides API-specific context for accessing the type. APIs that do not use project information can use the resource name format `\"monitoredResourceDescriptors/{type}\"`."
495− },
496− "type": {
497− "type": "string",
498− "description": "Required. The monitored resource type. For example, the type `\"cloudsql_database\"` represents databases in Google Cloud SQL."
499− },
500− "displayName": {
501− "type": "string",
502− "description": "Optional. A concise name for the monitored resource type that might be displayed in user interfaces. For example, `\"Google Cloud SQL Database\"`."
503− },
504− "description": {
505− "type": "string",
506− "description": "Optional. A detailed description of the monitored resource type that might be used in documentation."
507− },
508− "labels": {
509− "type": "array",
510− "description": "Required. A set of labels used to describe instances of this monitored resource type. For example, an individual Google Cloud SQL database is identified by values for the labels `\"database_id\"` and `\"zone\"`.",
511− "items": {
512− "$ref": "LabelDescriptor"
513− }
514− }
515− }
516− },
517− "LabelDescriptor": {
518− "id": "LabelDescriptor",
519− "type": "object",
520− "description": "A description of a label.",
521− "properties": {
522− "key": {
523− "type": "string",
524− "description": "The label key."
525− },
526− "valueType": {
527− "type": "string",
528− "description": "The type of data that can be assigned to the label.",
529− "enum": [
530− "STRING",
531− "BOOL",
532− "INT64"
533− ]
534− },
535− "description": {
536− "type": "string",
537− "description": "A human-readable description for the label."
538− }
539− }
540− },
541− "ListMetricDescriptorsResponse": {
542− "id": "ListMetricDescriptorsResponse",
543− "type": "object",
544− "description": "The `ListMetricDescriptors` response.",
545− "properties": {
546− "metricDescriptors": {
547− "type": "array",
548− "description": "The metric descriptors that are available to the project and that match the value of `filter`, if present.",
549− "items": {
550− "$ref": "MetricDescriptor"
551− }
552− },
553− "nextPageToken": {
554− "type": "string",
555− "description": "If there are more results than have been returned, then this field is set to a non-empty value. To see the additional results, use that value as `pageToken` in the next call to this method."
556− }
557− }
558− },
559− "MetricDescriptor": {
560− "id": "MetricDescriptor",
561− "type": "object",
562− "description": "Defines a metric type and its schema.",
563− "properties": {
564− "name": {
565− "type": "string",
566− "description": "Resource name. The format of the name may vary between different implementations. For examples: projects/{project_id}/metricDescriptors/{type=**} metricDescriptors/{type=**}"
567− },
568− "type": {
569− "type": "string",
570− "description": "The metric type including a DNS name prefix, for example `\"compute.googleapis.com/instance/cpu/utilization\"`. Metric types should use a natural hierarchical grouping such as the following: compute.googleapis.com/instance/cpu/utilization compute.googleapis.com/instance/disk/read_ops_count compute.googleapis.com/instance/network/received_bytes_count Note that if the metric type changes, the monitoring data will be discontinued, and anything depends on it will break, such as monitoring dashboards, alerting rules and quota limits. Therefore, once a metric has been published, its type should be immutable."
571− },
572− "labels": {
573− "type": "array",
574− "description": "The set of labels that can be used to describe a specific instance of this metric type. For example, the `compute.googleapis.com/instance/network/received_bytes_count` metric type has a label, `loadbalanced`, that specifies whether the traffic was received through a load balanced IP address.",
575− "items": {
576− "$ref": "LabelDescriptor"
577− }
578− },
579− "metricKind": {
580− "type": "string",
581− "description": "Whether the metric records instantaneous values, changes to a value, etc.",
582− "enum": [
583− "METRIC_KIND_UNSPECIFIED",
584− "GAUGE",
585− "DELTA",
586− "CUMULATIVE"
587− ]
588− },
589− "valueType": {
590− "type": "string",
591− "description": "Whether the measurement is an integer, a floating-point number, etc.",
592− "enum": [
593− "VALUE_TYPE_UNSPECIFIED",
594− "BOOL",
595− "INT64",
596− "DOUBLE",
597− "STRING",
598− "DISTRIBUTION",
599− "MONEY"
600− ]
601− },
602− "unit": {
603− "type": "string",
604− "description": "The unit in which the metric value is reported. It is only applicable if the `value_type` is `INT64`, `DOUBLE`, or `DISTRIBUTION`. The supported units are a subset of [The Unified Code for Units of Measure](http://unitsofmeasure.org/ucum.html) standard: **Basic units (UNIT)** * `bit` bit * `By` byte * `s` second * `min` minute * `h` hour * `d` day **Prefixes (PREFIX)** * `k` kilo (10**3) * `M` mega (10**6) * `G` giga (10**9) * `T` tera (10**12) * `P` peta (10**15) * `E` exa (10**18) * `Z` zetta (10**21) * `Y` yotta (10**24) * `m` milli (10**-3) * `u` micro (10**-6) * `n` nano (10**-9) * `p` pico (10**-12) * `f` femto (10**-15) * `a` atto (10**-18) * `z` zepto (10**-21) * `y` yocto (10**-24) * `Ki` kibi (2**10) * `Mi` mebi (2**20) * `Gi` gibi (2**30) * `Ti` tebi (2**40) **Grammar** The grammar includes the dimensionless unit `1`, such as `1/s`. The grammar also includes these connectors: * `/` division (as an infix operator, e.g. `1/s`). * `.` multiplication (as an infix operator, e.g. `GBy.d`) The grammar for a unit is as follows: Expression = Component { \".\" Component } { \"/\" Component } ; Component = [ PREFIX ] UNIT [ Annotation ] | Annotation | \"1\" ; Annotation = \"{\" NAME \"}\" ; Notes: * `Annotation` is just a comment if it follows a `UNIT` and is equivalent to `1` if it is used alone. For examples, `{requests}/s == 1/s`, `By{transmitted}/s == By/s`. * `NAME` is a sequence of non-blank printable ASCII characters not containing '{' or '}'."
605− },
606− "description": {
607− "type": "string",
608− "description": "A detailed description of the metric, which can be used in documentation."
609− },
610− "displayName": {
611− "type": "string",
612− "description": "A concise name for the metric, which can be displayed in user interfaces. Use sentence case without an ending period, for example \"Request count\"."
613− }
614− }
615− },
616− "ListTimeSeriesResponse": {
617− "id": "ListTimeSeriesResponse",
618− "type": "object",
619− "description": "The `ListTimeSeries` response.",
620− "properties": {
621− "timeSeries": {
622− "type": "array",
623− "description": "One or more time series that match the filter included in the request.",
624− "items": {
625− "$ref": "TimeSeries"
626− }
627− },
628− "nextPageToken": {
629− "type": "string",
630− "description": "If there are more results than have been returned, then this field is set to a non-empty value. To see the additional results, use that value as `pageToken` in the next call to this method."
631− }
632− }
633− },
634− "TimeSeries": {
635− "id": "TimeSeries",
636− "type": "object",
637− "description": "A collection of data points that describes the time-varying nature of a metric. A time series is identified by a combination of a fully-specified monitored resource and a fully-specified metric.",
638− "properties": {
639− "metric": {
640− "$ref": "Metric",
641− "description": "The fully-specified metric used to identify the time series."
642− },
643− "resource": {
644− "$ref": "MonitoredResource",
645− "description": "The fully-specified monitored resource used to identify the time series."
646− },
647− "metricKind": {
648− "type": "string",
649− "description": "The metric kind of the time series. This can be different than the metric kind specified in [google.api.MetricDescriptor] because of alignment and reduction operations on the data. This field is ignored when writing data; the value specified in the descriptor is used instead. @OutputOnly",
650− "enum": [
651− "METRIC_KIND_UNSPECIFIED",
652− "GAUGE",
653− "DELTA",
654− "CUMULATIVE"
655− ]
656− },
657− "valueType": {
658− "type": "string",
659− "description": "The value type of the time series. This can be different than the value type specified in [google.api.MetricDescriptor] because of alignment and reduction operations on the data. This field is ignored when writing data; the value specified in the descriptor is used instead. @OutputOnly",
660− "enum": [
661− "VALUE_TYPE_UNSPECIFIED",
662− "BOOL",
663− "INT64",
664− "DOUBLE",
665− "STRING",
666− "DISTRIBUTION",
667− "MONEY"
668− ]
669− },
670− "points": {
671− "type": "array",
672− "description": "The data points of this time series. When used as output, points will be sorted by decreasing time order. When used as input, points could be written in any orders.",
673− "items": {
674− "$ref": "Point"
675− }
676− }
677− }
678− },
679− "Metric": {
680− "id": "Metric",
681− "type": "object",
682− "description": "A specific metric identified by specifying values for all of the labels of a `MetricDescriptor`.",
683− "properties": {
684− "type": {
685− "type": "string",
686− "description": "An existing metric type, see google.api.MetricDescriptor. For example, `compute.googleapis.com/instance/cpu/usage_time`."
687− },
688− "labels": {
689− "type": "object",
690− "description": "The set of labels that uniquely identify a metric. To specify a metric, all labels enumerated in the `MetricDescriptor` must be assigned values.",
691− "additionalProperties": {
692− "type": "string"
693− }
694− }
695− }
696− },
697− "Point": {
698− "id": "Point",
699− "type": "object",
700− "description": "A single data point in a time series.",
701− "properties": {
702− "interval": {
703− "$ref": "TimeInterval",
704− "description": "The time interval to which the value applies."
705− },
706− "value": {
707− "$ref": "TypedValue",
708− "description": "The value of the data point."
709− }
710− }
711− },
712− "TimeInterval": {
713− "id": "TimeInterval",
714− "type": "object",
715− "description": "A time interval extending from after `startTime` through `endTime`. If `startTime` is omitted, the interval is the single point in time, `endTime`.",
716− "properties": {
717− "endTime": {
718− "type": "string",
719− "description": "Required. The end of the interval. The interval includes this time."
720− },
721− "startTime": {
722− "type": "string",
723− "description": "If this value is omitted, the interval is a point in time, `endTime`. If `startTime` is present, it must be earlier than (less than) `endTime`. The interval begins after `startTime`—it does not include `startTime`."
724− }
725− }
726− },
727− "CreateTimeSeriesRequest": {
728− "id": "CreateTimeSeriesRequest",
729− "type": "object",
730− "description": "The `CreateTimeSeries` request.",
731− "properties": {
732− "timeSeries": {
733− "type": "array",
734− "description": "The new data to be added to a list of time series. Adds at most one data point to each of several time series. The new data point must be more recent than any other point in its time series. Each `TimeSeries` value must fully specify a unique time series by supplying all label values for the metric and the monitored resource.",
735− "items": {
736− "$ref": "TimeSeries"
737− }
738− }
739− }
740− },
741− "Type": {
742− "id": "Type",
743− "type": "object",
744− "description": "A protocol buffer message type.",
745− "properties": {
746− "name": {
747− "type": "string",
748− "description": "The fully qualified message name."
749− },
750− "fields": {
751− "type": "array",
752− "description": "The list of fields.",
753− "items": {
754− "$ref": "Field"
755− }
756− },
757− "oneofs": {
758− "type": "array",
759− "description": "The list of types appearing in `oneof` definitions in this type.",
760− "items": {
761− "type": "string"
762− }
763− },
764− "options": {
765− "type": "array",
766− "description": "The protocol buffer options.",
767− "items": {
768− "$ref": "Option"
769− }
770− },
771− "sourceContext": {
772− "$ref": "SourceContext",
773− "description": "The source context."
774− },
775− "syntax": {
776− "type": "string",
777− "description": "The source syntax.",
778− "enum": [
779− "SYNTAX_PROTO2",
780− "SYNTAX_PROTO3"
781− ]
782− }
783− }
784− },
785− "Field": {
786− "id": "Field",
787− "type": "object",
788− "description": "A single field of a message type.",
789− "properties": {
790− "kind": {
791− "type": "string",
792− "description": "The field type.",
793− "enum": [
794− "TYPE_UNKNOWN",
795− "TYPE_DOUBLE",
796− "TYPE_FLOAT",
797− "TYPE_INT64",
798− "TYPE_UINT64",
799− "TYPE_INT32",
800− "TYPE_FIXED64",
801− "TYPE_FIXED32",
802− "TYPE_BOOL",
803− "TYPE_STRING",
804− "TYPE_GROUP",
805− "TYPE_MESSAGE",
806− "TYPE_BYTES",
807− "TYPE_UINT32",
808− "TYPE_ENUM",
809− "TYPE_SFIXED32",
810− "TYPE_SFIXED64",
811− "TYPE_SINT32",
812− "TYPE_SINT64"
813− ]
814− },
815− "cardinality": {
816− "type": "string",
817− "description": "The field cardinality.",
818− "enum": [
819− "CARDINALITY_UNKNOWN",
820− "CARDINALITY_OPTIONAL",
821− "CARDINALITY_REQUIRED",
822− "CARDINALITY_REPEATED"
823− ]
824− },
825− "number": {
826− "type": "integer",
827− "description": "The field number.",
828− "format": "int32"
829− },
830− "name": {
831− "type": "string",
832− "description": "The field name."
833− },
834− "typeUrl": {
835− "type": "string",
836− "description": "The field type URL, without the scheme, for message or enumeration types. Example: `\"type.googleapis.com/google.protobuf.Timestamp\"`."
837− },
838− "oneofIndex": {
839− "type": "integer",
840− "description": "The index of the field type in `Type.oneofs`, for message or enumeration types. The first type has index 1; zero means the type is not in the list.",
841− "format": "int32"
842− },
843− "packed": {
844− "type": "boolean",
845− "description": "Whether to use alternative packed wire representation."
846− },
847− "options": {
848− "type": "array",
849− "description": "The protocol buffer options.",
850− "items": {
851− "$ref": "Option"
852− }
853− },
854− "jsonName": {
855− "type": "string",
856− "description": "The field JSON name."
857− },
858− "defaultValue": {
859− "type": "string",
860− "description": "The string value of the default value of this field. Proto2 syntax only."
2+ "id": "monitoring:v3",
3+ "auth": {
4+ "oauth2": {
5+ "scopes": {
6+ "https://www.googleapis.com/auth/cloud-platform": {
7+ "description": "View and manage your data across Google Cloud Platform services"
8+ },
9+ "https://www.googleapis.com/auth/monitoring.read": {
10+ "description": "View monitoring data for all of your Google Cloud and third-party projects"
11+ },
12+ "https://www.googleapis.com/auth/monitoring.write": {
13+ "description": "Publish metric data to your Google Cloud projects"
14+ },
15+ "https://www.googleapis.com/auth/monitoring": {
16+ "description": "View and write monitoring data for all of your Google and third-party Cloud and API projects"
17+ }
18+ }
86119 }
862− }
86320 },
864− "Option": {
865− "id": "Option",
866− "type": "object",
867− "description": "A protocol buffer option, which can be attached to a message, field, enumeration, etc.",
868− "properties": {
869− "name": {
870− "type": "string",
871− "description": "The option's name. For example, `\"java_package\"`."
872− },
873− "value": {
874− "type": "object",
875− "description": "The option's value. For example, `\"com.google.protobuf\"`.",
876− "additionalProperties": {
877− "type": "any",
878− "description": "Properties of the object. Contains field @ype with type URL."
879− }
21+ "description": "Manages your Stackdriver Monitoring data and configurations. Most projects must be associated with a Stackdriver account, with a few exceptions as noted on the individual method pages.",
22+ "protocol": "rest",
23+ "title": "Stackdriver Monitoring API",
24+ "resources": {
25+ "projects": {
26+ "resources": {
27+ "collectdTimeSeries": {
28+ "methods": {
29+ "create": {
30+ "id": "monitoring.projects.collectdTimeSeries.create",
31+ "response": {
32+ "$ref": "Empty"
33+ },
34+ "parameterOrder": [
35+ "name"
36+ ],
37+ "description": "Stackdriver Monitoring Agent only: Creates a new time series.\u003caside class=\"caution\"\u003eThis method is only for use by the Stackdriver Monitoring Agent. Use projects.timeSeries.create instead.\u003c/aside\u003e",
38+ "request": {
39+ "$ref": "CreateCollectdTimeSeriesRequest"
40+ },
41+ "flatPath": "v3/projects/{projectsId}/collectdTimeSeries",
42+ "httpMethod": "POST",
43+ "parameters": {
44+ "name": {
45+ "description": "The project in which to create the time series. The format is &quot;projects/PROJECT_ID_OR_NUMBER&quot;.",
46+ "required": true,
47+ "pattern": "^projects/[^/]+$",
48+ "location": "path",
49+ "type": "string"
50+ }
51+ },
52+ "path": "v3/{+name}/collectdTimeSeries",
53+ "scopes": [
54+ "https://www.googleapis.com/auth/cloud-platform",
55+ "https://www.googleapis.com/auth/monitoring",
56+ "https://www.googleapis.com/auth/monitoring.write"
57+ ]
58+ }
59+ }
60+ },
61+ "groups": {
62+ "resources": {
63+ "members": {
64+ "methods": {
65+ "list": {
66+ "id": "monitoring.projects.groups.members.list",
67+ "response": {
68+ "$ref": "ListGroupMembersResponse"
69+ },
70+ "parameterOrder": [
71+ "name"
72+ ],
73+ "description": "Lists the monitored resources that are members of a group.",
74+ "flatPath": "v3/projects/{projectsId}/groups/{groupsId}/members",
75+ "httpMethod": "GET",
76+ "parameters": {
77+ "filter": {
78+ "description": "An optional list filter (/monitoring/api/learn_more#filtering) describing the members to be returned. The filter may reference the type, labels, and metadata of monitored resources that comprise the group. For example, to return only resources representing Compute Engine VM instances, use this filter:\nresource.type = &quot;gce_instance&quot;\n",
79+ "location": "query",
80+ "type": "string"
81+ },
82+ "interval.endTime": {
83+ "description": "Required. The end of the time interval.",
84+ "location": "query",
85+ "type": "string",
86+ "format": "google-datetime"
87+ },
88+ "interval.startTime": {
89+ "description": "Optional. The beginning of the time interval. The default value for the start time is the end time. The start time must not be later than the end time.",
90+ "location": "query",
91+ "type": "string",
92+ "format": "google-datetime"
93+ },
94+ "pageSize": {
95+ "description": "A positive number that is the maximum number of results to return.",
96+ "location": "query",
97+ "type": "integer",
98+ "format": "int32"
99+ },
100+ "name": {
101+ "description": "The group whose members are listed. The format is &quot;projects/{project_id_or_number}/groups/{group_id}&quot;.",
102+ "required": true,
103+ "pattern": "^projects/[^/]+/groups/[^/]+$",
104+ "location": "path",
105+ "type": "string"
106+ },
107+ "pageToken": {
108+ "description": "If this field is not empty then it must contain the nextPageToken value returned by a previous call to this method. Using this field causes the method to return additional results from the previous method call.",
109+ "location": "query",
110+ "type": "string"
111+ }
112+ },
113+ "path": "v3/{+name}/members",
114+ "scopes": [
115+ "https://www.googleapis.com/auth/cloud-platform",
116+ "https://www.googleapis.com/auth/monitoring",
117+ "https://www.googleapis.com/auth/monitoring.read"
118+ ]
119+ }
120+ }
121+ }
122+ },
123+ "methods": {
124+ "update": {
125+ "id": "monitoring.projects.groups.update",
126+ "response": {
127+ "$ref": "Group"
128+ },
129+ "parameterOrder": [
130+ "name"
131+ ],
132+ "description": "Updates an existing group. You can change any group attributes except name.",
133+ "request": {
134+ "$ref": "Group"
135+ },
136+ "flatPath": "v3/projects/{projectsId}/groups/{groupsId}",
137+ "httpMethod": "PUT",
138+ "parameters": {
139+ "validateOnly": {
140+ "description": "If true, validate this request but do not update the existing group.",
141+ "location": "query",
142+ "type": "boolean"
143+ },
144+ "name": {
145+ "description": "Output only. The name of this group. The format is &quot;projects/{project_id_or_number}/groups/{group_id}&quot;. When creating a group, this field is ignored and a new name is created consisting of the project specified in the call to CreateGroup and a unique {group_id} that is generated automatically.",
146+ "required": true,
147+ "pattern": "^projects/[^/]+/groups/[^/]+$",
148+ "location": "path",
149+ "type": "string"
150+ }
151+ },
152+ "path": "v3/{+name}",
153+ "scopes": [
154+ "https://www.googleapis.com/auth/cloud-platform",
155+ "https://www.googleapis.com/auth/monitoring"
156+ ]
157+ },
158+ "get": {
159+ "id": "monitoring.projects.groups.get",
160+ "response": {
161+ "$ref": "Group"
162+ },
163+ "parameterOrder": [
164+ "name"
165+ ],
166+ "description": "Gets a single group.",
167+ "flatPath": "v3/projects/{projectsId}/groups/{groupsId}",
168+ "httpMethod": "GET",
169+ "parameters": {
170+ "name": {
171+ "description": "The group to retrieve. The format is &quot;projects/{project_id_or_number}/groups/{group_id}&quot;.",
172+ "required": true,
173+ "pattern": "^projects/[^/]+/groups/[^/]+$",
174+ "location": "path",
175+ "type": "string"
176+ }
177+ },
178+ "path": "v3/{+name}",
179+ "scopes": [
180+ "https://www.googleapis.com/auth/cloud-platform",
181+ "https://www.googleapis.com/auth/monitoring",
182+ "https://www.googleapis.com/auth/monitoring.read"
183+ ]
184+ },
185+ "create": {
186+ "id": "monitoring.projects.groups.create",
187+ "response": {
188+ "$ref": "Group"
189+ },
190+ "parameterOrder": [
191+ "name"
192+ ],
193+ "description": "Creates a new group.",
194+ "request": {
195+ "$ref": "Group"
196+ },
197+ "flatPath": "v3/projects/{projectsId}/groups",
198+ "httpMethod": "POST",
199+ "parameters": {
200+ "validateOnly": {
201+ "description": "If true, validate this request but do not create the group.",
202+ "location": "query",
203+ "type": "boolean"
204+ },
205+ "name": {
206+ "description": "The project in which to create the group. The format is &quot;projects/{project_id_or_number}&quot;.",
207+ "required": true,
208+ "pattern": "^projects/[^/]+$",
209+ "location": "path",
210+ "type": "string"
211+ }
212+ },
213+ "path": "v3/{+name}/groups",
214+ "scopes": [
215+ "https://www.googleapis.com/auth/cloud-platform",
216+ "https://www.googleapis.com/auth/monitoring"
217+ ]
218+ },
219+ "list": {
220+ "id": "monitoring.projects.groups.list",
221+ "response": {
222+ "$ref": "ListGroupsResponse"
223+ },
224+ "parameterOrder": [
225+ "name"
226+ ],
227+ "description": "Lists the existing groups.",
228+ "flatPath": "v3/projects/{projectsId}/groups",
229+ "httpMethod": "GET",
230+ "parameters": {
231+ "descendantsOfGroup": {
232+ "description": "A group name: &quot;projects/{project_id_or_number}/groups/{group_id}&quot;. Returns the descendants of the specified group. This is a superset of the results returned by the childrenOfGroup filter, and includes children-of-children, and so forth.",
233+ "location": "query",
234+ "type": "string"
235+ },
236+ "pageSize": {
237+ "description": "A positive number that is the maximum number of results to return.",
238+ "location": "query",
239+ "type": "integer",
240+ "format": "int32"
241+ },
242+ "childrenOfGroup": {
243+ "description": "A group name: &quot;projects/{project_id_or_number}/groups/{group_id}&quot;. Returns groups whose parentName field contains the group name. If no groups have this parent, the results are empty.",
244+ "location": "query",
245+ "type": "string"
246+ },
247+ "name": {
248+ "description": "The project whose groups are to be listed. The format is &quot;projects/{project_id_or_number}&quot;.",
249+ "required": true,
250+ "pattern": "^projects/[^/]+$",
251+ "location": "path",
252+ "type": "string"
253+ },
254+ "ancestorsOfGroup": {
255+ "description": "A group name: &quot;projects/{project_id_or_number}/groups/{group_id}&quot;. Returns groups that are ancestors of the specified group. The groups are returned in order, starting with the immediate parent and ending with the most distant ancestor. If the specified group has no immediate parent, the results are empty.",
256+ "location": "query",
257+ "type": "string"
258+ },
259+ "pageToken": {
260+ "description": "If this field is not empty then it must contain the nextPageToken value returned by a previous call to this method. Using this field causes the method to return additional results from the previous method call.",
261+ "location": "query",
262+ "type": "string"
263+ }
264+ },
265+ "path": "v3/{+name}/groups",
266+ "scopes": [
267+ "https://www.googleapis.com/auth/cloud-platform",
268+ "https://www.googleapis.com/auth/monitoring",
269+ "https://www.googleapis.com/auth/monitoring.read"
270+ ]
271+ },
272+ "delete": {
273+ "id": "monitoring.projects.groups.delete",
274+ "response": {
275+ "$ref": "Empty"
276+ },
277+ "parameterOrder": [
278+ "name"
279+ ],
280+ "description": "Deletes an existing group.",
281+ "flatPath": "v3/projects/{projectsId}/groups/{groupsId}",
282+ "httpMethod": "DELETE",
283+ "parameters": {
284+ "name": {
285+ "description": "The group to delete. The format is &quot;projects/{project_id_or_number}/groups/{group_id}&quot;.",
286+ "required": true,
287+ "pattern": "^projects/[^/]+/groups/[^/]+$",
288+ "location": "path",
289+ "type": "string"
290+ }
291+ },
292+ "path": "v3/{+name}",
293+ "scopes": [
294+ "https://www.googleapis.com/auth/cloud-platform",
295+ "https://www.googleapis.com/auth/monitoring"
296+ ]
297+ }
298+ }
299+ },
300+ "metricDescriptors": {
301+ "methods": {
302+ "get": {
303+ "id": "monitoring.projects.metricDescriptors.get",
304+ "response": {
305+ "$ref": "MetricDescriptor"
306+ },
307+ "parameterOrder": [
308+ "name"
309+ ],
310+ "description": "Gets a single metric descriptor. This method does not require a Stackdriver account.",
311+ "flatPath": "v3/projects/{projectsId}/metricDescriptors/{metricDescriptorsId}",
312+ "httpMethod": "GET",
313+ "parameters": {
314+ "name": {
315+ "description": "The metric descriptor on which to execute the request. The format is &quot;projects/{project_id_or_number}/metricDescriptors/{metric_id}&quot;. An example value of {metric_id} is &quot;compute.googleapis.com/instance/disk/read_bytes_count&quot;.",
316+ "required": true,
317+ "pattern": "^projects/[^/]+/metricDescriptors/.+$",
318+ "location": "path",
319+ "type": "string"
320+ }
321+ },
322+ "path": "v3/{+name}",
323+ "scopes": [
324+ "https://www.googleapis.com/auth/cloud-platform",
325+ "https://www.googleapis.com/auth/monitoring",
326+ "https://www.googleapis.com/auth/monitoring.read",
327+ "https://www.googleapis.com/auth/monitoring.write"
328+ ]
329+ },
330+ "create": {
331+ "id": "monitoring.projects.metricDescriptors.create",
332+ "response": {
333+ "$ref": "MetricDescriptor"
334+ },
335+ "parameterOrder": [
336+ "name"
337+ ],
338+ "description": "Creates a new metric descriptor. User-created metric descriptors define custom metrics (/monitoring/custom-metrics).",
339+ "request": {
340+ "$ref": "MetricDescriptor"
341+ },
342+ "flatPath": "v3/projects/{projectsId}/metricDescriptors",
343+ "httpMethod": "POST",
344+ "parameters": {
345+ "name": {
346+ "description": "The project on which to execute the request. The format is &quot;projects/{project_id_or_number}&quot;.",
347+ "required": true,
348+ "pattern": "^projects/[^/]+$",
349+ "location": "path",
350+ "type": "string"
351+ }
352+ },
353+ "path": "v3/{+name}/metricDescriptors",
354+ "scopes": [
355+ "https://www.googleapis.com/auth/cloud-platform",
356+ "https://www.googleapis.com/auth/monitoring",
357+ "https://www.googleapis.com/auth/monitoring.write"
358+ ]
359+ },
360+ "list": {
361+ "id": "monitoring.projects.metricDescriptors.list",
362+ "response": {
363+ "$ref": "ListMetricDescriptorsResponse"
364+ },
365+ "parameterOrder": [
366+ "name"
367+ ],
368+ "description": "Lists metric descriptors that match a filter. This method does not require a Stackdriver account.",
369+ "flatPath": "v3/projects/{projectsId}/metricDescriptors",
370+ "httpMethod": "GET",
371+ "parameters": {
372+ "pageSize": {
373+ "description": "A positive number that is the maximum number of results to return.",
374+ "location": "query",
375+ "type": "integer",
376+ "format": "int32"
377+ },
378+ "filter": {
379+ "description": "If this field is empty, all custom and system-defined metric descriptors are returned. Otherwise, the filter (/monitoring/api/v3/filters) specifies which metric descriptors are to be returned. For example, the following filter matches all custom metrics (/monitoring/custom-metrics):\nmetric.type = starts_with(&quot;custom.googleapis.com/&quot;)\n",
380+ "location": "query",
381+ "type": "string"
382+ },
383+ "name": {
384+ "description": "The project on which to execute the request. The format is &quot;projects/{project_id_or_number}&quot;.",
385+ "required": true,
386+ "pattern": "^projects/[^/]+$",
387+ "location": "path",
388+ "type": "string"
389+ },
390+ "pageToken": {
391+ "description": "If this field is not empty then it must contain the nextPageToken value returned by a previous call to this method. Using this field causes the method to return additional results from the previous method call.",
392+ "location": "query",
393+ "type": "string"
394+ }
395+ },
396+ "path": "v3/{+name}/metricDescriptors",
397+ "scopes": [
398+ "https://www.googleapis.com/auth/cloud-platform",
399+ "https://www.googleapis.com/auth/monitoring",
400+ "https://www.googleapis.com/auth/monitoring.read",
401+ "https://www.googleapis.com/auth/monitoring.write"
402+ ]
403+ },
404+ "delete": {
405+ "id": "monitoring.projects.metricDescriptors.delete",
406+ "response": {
407+ "$ref": "Empty"
408+ },
409+ "parameterOrder": [
410+ "name"
411+ ],
412+ "description": "Deletes a metric descriptor. Only user-created custom metrics (/monitoring/custom-metrics) can be deleted.",
413+ "flatPath": "v3/projects/{projectsId}/metricDescriptors/{metricDescriptorsId}",
414+ "httpMethod": "DELETE",
415+ "parameters": {
416+ "name": {
417+ "description": "The metric descriptor on which to execute the request. The format is &quot;projects/{project_id_or_number}/metricDescriptors/{metric_id}&quot;. An example of {metric_id} is: &quot;custom.googleapis.com/my_test_metric&quot;.",
418+ "required": true,
419+ "pattern": "^projects/[^/]+/metricDescriptors/.+$",
420+ "location": "path",
421+ "type": "string"
422+ }
423+ },
424+ "path": "v3/{+name}",
425+ "scopes": [
426+ "https://www.googleapis.com/auth/cloud-platform",
427+ "https://www.googleapis.com/auth/monitoring"
428+ ]
429+ }
430+ }
431+ },
432+ "timeSeries": {
433+ "methods": {
434+ "create": {
435+ "id": "monitoring.projects.timeSeries.create",
436+ "response": {
437+ "$ref": "Empty"
438+ },
439+ "parameterOrder": [
440+ "name"
441+ ],
442+ "description": "Creates or adds data to one or more time series. The response is empty if all time series in the request were written. If any time series could not be written, a corresponding failure message is included in the error response.",
443+ "request": {
444+ "$ref": "CreateTimeSeriesRequest"
445+ },
446+ "flatPath": "v3/projects/{projectsId}/timeSeries",
447+ "httpMethod": "POST",
448+ "parameters": {
449+ "name": {
450+ "description": "The project on which to execute the request. The format is &quot;projects/{project_id_or_number}&quot;.",
451+ "required": true,
452+ "pattern": "^projects/[^/]+$",
453+ "location": "path",
454+ "type": "string"
455+ }
456+ },
457+ "path": "v3/{+name}/timeSeries",
458+ "scopes": [
459+ "https://www.googleapis.com/auth/cloud-platform",
460+ "https://www.googleapis.com/auth/monitoring",
461+ "https://www.googleapis.com/auth/monitoring.write"
462+ ]
463+ },
464+ "list": {
465+ "id": "monitoring.projects.timeSeries.list",
466+ "response": {
467+ "$ref": "ListTimeSeriesResponse"
468+ },
469+ "parameterOrder": [
470+ "name"
471+ ],
472+ "description": "Lists time series that match a filter. This method does not require a Stackdriver account.",
473+ "flatPath": "v3/projects/{projectsId}/timeSeries",
474+ "httpMethod": "GET",
475+ "parameters": {
476+ "filter": {
477+ "description": "A monitoring filter (/monitoring/api/v3/filters) that specifies which time series should be returned. The filter must specify a single metric type, and can additionally specify metric labels and other information. For example:\nmetric.type = &quot;compute.googleapis.com/instance/cpu/usage_time&quot; AND\n metric.label.instance_name = &quot;my-instance-name&quot;\n",
478+ "location": "query",
479+ "type": "string"
480+ },
481+ "aggregation.groupByFields": {
482+ "description": "The set of fields to preserve when crossSeriesReducer is specified. The groupByFields determine how the time series are partitioned into subsets prior to applying the aggregation function. Each subset contains time series that have the same value for each of the grouping fields. Each individual time series is a member of exactly one subset. The crossSeriesReducer is applied to each subset of time series. Fields not specified in groupByFields are aggregated away. If groupByFields is not specified, the time series are aggregated into a single output time series. If crossSeriesReducer is not defined, this field is ignored.",
483+ "repeated": true,
484+ "location": "query",
485+ "type": "string"
486+ },
487+ "aggregation.crossSeriesReducer": {
488+ "description": "The approach to be used to combine time series. Not all reducer functions may be applied to all time series, depending on the metric type and the value type of the original time series. Reduction may change the metric type of value type of the time series.Time series data must be aligned in order to perform cross-time series reduction. If crossSeriesReducer is specified, then perSeriesAligner must be specified and not equal ALIGN_NONE and alignmentPeriod must be specified; otherwise, an error is returned.",
489+ "enum": [
490+ "REDUCE_NONE",
491+ "REDUCE_MEAN",
492+ "REDUCE_MIN",
493+ "REDUCE_MAX",
494+ "REDUCE_SUM",
495+ "REDUCE_STDDEV",
496+ "REDUCE_COUNT",
497+ "REDUCE_COUNT_TRUE",
498+ "REDUCE_FRACTION_TRUE",
499+ "REDUCE_PERCENTILE_99",
500+ "REDUCE_PERCENTILE_95",
501+ "REDUCE_PERCENTILE_50",
502+ "REDUCE_PERCENTILE_05"
503+ ],
504+ "location": "query",
505+ "type": "string"
506+ },
507+ "interval.endTime": {
508+ "description": "Required. The end of the time interval.",
509+ "location": "query",
510+ "type": "string",
511+ "format": "google-datetime"
512+ },
513+ "interval.startTime": {
514+ "description": "Optional. The beginning of the time interval. The default value for the start time is the end time. The start time must not be later than the end time.",
515+ "location": "query",
516+ "type": "string",
517+ "format": "google-datetime"
518+ },
519+ "pageSize": {
520+ "description": "A positive number that is the maximum number of results to return. When view field sets to FULL, it limits the number of Points server will return; if view field is HEADERS, it limits the number of TimeSeries server will return.",
521+ "location": "query",
522+ "type": "integer",
523+ "format": "int32"
524+ },
525+ "view": {
526+ "description": "Specifies which information is returned about the time series.",
527+ "enum": [
528+ "FULL",
529+ "HEADERS"
530+ ],
531+ "location": "query",
532+ "type": "string"
533+ },
534+ "name": {
535+ "description": "The project on which to execute the request. The format is \"projects/{project_id_or_number}\".",
536+ "required": true,
537+ "pattern": "^projects/[^/]+$",
538+ "location": "path",
539+ "type": "string"
540+ },
541+ "aggregation.alignmentPeriod": {
542+ "description": "The alignment period for per-time series alignment. If present, alignmentPeriod must be at least 60 seconds. After per-time series alignment, each time series will contain data points only on the period boundaries. If perSeriesAligner is not specified or equals ALIGN_NONE, then this field is ignored. If perSeriesAligner is specified and does not equal ALIGN_NONE, then this field must be defined; otherwise an error is returned.",
543+ "location": "query",
544+ "type": "string",
545+ "format": "google-duration"
546+ },
547+ "aggregation.perSeriesAligner": {
548+ "description": "The approach to be used to align individual time series. Not all alignment functions may be applied to all time series, depending on the metric type and value type of the original time series. Alignment may change the metric type or the value type of the time series.Time series data must be aligned in order to perform cross-time series reduction. If crossSeriesReducer is specified, then perSeriesAligner must be specified and not equal ALIGN_NONE and alignmentPeriod must be specified; otherwise, an error is returned.",
549+ "enum": [
550+ "ALIGN_NONE",
551+ "ALIGN_DELTA",
552+ "ALIGN_RATE",
553+ "ALIGN_INTERPOLATE",
554+ "ALIGN_NEXT_OLDER",
555+ "ALIGN_MIN",
556+ "ALIGN_MAX",
557+ "ALIGN_MEAN",
558+ "ALIGN_COUNT",
559+ "ALIGN_SUM",
560+ "ALIGN_STDDEV",
561+ "ALIGN_COUNT_TRUE",
562+ "ALIGN_FRACTION_TRUE",
563+ "ALIGN_PERCENTILE_99",
564+ "ALIGN_PERCENTILE_95",
565+ "ALIGN_PERCENTILE_50",
566+ "ALIGN_PERCENTILE_05"
567+ ],
568+ "location": "query",
569+ "type": "string"
570+ },
571+ "orderBy": {
572+ "description": "Specifies the order in which the points of the time series should be returned. By default, results are not ordered. Currently, this field must be left blank.",
573+ "location": "query",
574+ "type": "string"
575+ },
576+ "pageToken": {
577+ "description": "If this field is not empty then it must contain the nextPageToken value returned by a previous call to this method. Using this field causes the method to return additional results from the previous method call.",
578+ "location": "query",
579+ "type": "string"
580+ }
581+ },
582+ "path": "v3/{+name}/timeSeries",
583+ "scopes": [
584+ "https://www.googleapis.com/auth/cloud-platform",
585+ "https://www.googleapis.com/auth/monitoring",
586+ "https://www.googleapis.com/auth/monitoring.read"
587+ ]
588+ }
589+ }
590+ },
591+ "monitoredResourceDescriptors": {
592+ "methods": {
593+ "get": {
594+ "id": "monitoring.projects.monitoredResourceDescriptors.get",
595+ "response": {
596+ "$ref": "MonitoredResourceDescriptor"
597+ },
598+ "parameterOrder": [
599+ "name"
600+ ],
601+ "description": "Gets a single monitored resource descriptor. This method does not require a Stackdriver account.",
602+ "flatPath": "v3/projects/{projectsId}/monitoredResourceDescriptors/{monitoredResourceDescriptorsId}",
603+ "httpMethod": "GET",
604+ "parameters": {
605+ "name": {
606+ "description": "The monitored resource descriptor to get. The format is &quot;projects/{project_id_or_number}/monitoredResourceDescriptors/{resource_type}&quot;. The {resource_type} is a predefined type, such as cloudsql_database.",
607+ "required": true,
608+ "pattern": "^projects/[^/]+/monitoredResourceDescriptors/[^/]+$",
609+ "location": "path",
610+ "type": "string"
611+ }
612+ },
613+ "path": "v3/{+name}",
614+ "scopes": [
615+ "https://www.googleapis.com/auth/cloud-platform",
616+ "https://www.googleapis.com/auth/monitoring",
617+ "https://www.googleapis.com/auth/monitoring.read",
618+ "https://www.googleapis.com/auth/monitoring.write"
619+ ]
620+ },
621+ "list": {
622+ "id": "monitoring.projects.monitoredResourceDescriptors.list",
623+ "response": {
624+ "$ref": "ListMonitoredResourceDescriptorsResponse"
625+ },
626+ "parameterOrder": [
627+ "name"
628+ ],
629+ "description": "Lists monitored resource descriptors that match a filter. This method does not require a Stackdriver account.",
630+ "flatPath": "v3/projects/{projectsId}/monitoredResourceDescriptors",
631+ "httpMethod": "GET",
632+ "parameters": {
633+ "pageSize": {
634+ "description": "A positive number that is the maximum number of results to return.",
635+ "location": "query",
636+ "type": "integer",
637+ "format": "int32"
638+ },
639+ "filter": {
640+ "description": "An optional filter (/monitoring/api/v3/filters) describing the descriptors to be returned. The filter can reference the descriptor's type and labels. For example, the following filter returns only Google Compute Engine descriptors that have an id label:\nresource.type = starts_with(&quot;gce_&quot;) AND resource.label:id\n",
641+ "location": "query",
642+ "type": "string"
643+ },
644+ "name": {
645+ "description": "The project on which to execute the request. The format is &quot;projects/{project_id_or_number}&quot;.",
646+ "required": true,
647+ "pattern": "^projects/[^/]+$",
648+ "location": "path",
649+ "type": "string"
650+ },
651+ "pageToken": {
652+ "description": "If this field is not empty then it must contain the nextPageToken value returned by a previous call to this method. Using this field causes the method to return additional results from the previous method call.",
653+ "location": "query",
654+ "type": "string"
655+ }
656+ },
657+ "path": "v3/{+name}/monitoredResourceDescriptors",
658+ "scopes": [
659+ "https://www.googleapis.com/auth/cloud-platform",
660+ "https://www.googleapis.com/auth/monitoring",
661+ "https://www.googleapis.com/auth/monitoring.read",
662+ "https://www.googleapis.com/auth/monitoring.write"
663+ ]
664+ }
665+ }
666+ }
667+ }
880668 }
881− }
882669 },
883− "SourceContext": {
884− "id": "SourceContext",
885− "type": "object",
886− "description": "`SourceContext` represents information about the source of a protobuf element, like the file in which it is defined.",
887− "properties": {
888− "fileName": {
889− "type": "string",
890− "description": "The path-qualified name of the .proto file that contained the associated protobuf element. For example: `\"google/protobuf/source.proto\"`."
891− }
892− }
893− }
894− },
895− "resources": {
896− "projects": {
897− "resources": {
898− "collectdTimeSeries": {
899− "methods": {
900− "create": {
901− "id": "monitoring.projects.collectdTimeSeries.create",
902− "path": "v3/{+name}/collectdTimeSeries",
903− "httpMethod": "POST",
904− "description": "Creates a new time series with the given data points. This method is only for use in `collectd`-related code, including the Google Monitoring Agent. See [google.monitoring.v3.MetricService.CreateTimeSeries] instead.",
905− "parameters": {
906− "name": {
907− "type": "string",
908− "description": "The project in which to create the time series. The format is `\"projects/PROJECT_ID_OR_NUMBER\"`.",
909− "required": true,
910− "pattern": "^projects/[^/]*$",
911− "location": "path"
670+ "schemas": {
671+ "Metric": {
672+ "description": "A specific metric identified by specifying values for all of the labels of a MetricDescriptor.",
673+ "type": "object",
674+ "properties": {
675+ "labels": {
676+ "description": "The set of labels that uniquely identify a metric. To specify a metric, all labels enumerated in the MetricDescriptor must be assigned values.",
677+ "additionalProperties": {
678+ "type": "string"
679+ },
680+ "type": "object"
681+ },
682+ "type": {
683+ "description": "An existing metric type, see google.api.MetricDescriptor. For example, compute.googleapis.com/instance/cpu/usage_time.",
684+ "type": "string"
912685 }
913− },
914− "parameterOrder": [
915− "name"
916− ],
917− "request": {
918− "$ref": "CreateCollectdTimeSeriesRequest"
919− },
920− "response": {
921− "$ref": "Empty"
922− },
923− "scopes": [
924− "https://www.googleapis.com/auth/cloud-platform",
925− "https://www.googleapis.com/auth/monitoring",
926− "https://www.googleapis.com/auth/monitoring.write"
927− ]
928− }
929− }
930− },
931− "groups": {
932− "methods": {
933− "list": {
934− "id": "monitoring.projects.groups.list",
935− "path": "v3/{+name}/groups",
936− "httpMethod": "GET",
937− "description": "Lists the existing groups.",
938− "parameters": {
939− "name": {
940− "type": "string",
941− "description": "The project whose groups are to be listed. The format is `\"projects/{project_id_or_number}\"`.",
942− "required": true,
943− "pattern": "^projects/[^/]*$",
944− "location": "path"
945− },
946− "childrenOfGroup": {
947− "type": "string",
948− "description": "A group name: `\"projects/{project_id_or_number}/groups/{group_id}\"`. Returns groups whose `parentName` field contains the group name. If no groups have this parent, the results are empty.",
949− "location": "query"
950− },
951− "ancestorsOfGroup": {
952− "type": "string",
953− "description": "A group name: `\"projects/{project_id_or_number}/groups/{group_id}\"`. Returns groups that are ancestors of the specified group. The groups are returned in order, starting with the immediate parent and ending with the most distant ancestor. If the specified group has no immediate parent, the results are empty.",
954− "location": "query"
955− },
956− "descendantsOfGroup": {
957− "type": "string",
958− "description": "A group name: `\"projects/{project_id_or_number}/groups/{group_id}\"`. Returns the descendants of the specified group. This is a superset of the results returned by the `childrenOfGroup` filter, and includes children-of-children, and so forth.",
959− "location": "query"
960− },
961− "pageSize": {
962− "type": "integer",
963− "description": "A positive number that is the maximum number of results to return.",
964− "format": "int32",
965− "location": "query"
966− },
967− "pageToken": {
968− "type": "string",
969− "description": "If this field is not empty then it must contain the `nextPageToken` value returned by a previous call to this method. Using this field causes the method to return additional results from the previous method call.",
970− "location": "query"
686+ },
687+ "id": "Metric"
688+ },
689+ "ListGroupMembersResponse": {
690+ "description": "The ListGroupMembers response.",
691+ "type": "object",
692+ "properties": {
693+ "members": {
694+ "description": "A set of monitored resources in the group.",
695+ "type": "array",
696+ "items": {
697+ "$ref": "MonitoredResource"
698+ }
699+ },
700+ "nextPageToken": {
701+ "description": "If there are more results than have been returned, then this field is set to a non-empty value. To see the additional results, use that value as pageToken in the next call to this method.",
702+ "type": "string"
703+ },
704+ "totalSize": {
705+ "description": "The total number of elements matching this request.",
706+ "type": "integer",
707+ "format": "int32"
971708 }
972− },
973− "parameterOrder": [
974− "name"
975− ],
976− "response": {
977− "$ref": "ListGroupsResponse"
978− },
979− "scopes": [
980− "https://www.googleapis.com/auth/cloud-platform",
981− "https://www.googleapis.com/auth/monitoring",
982− "https://www.googleapis.com/auth/monitoring.read"
983− ]
984709 },
985− "get": {
986− "id": "monitoring.projects.groups.get",
987− "path": "v3/{+name}",
988− "httpMethod": "GET",
989− "description": "Gets a single group.",
990− "parameters": {
991− "name": {
992− "type": "string",
993− "description": "The group to retrieve. The format is `\"projects/{project_id_or_number}/groups/{group_id}\"`.",
994− "required": true,
995− "pattern": "^projects/[^/]*/groups/[^/]*$",
996− "location": "path"
710+ "id": "ListGroupMembersResponse"
711+ },
712+ "TimeInterval": {
713+ "description": "A time interval extending just after a start time through an end time. If the start time is the same as the end time, then the interval represents a single point in time.",
714+ "type": "object",
715+ "properties": {
716+ "endTime": {
717+ "description": "Required. The end of the time interval.",
718+ "type": "string",
719+ "format": "google-datetime"
720+ },
721+ "startTime": {
722+ "description": "Optional. The beginning of the time interval. The default value for the start time is the end time. The start time must not be later than the end time.",
723+ "type": "string",
724+ "format": "google-datetime"
997725 }
998− },
999− "parameterOrder": [
1000− "name"
1001− ],
1002− "response": {
1003− "$ref": "Group"
1004− },
1005− "scopes": [
1006− "https://www.googleapis.com/auth/cloud-platform",
1007− "https://www.googleapis.com/auth/monitoring",
1008− "https://www.googleapis.com/auth/monitoring.read"
1009− ]
1010726 },
1011− "create": {
1012− "id": "monitoring.projects.groups.create",
1013− "path": "v3/{+name}/groups",
1014− "httpMethod": "POST",
1015− "description": "Creates a new group.",
1016− "parameters": {
727+ "id": "TimeInterval"
728+ },
729+ "Group": {
730+ "description": "The description of a dynamic collection of monitored resources. Each group has a filter that is matched against monitored resources and their associated metadata. If a group's filter matches an available monitored resource, then that resource is a member of that group. Groups can contain any number of monitored resources, and each monitored resource can be a member of any number of groups.Groups can be nested in parent-child hierarchies. The parentName field identifies an optional parent for each group. If a group has a parent, then the only monitored resources available to be matched by the group's filter are the resources contained in the parent group. In other words, a group contains the monitored resources that match its filter and the filters of all the group's ancestors. A group without a parent can contain any monitored resource.For example, consider an infrastructure running a set of instances with two user-defined tags: &quot;environment&quot; and &quot;role&quot;. A parent group has a filter, environment=&quot;production&quot;. A child of that parent group has a filter, role=&quot;transcoder&quot;. The parent group contains all instances in the production environment, regardless of their roles. The child group contains instances that have the transcoder role and are in the production environment.The monitored resources contained in a group can change at any moment, depending on what resources exist and what filters are associated with the group and its ancestors.",
731+ "type": "object",
732+ "properties": {
733+ "displayName": {
734+ "description": "A user-assigned name for this group, used only for display purposes.",
735+ "type": "string"
736+ },
737+ "parentName": {
738+ "description": "The name of the group's parent, if it has one. The format is &quot;projects/{project_id_or_number}/groups/{group_id}&quot;. For groups with no parent, parentName is the empty string, &quot;&quot;.",
739+ "type": "string"
740+ },
741+ "isCluster": {
742+ "description": "If true, the members of this group are considered to be a cluster. The system can perform additional analysis on groups that are clusters.",
743+ "type": "boolean"
744+ },
745+ "filter": {
746+ "description": "The filter used to determine which monitored resources belong to this group.",
747+ "type": "string"
748+ },
1017749 "name": {
1018− "type": "string",
1019− "description": "The project in which to create the group. The format is `\"projects/{project_id_or_number}\"`.",
1020− "required": true,
1021− "pattern": "^projects/[^/]*$",
1022− "location": "path"
1023− },
1024− "validateOnly": {
1025− "type": "boolean",
1026− "description": "If true, validate this request but do not create the group.",
1027− "location": "query"
750+ "description": "Output only. The name of this group. The format is &quot;projects/{project_id_or_number}/groups/{group_id}&quot;. When creating a group, this field is ignored and a new name is created consisting of the project specified in the call to CreateGroup and a unique {group_id} that is generated automatically.",
751+ "type": "string"
1028752 }
1029− },
1030− "parameterOrder": [
1031− "name"
1032− ],
1033− "request": {
1034− "$ref": "Group"
1035− },
1036− "response": {
1037− "$ref": "Group"
1038− },
1039− "scopes": [
1040− "https://www.googleapis.com/auth/cloud-platform",
1041− "https://www.googleapis.com/auth/monitoring"
1042− ]
1043753 },
1044− "update": {
1045− "id": "monitoring.projects.groups.update",
1046− "path": "v3/{+name}",
1047− "httpMethod": "PUT",
1048− "description": "Updates an existing group. You can change any group attributes except `name`.",
1049− "parameters": {
1050− "name": {
1051− "type": "string",
1052− "description": "The name of this group. The format is `\"projects/{project_id_or_number}/groups/{group_id}\"`. When creating a group, this field is ignored and a new name is created consisting of the project specified in the call to `CreateGroup` and a unique `{group_id}` that is generated automatically. @OutputOnly",
1053− "required": true,
1054− "pattern": "^projects/[^/]*/groups/[^/]*$",
1055− "location": "path"
1056− },
1057− "validateOnly": {
1058− "type": "boolean",
1059− "description": "If true, validate this request but do not update the existing group.",
1060− "location": "query"
754+ "id": "Group"
755+ },
756+ "ListTimeSeriesResponse": {
757+ "description": "The ListTimeSeries response.",
758+ "type": "object",
759+ "properties": {
760+ "timeSeries": {
761+ "description": "One or more time series that match the filter included in the request.",
762+ "type": "array",
763+ "items": {
764+ "$ref": "TimeSeries"
765+ }
766+ },
767+ "nextPageToken": {
768+ "description": "If there are more results than have been returned, then this field is set to a non-empty value. To see the additional results, use that value as pageToken in the next call to this method.",
769+ "type": "string"
770+ }
771+ },
772+ "id": "ListTimeSeriesResponse"
773+ },
774+ "Point": {
775+ "description": "A single data point in a time series.",
776+ "type": "object",
777+ "properties": {
778+ "value": {
779+ "description": "The value of the data point.",
780+ "$ref": "TypedValue"
781+ },
782+ "interval": {
783+ "description": "The time interval to which the data point applies. For GAUGE metrics, only the end time of the interval is used. For DELTA metrics, the start and end time should specify a non-zero interval, with subsequent points specifying contiguous and non-overlapping intervals. For CUMULATIVE metrics, the start and end time should specify a non-zero interval, with subsequent points specifying the same start time and increasing end times, until an event resets the cumulative value to zero and sets a new start time for the following points.",
784+ "$ref": "TimeInterval"
1061785 }
1062− },
1063− "parameterOrder": [
1064− "name"
1065− ],
1066− "request": {
1067− "$ref": "Group"
1068− },
1069− "response": {
1070− "$ref": "Group"
1071− },
1072− "scopes": [
1073− "https://www.googleapis.com/auth/cloud-platform",
1074− "https://www.googleapis.com/auth/monitoring"
1075− ]
1076786 },
1077− "delete": {
1078− "id": "monitoring.projects.groups.delete",
1079− "path": "v3/{+name}",
1080− "httpMethod": "DELETE",
1081− "description": "Deletes an existing group.",
1082− "parameters": {
787+ "id": "Point"
788+ },
789+ "CollectdValue": {
790+ "description": "A single data point from a collectd-based plugin.",
791+ "type": "object",
792+ "properties": {
793+ "value": {
794+ "description": "The measurement value.",
795+ "$ref": "TypedValue"
796+ },
797+ "dataSourceName": {
798+ "description": "The data source for the collectd value. For example there are two data sources for network measurements: &quot;rx&quot; and &quot;tx&quot;.",
799+ "type": "string"
800+ },
801+ "dataSourceType": {
802+ "description": "The type of measurement.",
803+ "enum": [
804+ "UNSPECIFIED_DATA_SOURCE_TYPE",
805+ "GAUGE",
806+ "COUNTER",
807+ "DERIVE",
808+ "ABSOLUTE"
809+ ],
810+ "enumDescriptions": [
811+ "An unspecified data source type. This corresponds to google.api.MetricDescriptor.MetricKind.METRIC_KIND_UNSPECIFIED.",
812+ "An instantaneous measurement of a varying quantity. This corresponds to google.api.MetricDescriptor.MetricKind.GAUGE.",
813+ "A cumulative value over time. This corresponds to google.api.MetricDescriptor.MetricKind.CUMULATIVE.",
814+ "A rate of change of the measurement.",
815+ "An amount of change since the last measurement interval. This corresponds to google.api.MetricDescriptor.MetricKind.DELTA."
816+ ],
817+ "type": "string"
818+ }
819+ },
820+ "id": "CollectdValue"
821+ },
822+ "TimeSeries": {
823+ "description": "A collection of data points that describes the time-varying values of a metric. A time series is identified by a combination of a fully-specified monitored resource and a fully-specified metric. This type is used for both listing and creating time series.",
824+ "type": "object",
825+ "properties": {
826+ "metric": {
827+ "description": "The associated metric. A fully-specified metric used to identify the time series.",
828+ "$ref": "Metric"
829+ },
830+ "points": {
831+ "description": "The data points of this time series. When listing time series, the order of the points is specified by the list method.When creating a time series, this field must contain exactly one point and the point's type must be the same as the value type of the associated metric. If the associated metric's descriptor must be auto-created, then the value type of the descriptor is determined by the point's type, which must be BOOL, INT64, DOUBLE, or DISTRIBUTION.",
832+ "type": "array",
833+ "items": {
834+ "$ref": "Point"
835+ }
836+ },
837+ "valueType": {
838+ "description": "The value type of the time series. When listing time series, this value type might be different from the value type of the associated metric if this time series is an alignment or reduction of other time series.When creating a time series, this field is optional. If present, it must be the same as the type of the data in the points field.",
839+ "enum": [
840+ "VALUE_TYPE_UNSPECIFIED",
841+ "BOOL",
842+ "INT64",
843+ "DOUBLE",
844+ "STRING",
845+ "DISTRIBUTION",
846+ "MONEY"
847+ ],
848+ "enumDescriptions": [
849+ "Do not use this default value.",
850+ "The value is a boolean. This value type can be used only if the metric kind is GAUGE.",
851+ "The value is a signed 64-bit integer.",
852+ "The value is a double precision floating point number.",
853+ "The value is a text string. This value type can be used only if the metric kind is GAUGE.",
854+ "The value is a Distribution.",
855+ "The value is money."
856+ ],
857+ "type": "string"
858+ },
859+ "resource": {
860+ "description": "The associated resource. A fully-specified monitored resource used to identify the time series.",
861+ "$ref": "MonitoredResource"
862+ },
863+ "metricKind": {
864+ "description": "The metric kind of the time series. When listing time series, this metric kind might be different from the metric kind of the associated metric if this time series is an alignment or reduction of other time series.When creating a time series, this field is optional. If present, it must be the same as the metric kind of the associated metric. If the associated metric's descriptor must be auto-created, then this field specifies the metric kind of the new descriptor and must be either GAUGE (the default) or CUMULATIVE.",
865+ "enum": [
866+ "METRIC_KIND_UNSPECIFIED",
867+ "GAUGE",
868+ "DELTA",
869+ "CUMULATIVE"
870+ ],
871+ "enumDescriptions": [
872+ "Do not use this default value.",
873+ "An instantaneous measurement of a value.",
874+ "The change in a value during a time interval.",
875+ "A value accumulated over a time interval. Cumulative measurements in a time series should have the same start time and increasing end times, until an event resets the cumulative value to zero and sets a new start time for the following points."
876+ ],
877+ "type": "string"
878+ }
879+ },
880+ "id": "TimeSeries"
881+ },
882+ "MetricDescriptor": {
883+ "description": "Defines a metric type and its schema.",
884+ "type": "object",
885+ "properties": {
886+ "description": {
887+ "description": "A detailed description of the metric, which can be used in documentation.",
888+ "type": "string"
889+ },
890+ "unit": {
891+ "description": "The unit in which the metric value is reported. It is only applicable if the value_type is INT64, DOUBLE, or DISTRIBUTION. The supported units are a subset of The Unified Code for Units of Measure (http://unitsofmeasure.org/ucum.html) standard:Basic units (UNIT)\nbit bit\nBy byte\ns second\nmin minute\nh hour\nd dayPrefixes (PREFIX)\nk kilo (10**3)\nM mega (10**6)\nG giga (10**9)\nT tera (10**12)\nP peta (10**15)\nE exa (10**18)\nZ zetta (10**21)\nY yotta (10**24)\nm milli (10**-3)\nu micro (10**-6)\nn nano (10**-9)\np pico (10**-12)\nf femto (10**-15)\na atto (10**-18)\nz zepto (10**-21)\ny yocto (10**-24)\nKi kibi (2**10)\nMi mebi (2**20)\nGi gibi (2**30)\nTi tebi (2**40)GrammarThe grammar includes the dimensionless unit 1, such as 1/s.The grammar also includes these connectors:\n/ division (as an infix operator, e.g. 1/s).\n. multiplication (as an infix operator, e.g. GBy.d)The grammar for a unit is as follows:\nExpression = Component { &quot;.&quot; Component } { &quot;/&quot; Component } ;\n\nComponent = [ PREFIX ] UNIT [ Annotation ]\n | Annotation\n | &quot;1&quot;\n ;\n\nAnnotation = &quot;{&quot; NAME &quot;}&quot; ;\nNotes:\nAnnotation is just a comment if it follows a UNIT and is equivalent to 1 if it is used alone. For examples, {requests}/s == 1/s, By{transmitted}/s == By/s.\nNAME is a sequence of non-blank printable ASCII characters not containing '{' or '}'.",
892+ "type": "string"
893+ },
894+ "labels": {
895+ "description": "The set of labels that can be used to describe a specific instance of this metric type. For example, the compute.googleapis.com/instance/network/received_bytes_count metric type has a label, loadbalanced, that specifies whether the traffic was received through a load balanced IP address.",
896+ "type": "array",
897+ "items": {
898+ "$ref": "LabelDescriptor"
899+ }
900+ },
901+ "metricKind": {
902+ "description": "Whether the metric records instantaneous values, changes to a value, etc. Some combinations of metric_kind and value_type might not be supported.",
903+ "enum": [
904+ "METRIC_KIND_UNSPECIFIED",
905+ "GAUGE",
906+ "DELTA",
907+ "CUMULATIVE"
908+ ],
909+ "enumDescriptions": [
910+ "Do not use this default value.",
911+ "An instantaneous measurement of a value.",
912+ "The change in a value during a time interval.",
913+ "A value accumulated over a time interval. Cumulative measurements in a time series should have the same start time and increasing end times, until an event resets the cumulative value to zero and sets a new start time for the following points."
914+ ],
915+ "type": "string"
916+ },
917+ "valueType": {
918+ "description": "Whether the measurement is an integer, a floating-point number, etc. Some combinations of metric_kind and value_type might not be supported.",
919+ "enum": [
920+ "VALUE_TYPE_UNSPECIFIED",
921+ "BOOL",
922+ "INT64",
923+ "DOUBLE",
924+ "STRING",
925+ "DISTRIBUTION",
926+ "MONEY"
927+ ],
928+ "enumDescriptions": [
929+ "Do not use this default value.",
930+ "The value is a boolean. This value type can be used only if the metric kind is GAUGE.",
931+ "The value is a signed 64-bit integer.",
932+ "The value is a double precision floating point number.",
933+ "The value is a text string. This value type can be used only if the metric kind is GAUGE.",
934+ "The value is a Distribution.",
935+ "The value is money."
936+ ],
937+ "type": "string"
938+ },
939+ "displayName": {
940+ "description": "A concise name for the metric, which can be displayed in user interfaces. Use sentence case without an ending period, for example \"Request count\".",
941+ "type": "string"
942+ },
1083943 "name": {
1084− "type": "string",
1085− "description": "The group to delete. The format is `\"projects/{project_id_or_number}/groups/{group_id}\"`.",
1086− "required": true,
1087− "pattern": "^projects/[^/]*/groups/[^/]*$",
1088− "location": "path"
944+ "description": "Resource name. The format of the name may vary between different implementations. For examples:\nprojects/{project_id}/metricDescriptors/{type=**}\nmetricDescriptors/{type=**}\n",
945+ "type": "string"
946+ },
947+ "type": {
948+ "description": "The metric type including a DNS name prefix, for example &quot;compute.googleapis.com/instance/cpu/utilization&quot;. Metric types should use a natural hierarchical grouping such as the following:\ncompute.googleapis.com/instance/cpu/utilization\ncompute.googleapis.com/instance/disk/read_ops_count\ncompute.googleapis.com/instance/network/received_bytes_count\nNote that if the metric type changes, the monitoring data will be discontinued, and anything depends on it will break, such as monitoring dashboards, alerting rules and quota limits. Therefore, once a metric has been published, its type should be immutable.",
949+ "type": "string"
1089950 }
1090− },
1091− "parameterOrder": [
1092− "name"
1093− ],
1094− "response": {
1095− "$ref": "Empty"
1096− },
1097− "scopes": [
1098− "https://www.googleapis.com/auth/cloud-platform",
1099− "https://www.googleapis.com/auth/monitoring"
1100− ]
1101− }
1102− },
1103− "resources": {
1104− "members": {
1105− "methods": {
1106− "list": {
1107− "id": "monitoring.projects.groups.members.list",
1108− "path": "v3/{+name}/members",
1109− "httpMethod": "GET",
1110− "description": "Lists the monitored resources that are members of a group.",
1111− "parameters": {
1112− "name": {
1113− "type": "string",
1114− "description": "The group whose members are listed. The format is `\"projects/{project_id_or_number}/groups/{group_id}\"`.",
1115− "required": true,
1116− "pattern": "^projects/[^/]*/groups/[^/]*$",
1117− "location": "path"
1118− },
1119− "pageSize": {
1120− "type": "integer",
1121− "description": "A positive number that is the maximum number of results to return.",
1122− "format": "int32",
1123− "location": "query"
1124− },
1125− "pageToken": {
1126− "type": "string",
1127− "description": "If this field is not empty then it must contain the `nextPageToken` value returned by a previous call to this method. Using this field causes the method to return additional results from the previous method call.",
1128− "location": "query"
1129− },
1130− "filter": {
1131− "type": "string",
1132− "description": "An optional [list filter](/monitoring/api/learn_more#filtering) describing the members to be returned. The filter may reference the type, labels, and metadata of monitored resources that comprise the group. For example, to return only resources representing Compute Engine VM instances, use this filter: resource.type = \"gce_instance\"",
1133− "location": "query"
1134− },
1135− "interval.endTime": {
1136− "type": "string",
1137− "description": "Required. The end of the interval. The interval includes this time.",
1138− "location": "query"
951+ },
952+ "id": "MetricDescriptor"
953+ },
954+ "Exponential": {
955+ "description": "Specify a sequence of buckets that have a width that is proportional to the value of the lower bound. Each bucket represents a constant relative uncertainty on a specific value in the bucket.Defines num_finite_buckets + 2 (= N) buckets with these boundaries for bucket i:Upper bound (0 &lt;= i &lt; N-1): scale * (growth_factor ^ i). Lower bound (1 &lt;= i &lt; N): scale * (growth_factor ^ (i - 1)).",
956+ "type": "object",
957+ "properties": {
958+ "growthFactor": {
959+ "description": "Must be greater than 1.",
960+ "type": "number",
961+ "format": "double"
962+ },
963+ "scale": {
964+ "description": "Must be greater than 0.",
965+ "type": "number",
966+ "format": "double"
967+ },
968+ "numFiniteBuckets": {
969+ "description": "Must be greater than 0.",
970+ "type": "integer",
971+ "format": "int32"
972+ }
973+ },
974+ "id": "Exponential"
975+ },
976+ "Explicit": {
977+ "description": "A set of buckets with arbitrary widths.Defines size(bounds) + 1 (= N) buckets with these boundaries for bucket i:Upper bound (0 &lt;= i &lt; N-1): boundsi Lower bound (1 &lt;= i &lt; N); boundsi - 1There must be at least one element in bounds. If bounds has only one element, there are no finite buckets, and that single element is the common boundary of the overflow and underflow buckets.",
978+ "type": "object",
979+ "properties": {
980+ "bounds": {
981+ "description": "The values must be monotonically increasing.",
982+ "type": "array",
983+ "items": {
984+ "type": "number",
985+ "format": "double"
986+ }
987+ }
988+ },
989+ "id": "Explicit"
990+ },
991+ "Linear": {
992+ "description": "Specify a sequence of buckets that all have the same width (except overflow and underflow). Each bucket represents a constant absolute uncertainty on the specific value in the bucket.Defines num_finite_buckets + 2 (= N) buckets with these boundaries for bucket i:Upper bound (0 &lt;= i &lt; N-1): offset + (width * i). Lower bound (1 &lt;= i &lt; N): offset + (width * (i - 1)).",
993+ "type": "object",
994+ "properties": {
995+ "width": {
996+ "description": "Must be greater than 0.",
997+ "type": "number",
998+ "format": "double"
999+ },
1000+ "offset": {
1001+ "description": "Lower bound of the first bucket.",
1002+ "type": "number",
1003+ "format": "double"
1004+ },
1005+ "numFiniteBuckets": {
1006+ "description": "Must be greater than 0.",
1007+ "type": "integer",
1008+ "format": "int32"
1009+ }
1010+ },
1011+ "id": "Linear"
1012+ },
1013+ "CollectdPayload": {
1014+ "description": "A collection of data points sent from a collectd-based plugin. See the collectd documentation for more information.",
1015+ "type": "object",
1016+ "properties": {
1017+ "endTime": {
1018+ "description": "The end time of the interval.",
1019+ "type": "string",
1020+ "format": "google-datetime"
1021+ },
1022+ "metadata": {
1023+ "description": "The measurement metadata. Example: &quot;process_id&quot; -&gt; 12345",
1024+ "additionalProperties": {
1025+ "$ref": "TypedValue"
11391026 },
1140− "interval.startTime": {
1141− "type": "string",
1142− "description": "If this value is omitted, the interval is a point in time, `endTime`. If `startTime` is present, it must be earlier than (less than) `endTime`. The interval begins after `startTime`—it does not include `startTime`.",
1143− "location": "query"
1027+ "type": "object"
1028+ },
1029+ "values": {
1030+ "description": "The measured values during this time interval. Each value must have a different dataSourceName.",
1031+ "type": "array",
1032+ "items": {
1033+ "$ref": "CollectdValue"
11441034 }
1145− },
1146− "parameterOrder": [
1147− "name"
1148− ],
1149− "response": {
1150− "$ref": "ListGroupMembersResponse"
1151− },
1152− "scopes": [
1153− "https://www.googleapis.com/auth/cloud-platform",
1154− "https://www.googleapis.com/auth/monitoring",
1155− "https://www.googleapis.com/auth/monitoring.read"
1156− ]
1035+ },
1036+ "pluginInstance": {
1037+ "description": "The instance name of the plugin Example: &quot;hdcl&quot;.",
1038+ "type": "string"
1039+ },
1040+ "startTime": {
1041+ "description": "The start time of the interval.",
1042+ "type": "string",
1043+ "format": "google-datetime"
1044+ },
1045+ "typeInstance": {
1046+ "description": "The measurement type instance. Example: &quot;used&quot;.",
1047+ "type": "string"
1048+ },
1049+ "type": {
1050+ "description": "The measurement type. Example: &quot;memory&quot;.",
1051+ "type": "string"
1052+ },
1053+ "plugin": {
1054+ "description": "The name of the plugin. Example: &quot;disk&quot;.",
1055+ "type": "string"
11571056 }
1158− }
1159− }
1160− }
1161− },
1162− "monitoredResourceDescriptors": {
1163− "methods": {
1164− "list": {
1165− "id": "monitoring.projects.monitoredResourceDescriptors.list",
1166− "path": "v3/{+name}/monitoredResourceDescriptors",
1167− "httpMethod": "GET",
1168− "description": "Lists monitored resource descriptors that match a filter. This method does not require a Stackdriver account.",
1169− "parameters": {
1170− "name": {
1171− "type": "string",
1172− "description": "The project on which to execute the request. The format is `\"projects/{project_id_or_number}\"`.",
1173− "required": true,
1174− "pattern": "^projects/[^/]*$",
1175− "location": "path"
1057+ },
1058+ "id": "CollectdPayload"
1059+ },
1060+ "ListMetricDescriptorsResponse": {
1061+ "description": "The ListMetricDescriptors response.",
1062+ "type": "object",
1063+ "properties": {
1064+ "metricDescriptors": {
1065+ "description": "The metric descriptors that are available to the project and that match the value of filter, if present.",
1066+ "type": "array",
1067+ "items": {
1068+ "$ref": "MetricDescriptor"
1069+ }
11761070 },
1177− "filter": {
1178− "type": "string",
1179− "description": "An optional [filter](/monitoring/api/v3/filters) describing the descriptors to be returned. The filter can reference the descriptor's type and labels. For example, the following filter returns only Google Compute Engine descriptors that have an `id` label: resource.type = starts_with(\"gce_\") AND resource.label:id",
1180− "location": "query"
1181− },
1182− "pageSize": {
1183− "type": "integer",
1184− "description": "A positive number that is the maximum number of results to return.",
1185− "format": "int32",
1186− "location": "query"
1187− },
1188− "pageToken": {
1189− "type": "string",
1190− "description": "If this field is not empty then it must contain the `nextPageToken` value returned by a previous call to this method. Using this field causes the method to return additional results from the previous method call.",
1191− "location": "query"
1071+ "nextPageToken": {
1072+ "description": "If there are more results than have been returned, then this field is set to a non-empty value. To see the additional results, use that value as pageToken in the next call to this method.",
1073+ "type": "string"
11921074 }
1193− },
1194− "parameterOrder": [
1195− "name"
1196− ],
1197− "response": {
1198− "$ref": "ListMonitoredResourceDescriptorsResponse"
1199− },
1200− "scopes": [
1201− "https://www.googleapis.com/auth/cloud-platform",
1202− "https://www.googleapis.com/auth/monitoring",
1203− "https://www.googleapis.com/auth/monitoring.read",
1204− "https://www.googleapis.com/auth/monitoring.write"
1205− ]
12061075 },
1207− "get": {
1208− "id": "monitoring.projects.monitoredResourceDescriptors.get",
1209− "path": "v3/{+name}",
1210− "httpMethod": "GET",
1211− "description": "Gets a single monitored resource descriptor. This method does not require a Stackdriver account.",
1212− "parameters": {
1213− "name": {
1214− "type": "string",
1215− "description": "The monitored resource descriptor to get. The format is `\"projects/{project_id_or_number}/monitoredResourceDescriptors/{resource_type}\"`. The `{resource_type}` is a predefined type, such as `cloudsql_database`.",
1216− "required": true,
1217− "pattern": "^projects/[^/]*/monitoredResourceDescriptors/[^/]*$",
1218− "location": "path"
1076+ "id": "ListMetricDescriptorsResponse"
1077+ },
1078+ "Distribution": {
1079+ "description": "Distribution contains summary statistics for a population of values and, optionally, a histogram representing the distribution of those values across a specified set of histogram buckets.The summary statistics are the count, mean, sum of the squared deviation from the mean, the minimum, and the maximum of the set of population of values.The histogram is based on a sequence of buckets and gives a count of values that fall into each bucket. The boundaries of the buckets are given either explicitly or by specifying parameters for a method of computing them (buckets of fixed width or buckets of exponentially increasing width).Although it is not forbidden, it is generally a bad idea to include non-finite values (infinities or NaNs) in the population of values, as this will render the mean and sum_of_squared_deviation fields meaningless.",
1080+ "type": "object",
1081+ "properties": {
1082+ "bucketCounts": {
1083+ "description": "If bucket_options is given, then the sum of the values in bucket_counts must equal the value in count. If bucket_options is not given, no bucket_counts fields may be given.Bucket counts are given in order under the numbering scheme described above (the underflow bucket has number 0; the finite buckets, if any, have numbers 1 through N-2; the overflow bucket has number N-1).The size of bucket_counts must be no greater than N as defined in bucket_options.Any suffix of trailing zero bucket_count fields may be omitted.",
1084+ "type": "array",
1085+ "items": {
1086+ "type": "string",
1087+ "format": "int64"
1088+ }
1089+ },
1090+ "bucketOptions": {
1091+ "description": "Defines the histogram bucket boundaries.",
1092+ "$ref": "BucketOptions"
1093+ },
1094+ "count": {
1095+ "description": "The number of values in the population. Must be non-negative.",
1096+ "type": "string",
1097+ "format": "int64"
1098+ },
1099+ "sumOfSquaredDeviation": {
1100+ "description": "The sum of squared deviations from the mean of the values in the population. For values x_i this is:\nSum[i=1..n]((x_i - mean)^2)\nKnuth, \"The Art of Computer Programming\", Vol. 2, page 323, 3rd edition describes Welford's method for accumulating this sum in one pass.If count is zero then this field must be zero.",
1101+ "type": "number",
1102+ "format": "double"
1103+ },
1104+ "mean": {
1105+ "description": "The arithmetic mean of the values in the population. If count is zero then this field must be zero.",
1106+ "type": "number",
1107+ "format": "double"
1108+ },
1109+ "range": {
1110+ "description": "If specified, contains the range of the population values. The field must not be present if the count is zero. This field is presently ignored by the Stackdriver Monitoring API v3.",
1111+ "$ref": "Range"
12191112 }
1220− },
1221− "parameterOrder": [
1222− "name"
1223− ],
1224− "response": {
1225− "$ref": "MonitoredResourceDescriptor"
1226− },
1227− "scopes": [
1228− "https://www.googleapis.com/auth/cloud-platform",
1229− "https://www.googleapis.com/auth/monitoring",
1230− "https://www.googleapis.com/auth/monitoring.read",
1231− "https://www.googleapis.com/auth/monitoring.write"
1232− ]
1233− }
1234− }
1235− },
1236− "metricDescriptors": {
1237− "methods": {
1238− "list": {
1239− "id": "monitoring.projects.metricDescriptors.list",
1240− "path": "v3/{+name}/metricDescriptors",
1241− "httpMethod": "GET",
1242− "description": "Lists metric descriptors that match a filter. This method does not require a Stackdriver account.",
1243− "parameters": {
1244− "name": {
1245− "type": "string",
1246− "description": "The project on which to execute the request. The format is `\"projects/{project_id_or_number}\"`.",
1247− "required": true,
1248− "pattern": "^projects/[^/]*$",
1249− "location": "path"
1113+ },
1114+ "id": "Distribution"
1115+ },
1116+ "MonitoredResource": {
1117+ "description": "An object representing a resource that can be used for monitoring, logging, billing, or other purposes. Examples include virtual machine instances, databases, and storage devices such as disks. The type field identifies a MonitoredResourceDescriptor object that describes the resource's schema. Information in the labels field identifies the actual resource and its attributes according to the schema. For example, a particular Compute Engine VM instance could be represented by the following object, because the MonitoredResourceDescriptor for &quot;gce_instance&quot; has labels &quot;instance_id&quot; and &quot;zone&quot;:\n{ &quot;type&quot;: &quot;gce_instance&quot;,\n &quot;labels&quot;: { &quot;instance_id&quot;: &quot;12345678901234&quot;,\n &quot;zone&quot;: &quot;us-central1-a&quot; }}\n",
1118+ "type": "object",
1119+ "properties": {
1120+ "labels": {
1121+ "description": "Required. Values for all of the labels listed in the associated monitored resource descriptor. For example, Cloud SQL databases use the labels &quot;database_id&quot; and &quot;zone&quot;.",
1122+ "additionalProperties": {
1123+ "type": "string"
1124+ },
1125+ "type": "object"
12501126 },
1251− "filter": {
1252− "type": "string",
1253− "description": "If this field is empty, all custom and system-defined metric descriptors are returned. Otherwise, the [filter](/monitoring/api/v3/filters) specifies which metric descriptors are to be returned. For example, the following filter matches all [custom metrics](/monitoring/custom-metrics): metric.type = starts_with(\"custom.googleapis.com/\")",
1254− "location": "query"
1255− },
1256− "pageSize": {
1257− "type": "integer",
1258− "description": "A positive number that is the maximum number of results to return.",
1259− "format": "int32",
1260− "location": "query"
1261− },
1262− "pageToken": {
1263− "type": "string",
1264− "description": "If this field is not empty then it must contain the `nextPageToken` value returned by a previous call to this method. Using this field causes the method to return additional results from the previous method call.",
1265− "location": "query"
1127+ "type": {
1128+ "description": "Required. The monitored resource type. This field must match the type field of a MonitoredResourceDescriptor object. For example, the type of a Cloud SQL database is &quot;cloudsql_database&quot;.",
1129+ "type": "string"
12661130 }
1267− },
1268− "parameterOrder": [
1269− "name"
1270− ],
1271− "response": {
1272− "$ref": "ListMetricDescriptorsResponse"
1273− },
1274− "scopes": [
1275− "https://www.googleapis.com/auth/cloud-platform",
1276− "https://www.googleapis.com/auth/monitoring",
1277− "https://www.googleapis.com/auth/monitoring.read",
1278− "https://www.googleapis.com/auth/monitoring.write"
1279− ]
12801131 },
1281− "get": {
1282− "id": "monitoring.projects.metricDescriptors.get",
1283− "path": "v3/{+name}",
1284− "httpMethod": "GET",
1285− "description": "Gets a single metric descriptor. This method does not require a Stackdriver account.",
1286− "parameters": {
1287− "name": {
1288− "type": "string",
1289− "description": "The metric descriptor on which to execute the request. The format is `\"projects/{project_id_or_number}/metricDescriptors/{metric_id}\"`. An example value of `{metric_id}` is `\"compute.googleapis.com/instance/disk/read_bytes_count\"`.",
1290− "required": true,
1291− "pattern": "^projects/[^/]*/metricDescriptors/.*$",
1292− "location": "path"
1132+ "id": "MonitoredResource"
1133+ },
1134+ "LabelDescriptor": {
1135+ "description": "A description of a label.",
1136+ "type": "object",
1137+ "properties": {
1138+ "description": {
1139+ "description": "A human-readable description for the label.",
1140+ "type": "string"
1141+ },
1142+ "valueType": {
1143+ "description": "The type of data that can be assigned to the label.",
1144+ "enum": [
1145+ "STRING",
1146+ "BOOL",
1147+ "INT64"
1148+ ],
1149+ "enumDescriptions": [
1150+ "A variable-length string. This is the default.",
1151+ "Boolean; true or false.",
1152+ "A 64-bit signed integer."
1153+ ],
1154+ "type": "string"
1155+ },
1156+ "key": {
1157+ "description": "The label key.",
1158+ "type": "string"
12931159 }
1294− },
1295− "parameterOrder": [
1296− "name"
1297− ],
1298− "response": {
1299− "$ref": "MetricDescriptor"
1300− },
1301− "scopes": [
1302− "https://www.googleapis.com/auth/cloud-platform",
1303− "https://www.googleapis.com/auth/monitoring",
1304− "https://www.googleapis.com/auth/monitoring.read",
1305− "https://www.googleapis.com/auth/monitoring.write"
1306− ]
13071160 },
1308− "create": {
1309− "id": "monitoring.projects.metricDescriptors.create",
1310− "path": "v3/{+name}/metricDescriptors",
1311− "httpMethod": "POST",
1312− "description": "Creates a new metric descriptor. User-created metric descriptors define [custom metrics](/monitoring/custom-metrics).",
1313− "parameters": {
1161+ "id": "LabelDescriptor"
1162+ },
1163+ "MonitoredResourceDescriptor": {
1164+ "description": "An object that describes the schema of a MonitoredResource object using a type name and a set of labels. For example, the monitored resource descriptor for Google Compute Engine VM instances has a type of &quot;gce_instance&quot; and specifies the use of the labels &quot;instance_id&quot; and &quot;zone&quot; to identify particular VM instances.Different APIs can support different monitored resource types. APIs generally provide a list method that returns the monitored resource descriptors used by the API.",
1165+ "type": "object",
1166+ "properties": {
1167+ "displayName": {
1168+ "description": "Optional. A concise name for the monitored resource type that might be displayed in user interfaces. It should be a Title Cased Noun Phrase, without any article or other determiners. For example, &quot;Google Cloud SQL Database&quot;.",
1169+ "type": "string"
1170+ },
1171+ "description": {
1172+ "description": "Optional. A detailed description of the monitored resource type that might be used in documentation.",
1173+ "type": "string"
1174+ },
1175+ "labels": {
1176+ "description": "Required. A set of labels used to describe instances of this monitored resource type. For example, an individual Google Cloud SQL database is identified by values for the labels &quot;database_id&quot; and &quot;zone&quot;.",
1177+ "type": "array",
1178+ "items": {
1179+ "$ref": "LabelDescriptor"
1180+ }
1181+ },
1182+ "type": {
1183+ "description": "Required. The monitored resource type. For example, the type &quot;cloudsql_database&quot; represents databases in Google Cloud SQL. The maximum length of this value is 256 characters.",
1184+ "type": "string"
1185+ },
13141186 "name": {
1315− "type": "string",
1316− "description": "The project on which to execute the request. The format is `\"projects/{project_id_or_number}\"`.",
1317− "required": true,
1318− "pattern": "^projects/[^/]*$",
1319− "location": "path"
1187+ "description": "Optional. The resource name of the monitored resource descriptor: &quot;projects/{project_id}/monitoredResourceDescriptors/{type}&quot; where {type} is the value of the type field in this object and {project_id} is a project ID that provides API-specific context for accessing the type. APIs that do not use project information can use the resource name format &quot;monitoredResourceDescriptors/{type}&quot;.",
1188+ "type": "string"
1189+ }
1190+ },
1191+ "id": "MonitoredResourceDescriptor"
1192+ },
1193+ "TypedValue": {
1194+ "description": "A single strongly-typed value.",
1195+ "type": "object",
1196+ "properties": {
1197+ "boolValue": {
1198+ "description": "A Boolean value: true or false.",
1199+ "type": "boolean"
1200+ },
1201+ "stringValue": {
1202+ "description": "A variable-length string value.",
1203+ "type": "string"
1204+ },
1205+ "int64Value": {
1206+ "description": "A 64-bit integer. Its range is approximately &plusmn;9.2x10\u003csup\u003e18\u003c/sup\u003e.",
1207+ "type": "string",
1208+ "format": "int64"
1209+ },
1210+ "doubleValue": {
1211+ "description": "A 64-bit double-precision floating-point number. Its magnitude is approximately &plusmn;10\u003csup\u003e&plusmn;300\u003c/sup\u003e and it has 16 significant digits of precision.",
1212+ "type": "number",
1213+ "format": "double"
1214+ },
1215+ "distributionValue": {
1216+ "description": "A distribution value.",
1217+ "$ref": "Distribution"
1218+ }
1219+ },
1220+ "id": "TypedValue"
1221+ },
1222+ "ListMonitoredResourceDescriptorsResponse": {
1223+ "description": "The ListMonitoredResourcDescriptors response.",
1224+ "type": "object",
1225+ "properties": {
1226+ "nextPageToken": {
1227+ "description": "If there are more results than have been returned, then this field is set to a non-empty value. To see the additional results, use that value as pageToken in the next call to this method.",
1228+ "type": "string"
1229+ },
1230+ "resourceDescriptors": {
1231+ "description": "The monitored resource descriptors that are available to this project and that match filter, if present.",
1232+ "type": "array",
1233+ "items": {
1234+ "$ref": "MonitoredResourceDescriptor"
1235+ }
13201236 }
1321− },
1322− "parameterOrder": [
1323− "name"
1324− ],
1325− "request": {
1326− "$ref": "MetricDescriptor"
1327− },
1328− "response": {
1329− "$ref": "MetricDescriptor"
1330− },
1331− "scopes": [
1332− "https://www.googleapis.com/auth/cloud-platform",
1333− "https://www.googleapis.com/auth/monitoring",
1334− "https://www.googleapis.com/auth/monitoring.write"
1335− ]
13361237 },
1337− "delete": {
1338− "id": "monitoring.projects.metricDescriptors.delete",
1339− "path": "v3/{+name}",
1340− "httpMethod": "DELETE",
1341− "description": "Deletes a metric descriptor. Only user-created [custom metrics](/monitoring/custom-metrics) can be deleted.",
1342− "parameters": {
1238+ "id": "ListMonitoredResourceDescriptorsResponse"
1239+ },
1240+ "Field": {
1241+ "description": "A single field of a message type.",
1242+ "type": "object",
1243+ "properties": {
1244+ "defaultValue": {
1245+ "description": "The string value of the default value of this field. Proto2 syntax only.",
1246+ "type": "string"
1247+ },
1248+ "jsonName": {
1249+ "description": "The field JSON name.",
1250+ "type": "string"
1251+ },
1252+ "options": {
1253+ "description": "The protocol buffer options.",
1254+ "type": "array",
1255+ "items": {
1256+ "$ref": "Option"
1257+ }
1258+ },
1259+ "oneofIndex": {
1260+ "description": "The index of the field type in Type.oneofs, for message or enumeration types. The first type has index 1; zero means the type is not in the list.",
1261+ "type": "integer",
1262+ "format": "int32"
1263+ },
1264+ "cardinality": {
1265+ "description": "The field cardinality.",
1266+ "enum": [
1267+ "CARDINALITY_UNKNOWN",
1268+ "CARDINALITY_OPTIONAL",
1269+ "CARDINALITY_REQUIRED",
1270+ "CARDINALITY_REPEATED"
1271+ ],
1272+ "enumDescriptions": [
1273+ "For fields with unknown cardinality.",
1274+ "For optional fields.",
1275+ "For required fields. Proto2 syntax only.",
1276+ "For repeated fields."
1277+ ],
1278+ "type": "string"
1279+ },
1280+ "typeUrl": {
1281+ "description": "The field type URL, without the scheme, for message or enumeration types. Example: &quot;type.googleapis.com/google.protobuf.Timestamp&quot;.",
1282+ "type": "string"
1283+ },
13431284 "name": {
1344− "type": "string",
1345− "description": "The metric descriptor on which to execute the request. The format is `\"projects/{project_id_or_number}/metricDescriptors/{metric_id}\"`. An example of `{metric_id}` is: `\"custom.googleapis.com/my_test_metric\"`.",
1346− "required": true,
1347− "pattern": "^projects/[^/]*/metricDescriptors/.*$",
1348− "location": "path"
1285+ "description": "The field name.",
1286+ "type": "string"
1287+ },
1288+ "packed": {
1289+ "description": "Whether to use alternative packed wire representation.",
1290+ "type": "boolean"
1291+ },
1292+ "number": {
1293+ "description": "The field number.",
1294+ "type": "integer",
1295+ "format": "int32"
1296+ },
1297+ "kind": {
1298+ "description": "The field type.",
1299+ "enum": [
1300+ "TYPE_UNKNOWN",
1301+ "TYPE_DOUBLE",
1302+ "TYPE_FLOAT",
1303+ "TYPE_INT64",
1304+ "TYPE_UINT64",
1305+ "TYPE_INT32",
1306+ "TYPE_FIXED64",
1307+ "TYPE_FIXED32",
1308+ "TYPE_BOOL",
1309+ "TYPE_STRING",
1310+ "TYPE_GROUP",
1311+ "TYPE_MESSAGE",
1312+ "TYPE_BYTES",
1313+ "TYPE_UINT32",
1314+ "TYPE_ENUM",
1315+ "TYPE_SFIXED32",
1316+ "TYPE_SFIXED64",
1317+ "TYPE_SINT32",
1318+ "TYPE_SINT64"
1319+ ],
1320+ "enumDescriptions": [
1321+ "Field type unknown.",
1322+ "Field type double.",
1323+ "Field type float.",
1324+ "Field type int64.",
1325+ "Field type uint64.",
1326+ "Field type int32.",
1327+ "Field type fixed64.",
1328+ "Field type fixed32.",
1329+ "Field type bool.",
1330+ "Field type string.",
1331+ "Field type group. Proto2 syntax only, and deprecated.",
1332+ "Field type message.",
1333+ "Field type bytes.",
1334+ "Field type uint32.",
1335+ "Field type enum.",
1336+ "Field type sfixed32.",
1337+ "Field type sfixed64.",
1338+ "Field type sint32.",
1339+ "Field type sint64."
1340+ ],
1341+ "type": "string"
13491342 }
1350− },
1351− "parameterOrder": [
1352− "name"
1353− ],
1354− "response": {
1355− "$ref": "Empty"
1356− },
1357− "scopes": [
1358− "https://www.googleapis.com/auth/cloud-platform",
1359− "https://www.googleapis.com/auth/monitoring"
1360− ]
1361− }
1362− }
1363− },
1364− "timeSeries": {
1365− "methods": {
1366− "list": {
1367− "id": "monitoring.projects.timeSeries.list",
1368− "path": "v3/{+name}/timeSeries",
1369− "httpMethod": "GET",
1370− "description": "Lists time series that match a filter. This method does not require a Stackdriver account.",
1371− "parameters": {
1343+ },
1344+ "id": "Field"
1345+ },
1346+ "Option": {
1347+ "description": "A protocol buffer option, which can be attached to a message, field, enumeration, etc.",
1348+ "type": "object",
1349+ "properties": {
1350+ "value": {
1351+ "description": "The option's value. For example, &quot;com.google.protobuf&quot;.",
1352+ "additionalProperties": {
1353+ "description": "Properties of the object. Contains field @type with type URL.",
1354+ "type": "any"
1355+ },
1356+ "type": "object"
1357+ },
13721358 "name": {
1373− "type": "string",
1374− "description": "The project on which to execute the request. The format is \"projects/{project_id_or_number}\".",
1375− "required": true,
1376− "pattern": "^projects/[^/]*$",
1377− "location": "path"
1359+ "description": "The option's name. For example, &quot;java_package&quot;.",
1360+ "type": "string"
1361+ }
1362+ },
1363+ "id": "Option"
1364+ },
1365+ "Empty": {
1366+ "description": "A generic empty message that you can re-use to avoid defining duplicated empty messages in your APIs. A typical example is to use it as the request or the response type of an API method. For instance:\nservice Foo {\n rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty);\n}\nThe JSON representation for Empty is empty JSON object {}.",
1367+ "type": "object",
1368+ "properties": {},
1369+ "id": "Empty"
1370+ },
1371+ "SourceContext": {
1372+ "description": "SourceContext represents information about the source of a protobuf element, like the file in which it is defined.",
1373+ "type": "object",
1374+ "properties": {
1375+ "fileName": {
1376+ "description": "The path-qualified name of the .proto file that contained the associated protobuf element. For example: &quot;google/protobuf/source_context.proto&quot;.",
1377+ "type": "string"
1378+ }
1379+ },
1380+ "id": "SourceContext"
1381+ },
1382+ "Range": {
1383+ "description": "The range of the population values.",
1384+ "type": "object",
1385+ "properties": {
1386+ "max": {
1387+ "description": "The maximum of the population values.",
1388+ "type": "number",
1389+ "format": "double"
13781390 },
1379− "filter": {
1380− "type": "string",
1381− "description": "A [monitoring filter](/monitoring/api/v3/filters) that specifies which time series should be returned. The filter must specify a single metric type, and can additionally specify metric labels and other information. For example: metric.type = \"compute.googleapis.com/instance/cpu/usage_time\" AND metric.label.instance_name = \"my-instance-name\"",
1382− "location": "query"
1383− },
1384− "interval.endTime": {
1385− "type": "string",
1386− "description": "Required. The end of the interval. The interval includes this time.",
1387− "location": "query"
1388− },
1389− "interval.startTime": {
1390− "type": "string",
1391− "description": "If this value is omitted, the interval is a point in time, `endTime`. If `startTime` is present, it must be earlier than (less than) `endTime`. The interval begins after `startTime`—it does not include `startTime`.",
1392− "location": "query"
1393− },
1394− "aggregation.alignmentPeriod": {
1395− "type": "string",
1396− "description": "The alignment period for per-[time series](TimeSeries) alignment. If present, `alignmentPeriod` must be at least 60 seconds. After per-time series alignment, each time series will contain data points only on the period boundaries. If `perSeriesAligner` is not specified or equals `ALIGN_NONE`, then this field is ignored. If `perSeriesAligner` is specified and does not equal `ALIGN_NONE`, then this field must be defined; otherwise an error is returned.",
1397− "location": "query"
1398− },
1399− "aggregation.perSeriesAligner": {
1400− "type": "string",
1401− "description": "The approach to be used to align individual time series. Not all alignment functions may be applied to all time series, depending on the metric type and value type of the original time series. Alignment may change the metric type or the value type of the time series. Time series data must be aligned in order to perform cross-time series reduction. If `crossSeriesReducer` is specified, then `perSeriesAligner` must be specified and not equal `ALIGN_NONE` and `alignmentPeriod` must be specified; otherwise, an error is returned.",
1402− "enum": [
1403− "ALIGN_NONE",
1404− "ALIGN_DELTA",
1405− "ALIGN_RATE",
1406− "ALIGN_INTERPOLATE",
1407− "ALIGN_NEXT_OLDER",
1408− "ALIGN_MIN",
1409− "ALIGN_MAX",
1410− "ALIGN_MEAN",
1411− "ALIGN_COUNT",
1412− "ALIGN_SUM",
1413− "ALIGN_STDDEV",
1414− "ALIGN_COUNT_TRUE",
1415− "ALIGN_FRACTION_TRUE"
1416− ],
1417− "location": "query"
1418− },
1419− "aggregation.crossSeriesReducer": {
1420− "type": "string",
1421− "description": "The approach to be used to combine time series. Not all reducer functions may be applied to all time series, depending on the metric type and the value type of the original time series. Reduction may change the metric type of value type of the time series. Time series data must be aligned in order to perform cross-time series reduction. If `crossSeriesReducer` is specified, then `perSeriesAligner` must be specified and not equal `ALIGN_NONE` and `alignmentPeriod` must be specified; otherwise, an error is returned.",
1422− "enum": [
1423− "REDUCE_NONE",
1424− "REDUCE_MEAN",
1425− "REDUCE_MIN",
1426− "REDUCE_MAX",
1427− "REDUCE_SUM",
1428− "REDUCE_STDDEV",
1429− "REDUCE_COUNT",
1430− "REDUCE_COUNT_TRUE",
1431− "REDUCE_FRACTION_TRUE",
1432− "REDUCE_PERCENTILE_99",
1433− "REDUCE_PERCENTILE_95",
1434− "REDUCE_PERCENTILE_50",
1435− "REDUCE_PERCENTILE_05"
1436− ],
1437− "location": "query"
1438− },
1439− "aggregation.groupByFields": {
1440− "type": "string",
1441− "description": "The set of fields to preserve when `crossSeriesReducer` is specified. The `groupByFields` determine how the time series are partitioned into subsets prior to applying the aggregation function. Each subset contains time series that have the same value for each of the grouping fields. Each individual time series is a member of exactly one subset. The `crossSeriesReducer` is applied to each subset of time series. Fields not specified in `groupByFields` are aggregated away. If `groupByFields` is not specified, the time series are aggregated into a single output time series. If `crossSeriesReducer` is not defined, this field is ignored.",
1442− "repeated": true,
1443− "location": "query"
1444− },
1445− "orderBy": {
1446− "type": "string",
1447− "description": "Specifies the order in which the points of the time series should be returned. By default, results are not ordered. Currently, this field must be left blank.",
1448− "location": "query"
1449− },
1450− "view": {
1451− "type": "string",
1452− "description": "Specifies which information is returned about the time series.",
1453− "enum": [
1454− "FULL",
1455− "HEADERS"
1456− ],
1457− "location": "query"
1458− },
1459− "pageSize": {
1460− "type": "integer",
1461− "description": "A positive number that is the maximum number of results to return. When `view` field sets to `FULL`, it limits the number of `Points` server will return; if `view` field is `HEADERS`, it limits the number of `TimeSeries` server will return.",
1462− "format": "int32",
1463− "location": "query"
1464− },
1465− "pageToken": {
1466− "type": "string",
1467− "description": "If this field is not empty then it must contain the `nextPageToken` value returned by a previous call to this method. Using this field causes the method to return additional results from the previous method call.",
1468− "location": "query"
1391+ "min": {
1392+ "description": "The minimum of the population values.",
1393+ "type": "number",
1394+ "format": "double"
1395+ }
1396+ },
1397+ "id": "Range"
1398+ },
1399+ "CreateTimeSeriesRequest": {
1400+ "description": "The CreateTimeSeries request.",
1401+ "type": "object",
1402+ "properties": {
1403+ "timeSeries": {
1404+ "description": "The new data to be added to a list of time series. Adds at most one data point to each of several time series. The new data point must be more recent than any other point in its time series. Each TimeSeries value must fully specify a unique time series by supplying all label values for the metric and the monitored resource.",
1405+ "type": "array",
1406+ "items": {
1407+ "$ref": "TimeSeries"
1408+ }
1409+ }
1410+ },
1411+ "id": "CreateTimeSeriesRequest"
1412+ },
1413+ "BucketOptions": {
1414+ "description": "A Distribution may optionally contain a histogram of the values in the population. The histogram is given in bucket_counts as counts of values that fall into one of a sequence of non-overlapping buckets. The sequence of buckets is described by bucket_options.A bucket specifies an inclusive lower bound and exclusive upper bound for the values that are counted for that bucket. The upper bound of a bucket is strictly greater than the lower bound.The sequence of N buckets for a Distribution consists of an underflow bucket (number 0), zero or more finite buckets (number 1 through N - 2) and an overflow bucket (number N - 1). The buckets are contiguous: the lower bound of bucket i (i &gt; 0) is the same as the upper bound of bucket i - 1. The buckets span the whole range of finite values: lower bound of the underflow bucket is -infinity and the upper bound of the overflow bucket is +infinity. The finite buckets are so-called because both bounds are finite.BucketOptions describes bucket boundaries in one of three ways. Two describe the boundaries by giving parameters for a formula to generate boundaries and one gives the bucket boundaries explicitly.If bucket_options is not given, then no bucket_counts may be given.",
1415+ "type": "object",
1416+ "properties": {
1417+ "explicitBuckets": {
1418+ "description": "The explicit buckets.",
1419+ "$ref": "Explicit"
1420+ },
1421+ "exponentialBuckets": {
1422+ "description": "The exponential buckets.",
1423+ "$ref": "Exponential"
1424+ },
1425+ "linearBuckets": {
1426+ "description": "The linear bucket.",
1427+ "$ref": "Linear"
1428+ }
1429+ },
1430+ "id": "BucketOptions"
1431+ },
1432+ "CreateCollectdTimeSeriesRequest": {
1433+ "description": "The CreateCollectdTimeSeries request.",
1434+ "type": "object",
1435+ "properties": {
1436+ "collectdPayloads": {
1437+ "description": "The collectd payloads representing the time series data. You must not include more than a single point for each time series, so no two payloads can have the same values for all of the fields plugin, plugin_instance, type, and type_instance.",
1438+ "type": "array",
1439+ "items": {
1440+ "$ref": "CollectdPayload"
1441+ }
1442+ },
1443+ "collectdVersion": {
1444+ "description": "The version of collectd that collected the data. Example: &quot;5.3.0-192.el6&quot;.",
1445+ "type": "string"
1446+ },
1447+ "resource": {
1448+ "description": "The monitored resource associated with the time series.",
1449+ "$ref": "MonitoredResource"
14691450 }
1470− },
1471− "parameterOrder": [
1472− "name"
1473− ],
1474− "response": {
1475− "$ref": "ListTimeSeriesResponse"
1476− },
1477− "scopes": [
1478− "https://www.googleapis.com/auth/cloud-platform",
1479− "https://www.googleapis.com/auth/monitoring",
1480− "https://www.googleapis.com/auth/monitoring.read"
1481− ]
14821451 },
1483− "create": {
1484− "id": "monitoring.projects.timeSeries.create",
1485− "path": "v3/{+name}/timeSeries",
1486− "httpMethod": "POST",
1487− "description": "Creates or adds data to one or more time series. The response is empty if all time series in the request were written. If any time series could not be written, a corresponding failure message is included in the error response.",
1488− "parameters": {
1452+ "id": "CreateCollectdTimeSeriesRequest"
1453+ },
1454+ "Type": {
1455+ "description": "A protocol buffer message type.",
1456+ "type": "object",
1457+ "properties": {
1458+ "oneofs": {
1459+ "description": "The list of types appearing in oneof definitions in this type.",
1460+ "type": "array",
1461+ "items": {
1462+ "type": "string"
1463+ }
1464+ },
1465+ "options": {
1466+ "description": "The protocol buffer options.",
1467+ "type": "array",
1468+ "items": {
1469+ "$ref": "Option"
1470+ }
1471+ },
1472+ "sourceContext": {
1473+ "description": "The source context.",
1474+ "$ref": "SourceContext"
1475+ },
1476+ "fields": {
1477+ "description": "The list of fields.",
1478+ "type": "array",
1479+ "items": {
1480+ "$ref": "Field"
1481+ }
1482+ },
14891483 "name": {
1490− "type": "string",
1491− "description": "The project on which to execute the request. The format is `\"projects/{project_id_or_number}\"`.",
1492− "required": true,
1493− "pattern": "^projects/[^/]*$",
1494− "location": "path"
1484+ "description": "The fully qualified message name.",
1485+ "type": "string"
1486+ },
1487+ "syntax": {
1488+ "description": "The source syntax.",
1489+ "enum": [
1490+ "SYNTAX_PROTO2",
1491+ "SYNTAX_PROTO3"
1492+ ],
1493+ "enumDescriptions": [
1494+ "Syntax proto2.",
1495+ "Syntax proto3."
1496+ ],
1497+ "type": "string"
14951498 }
1496− },
1497− "parameterOrder": [
1498− "name"
1499− ],
1500− "request": {
1501− "$ref": "CreateTimeSeriesRequest"
1502− },
1503− "response": {
1504− "$ref": "Empty"
1505− },
1506− "scopes": [
1507− "https://www.googleapis.com/auth/cloud-platform",
1508− "https://www.googleapis.com/auth/monitoring",
1509− "https://www.googleapis.com/auth/monitoring.write"
1510− ]
1511− }
1512− }
1499+ },
1500+ "id": "Type"
1501+ },
1502+ "ListGroupsResponse": {
1503+ "description": "The ListGroups response.",
1504+ "type": "object",
1505+ "properties": {
1506+ "group": {
1507+ "description": "The groups that match the specified filters.",
1508+ "type": "array",
1509+ "items": {
1510+ "$ref": "Group"
1511+ }
1512+ },
1513+ "nextPageToken": {
1514+ "description": "If there are more results than have been returned, then this field is set to a non-empty value. To see the additional results, use that value as pageToken in the next call to this method.",
1515+ "type": "string"
1516+ }
1517+ },
1518+ "id": "ListGroupsResponse"
1519+ }
1520+ },
1521+ "revision": "20161020",
1522+ "basePath": "",
1523+ "icons": {
1524+ "x32": "http://www.google.com/images/icons/product/search-32.gif",
1525+ "x16": "http://www.google.com/images/icons/product/search-16.gif"
1526+ },
1527+ "version_module": "True",
1528+ "canonicalName": "Monitoring",
1529+ "discoveryVersion": "v1",
1530+ "baseUrl": "https://monitoring.googleapis.com/",
1531+ "name": "monitoring",
1532+ "parameters": {
1533+ "access_token": {
1534+ "description": "OAuth access token.",
1535+ "type": "string",
1536+ "location": "query"
1537+ },
1538+ "prettyPrint": {
1539+ "description": "Returns response with indentations and line breaks.",
1540+ "default": "true",
1541+ "type": "boolean",
1542+ "location": "query"
1543+ },
1544+ "key": {
1545+ "description": "API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token.",
1546+ "type": "string",
1547+ "location": "query"
1548+ },
1549+ "quotaUser": {
1550+ "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.",
1551+ "type": "string",
1552+ "location": "query"
1553+ },
1554+ "pp": {
1555+ "description": "Pretty-print response.",
1556+ "default": "true",
1557+ "type": "boolean",
1558+ "location": "query"
1559+ },
1560+ "fields": {
1561+ "description": "Selector specifying which fields to include in a partial response.",
1562+ "type": "string",
1563+ "location": "query"
1564+ },
1565+ "alt": {
1566+ "description": "Data format for response.",
1567+ "location": "query",
1568+ "enum": [
1569+ "json",
1570+ "media",
1571+ "proto"
1572+ ],
1573+ "default": "json",
1574+ "enumDescriptions": [
1575+ "Responses with Content-Type of application/json",
1576+ "Media download with context-dependent Content-Type",
1577+ "Responses with Content-Type of application/x-protobuf"
1578+ ],
1579+ "type": "string"
1580+ },
1581+ "$.xgafv": {
1582+ "description": "V1 error format.",
1583+ "enum": [
1584+ "1",
1585+ "2"
1586+ ],
1587+ "enumDescriptions": [
1588+ "v1 error format",
1589+ "v2 error format"
1590+ ],
1591+ "type": "string",
1592+ "location": "query"
1593+ },
1594+ "callback": {
1595+ "description": "JSONP",
1596+ "type": "string",
1597+ "location": "query"
1598+ },
1599+ "oauth_token": {
1600+ "description": "OAuth 2.0 token for the current user.",
1601+ "type": "string",
1602+ "location": "query"
1603+ },
1604+ "uploadType": {
1605+ "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").",
1606+ "type": "string",
1607+ "location": "query"
1608+ },
1609+ "bearer_token": {
1610+ "description": "OAuth bearer token.",
1611+ "type": "string",
1612+ "location": "query"
1613+ },
1614+ "upload_protocol": {
1615+ "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").",
1616+ "type": "string",
1617+ "location": "query"
15131618 }
1514− }
1515− }
1516− }
1619+ },
1620+ "documentationLink": "https://cloud.google.com/monitoring/api/",
1621+ "ownerDomain": "google.com",
1622+ "batchPath": "batch",
1623+ "servicePath": "",
1624+ "ownerName": "Google",
1625+ "version": "v3",
1626+ "rootUrl": "https://monitoring.googleapis.com/",
1627+ "kind": "discovery#restDescription"
15171628}
gogol-monitoring/README.md+1−1
@@ -13,7 +13,7 @@
1313
1414## Description
1515
16−A client library for the Google Monitoring.
16+A client library for the Google Stackdriver Monitoring.
1717
1818
1919## Contribute
gogol-monitoring/gen/Network/Google/Monitoring.hs+35−10
@@ -13,16 +13,11 @@
1313-- Stability : auto-generated
1414-- Portability : non-portable (GHC extensions)
1515--
16−-- Manages your Stackdriver monitoring data and configurations. Projects
17−-- must be associated with a Stackdriver account, except for the following
18−-- methods:
19−-- [monitoredResourceDescriptors.list](v3\/projects.monitoredResourceDescriptors\/list),
20−-- [monitoredResourceDescriptors.get](v3\/projects.monitoredResourceDescriptors\/get),
21−-- [metricDescriptors.list](v3\/projects.metricDescriptors\/list),
22−-- [metricDescriptors.get](v3\/projects.metricDescriptors\/get), and
23−-- [timeSeries.list](v3\/projects.timeSeries\/list).
16+-- Manages your Stackdriver Monitoring data and configurations. Most
17+-- projects must be associated with a Stackdriver account, with a few
18+-- exceptions as noted on the individual method pages.
2419--
25−-- /See:/ <https://cloud.google.com/monitoring/api/ Google Monitoring API Reference>
20+-- /See:/ <https://cloud.google.com/monitoring/api/ Stackdriver Monitoring API Reference>
2621module Network.Google.Monitoring
2722 (
2823 -- * Service Configuration
@@ -86,6 +81,9 @@ module Network.Google.Monitoring
8681
8782 -- * Types
8883
84+ -- ** MetricDescriptorValueType
85+ , MetricDescriptorValueType (..)
86+
8987 -- ** MonitoredResourceDescriptor
9088 , MonitoredResourceDescriptor
9189 , monitoredResourceDescriptor
@@ -95,6 +93,9 @@ module Network.Google.Monitoring
9593 , mrdType
9694 , mrdDescription
9795
96+ -- ** CollectdValueDataSourceType
97+ , CollectdValueDataSourceType (..)
98+
9899 -- ** ListTimeSeriesResponse
99100 , ListTimeSeriesResponse
100101 , listTimeSeriesResponse
@@ -165,6 +166,9 @@ module Network.Google.Monitoring
165166 , fNumber
166167 , fTypeURL
167168
169+ -- ** FieldKind
170+ , FieldKind (..)
171+
168172 -- ** Empty
169173 , Empty
170174 , empty
@@ -197,6 +201,9 @@ module Network.Google.Monitoring
197201 , lmrdrNextPageToken
198202 , lmrdrResourceDescriptors
199203
204+ -- ** LabelDescriptorValueType
205+ , LabelDescriptorValueType (..)
206+
200207 -- ** Explicit
201208 , Explicit
202209 , explicit
@@ -226,6 +233,9 @@ module Network.Google.Monitoring
226233 , cctsrResource
227234 , cctsrCollectdVersion
228235
236+ -- ** TypeSyntax
237+ , TypeSyntax (..)
238+
229239 -- ** Point
230240 , Point
231241 , point
@@ -269,12 +279,18 @@ module Network.Google.Monitoring
269279 , mrLabels
270280 , mrType
271281
282+ -- ** Xgafv
283+ , Xgafv (..)
284+
272285 -- ** TimeInterval
273286 , TimeInterval
274287 , timeInterval
275288 , tiStartTime
276289 , tiEndTime
277290
291+ -- ** TimeSeriesMetricKind
292+ , TimeSeriesMetricKind (..)
293+
278294 -- ** ListGroupMembersResponse
279295 , ListGroupMembersResponse
280296 , listGroupMembersResponse
@@ -289,6 +305,9 @@ module Network.Google.Monitoring
289305 , ldValueType
290306 , ldDescription
291307
308+ -- ** TimeSeriesValueType
309+ , TimeSeriesValueType (..)
310+
292311 -- ** Linear
293312 , Linear
294313 , linear
@@ -296,6 +315,9 @@ module Network.Google.Monitoring
296315 , lWidth
297316 , lNumFiniteBuckets
298317
318+ -- ** FieldCardinality
319+ , FieldCardinality (..)
320+
299321 -- ** Type
300322 , Type
301323 , type'
@@ -306,6 +328,9 @@ module Network.Google.Monitoring
306328 , tFields
307329 , tSyntax
308330
331+ -- ** MetricDescriptorMetricKind
332+ , MetricDescriptorMetricKind (..)
333+
309334 -- ** Option
310335 , Option
311336 , option
@@ -351,7 +376,7 @@ import Network.Google.Resource.Monitoring.Projects.TimeSeries.List
351376TODO
352377-}
353378
354−-- | Represents the entirety of the methods and resources available for the Google Monitoring API service.
379+-- | Represents the entirety of the methods and resources available for the Stackdriver Monitoring API service.
355380type MonitoringAPI =
356381 ProjectsMetricDescriptorsListResource :<|>
357382 ProjectsMetricDescriptorsGetResource
gogol-monitoring/gen/Network/Google/Monitoring/Types.hs+31−1
@@ -25,6 +25,9 @@ module Network.Google.Monitoring.Types
2525 , monitoringScope
2626 , monitoringWriteScope
2727
28+ -- * MetricDescriptorValueType
29+ , MetricDescriptorValueType (..)
30+
2831 -- * MonitoredResourceDescriptor
2932 , MonitoredResourceDescriptor
3033 , monitoredResourceDescriptor
@@ -34,6 +37,9 @@ module Network.Google.Monitoring.Types
3437 , mrdType
3538 , mrdDescription
3639
40+ -- * CollectdValueDataSourceType
41+ , CollectdValueDataSourceType (..)
42+
3743 -- * ListTimeSeriesResponse
3844 , ListTimeSeriesResponse
3945 , listTimeSeriesResponse
@@ -104,6 +110,9 @@ module Network.Google.Monitoring.Types
104110 , fNumber
105111 , fTypeURL
106112
113+ -- * FieldKind
114+ , FieldKind (..)
115+
107116 -- * Empty
108117 , Empty
109118 , empty
@@ -136,6 +145,9 @@ module Network.Google.Monitoring.Types
136145 , lmrdrNextPageToken
137146 , lmrdrResourceDescriptors
138147
148+ -- * LabelDescriptorValueType
149+ , LabelDescriptorValueType (..)
150+
139151 -- * Explicit
140152 , Explicit
141153 , explicit
@@ -165,6 +177,9 @@ module Network.Google.Monitoring.Types
165177 , cctsrResource
166178 , cctsrCollectdVersion
167179
180+ -- * TypeSyntax
181+ , TypeSyntax (..)
182+
168183 -- * Point
169184 , Point
170185 , point
@@ -208,12 +223,18 @@ module Network.Google.Monitoring.Types
208223 , mrLabels
209224 , mrType
210225
226+ -- * Xgafv
227+ , Xgafv (..)
228+
211229 -- * TimeInterval
212230 , TimeInterval
213231 , timeInterval
214232 , tiStartTime
215233 , tiEndTime
216234
235+ -- * TimeSeriesMetricKind
236+ , TimeSeriesMetricKind (..)
237+
217238 -- * ListGroupMembersResponse
218239 , ListGroupMembersResponse
219240 , listGroupMembersResponse
@@ -228,6 +249,9 @@ module Network.Google.Monitoring.Types
228249 , ldValueType
229250 , ldDescription
230251
252+ -- * TimeSeriesValueType
253+ , TimeSeriesValueType (..)
254+
231255 -- * Linear
232256 , Linear
233257 , linear
@@ -235,6 +259,9 @@ module Network.Google.Monitoring.Types
235259 , lWidth
236260 , lNumFiniteBuckets
237261
262+ -- * FieldCardinality
263+ , FieldCardinality (..)
264+
238265 -- * Type
239266 , Type
240267 , type'
@@ -245,6 +272,9 @@ module Network.Google.Monitoring.Types
245272 , tFields
246273 , tSyntax
247274
275+ -- * MetricDescriptorMetricKind
276+ , MetricDescriptorMetricKind (..)
277+
248278 -- * Option
249279 , Option
250280 , option
@@ -272,7 +302,7 @@ import Network.Google.Monitoring.Types.Product
272302import Network.Google.Monitoring.Types.Sum
273303import Network.Google.Prelude
274304
275−-- | Default request referring to version 'v3' of the Google Monitoring API. This contains the host and root path used as a starting point for constructing service requests.
305+-- | Default request referring to version 'v3' of the Stackdriver Monitoring API. This contains the host and root path used as a starting point for constructing service requests.
276306monitoringService :: ServiceConfig
277307monitoringService
278308 = defaultService (ServiceId "monitoring:v3")
gogol-monitoring/gen/Network/Google/Monitoring/Types/Product.hs+256−238
@@ -23,11 +23,10 @@ import Network.Google.Prelude
2323-- | An object that describes the schema of a MonitoredResource object using
2424-- a type name and a set of labels. For example, the monitored resource
2525-- descriptor for Google Compute Engine VM instances has a type of
26−-- \`\"gce_instance\"\` and specifies the use of the labels
27−-- \`\"instance_id\"\` and \`\"zone\"\` to identify particular VM
28−-- instances. Different APIs can support different monitored resource
29−-- types. APIs generally provide a \`list\` method that returns the
30−-- monitored resource descriptors used by the API.
26+-- \"gce_instance\" and specifies the use of the labels \"instance_id\" and
27+-- \"zone\" to identify particular VM instances.Different APIs can support
28+-- different monitored resource types. APIs generally provide a list method
29+-- that returns the monitored resource descriptors used by the API.
3130--
3231-- /See:/ 'monitoredResourceDescriptor' smart constructor.
3332data MonitoredResourceDescriptor = MonitoredResourceDescriptor'
@@ -63,17 +62,18 @@ monitoredResourceDescriptor =
6362 }
6463
6564-- | Optional. The resource name of the monitored resource descriptor:
66−-- \`\"projects\/{project_id}\/monitoredResourceDescriptors\/{type}\"\`
67−-- where {type} is the value of the \`type\` field in this object and
68−-- {project_id} is a project ID that provides API-specific context for
69−-- accessing the type. APIs that do not use project information can use the
70−-- resource name format \`\"monitoredResourceDescriptors\/{type}\"\`.
65+-- \"projects\/{project_id}\/monitoredResourceDescriptors\/{type}\" where
66+-- {type} is the value of the type field in this object and {project_id} is
67+-- a project ID that provides API-specific context for accessing the type.
68+-- APIs that do not use project information can use the resource name
69+-- format \"monitoredResourceDescriptors\/{type}\".
7170mrdName :: Lens' MonitoredResourceDescriptor (Maybe Text)
7271mrdName = lens _mrdName (\ s a -> s{_mrdName = a})
7372
7473-- | Optional. A concise name for the monitored resource type that might be
75−-- displayed in user interfaces. For example, \`\"Google Cloud SQL
76−-- Database\"\`.
74+-- displayed in user interfaces. It should be a Title Cased Noun Phrase,
75+-- without any article or other determiners. For example, \"Google Cloud
76+-- SQL Database\".
7777mrdDisplayName :: Lens' MonitoredResourceDescriptor (Maybe Text)
7878mrdDisplayName
7979 = lens _mrdDisplayName
@@ -81,8 +81,7 @@ mrdDisplayName
8181
8282-- | Required. A set of labels used to describe instances of this monitored
8383-- resource type. For example, an individual Google Cloud SQL database is
84−-- identified by values for the labels \`\"database_id\"\` and
85−-- \`\"zone\"\`.
84+-- identified by values for the labels \"database_id\" and \"zone\".
8685mrdLabels :: Lens' MonitoredResourceDescriptor [LabelDescriptor]
8786mrdLabels
8887 = lens _mrdLabels (\ s a -> s{_mrdLabels = a}) .
@@ -90,7 +89,8 @@ mrdLabels
9089 . _Coerce
9190
9291-- | Required. The monitored resource type. For example, the type
93−-- \`\"cloudsql_database\"\` represents databases in Google Cloud SQL.
92+-- \"cloudsql_database\" represents databases in Google Cloud SQL. The
93+-- maximum length of this value is 256 characters.
9494mrdType :: Lens' MonitoredResourceDescriptor (Maybe Text)
9595mrdType = lens _mrdType (\ s a -> s{_mrdType = a})
9696
@@ -121,7 +121,7 @@ instance ToJSON MonitoredResourceDescriptor where
121121 ("type" .=) <$> _mrdType,
122122 ("description" .=) <$> _mrdDescription])
123123
124−-- | The \`ListTimeSeries\` response.
124+-- | The ListTimeSeries response.
125125--
126126-- /See:/ 'listTimeSeriesResponse' smart constructor.
127127data ListTimeSeriesResponse = ListTimeSeriesResponse'
@@ -146,7 +146,7 @@ listTimeSeriesResponse =
146146
147147-- | If there are more results than have been returned, then this field is
148148-- set to a non-empty value. To see the additional results, use that value
149−-- as \`pageToken\` in the next call to this method.
149+-- as pageToken in the next call to this method.
150150ltsrNextPageToken :: Lens' ListTimeSeriesResponse (Maybe Text)
151151ltsrNextPageToken
152152 = lens _ltsrNextPageToken
@@ -179,12 +179,12 @@ instance ToJSON ListTimeSeriesResponse where
179179--
180180-- /See:/ 'metricDescriptor' smart constructor.
181181data MetricDescriptor = MetricDescriptor'
182− { _mdMetricKind :: !(Maybe Text)
182+ { _mdMetricKind :: !(Maybe MetricDescriptorMetricKind)
183183 , _mdName :: !(Maybe Text)
184184 , _mdDisplayName :: !(Maybe Text)
185185 , _mdLabels :: !(Maybe [LabelDescriptor])
186186 , _mdType :: !(Maybe Text)
187− , _mdValueType :: !(Maybe Text)
187+ , _mdValueType :: !(Maybe MetricDescriptorValueType)
188188 , _mdDescription :: !(Maybe Text)
189189 , _mdUnit :: !(Maybe Text)
190190 } deriving (Eq,Show,Data,Typeable,Generic)
@@ -223,8 +223,9 @@ metricDescriptor =
223223 }
224224
225225-- | Whether the metric records instantaneous values, changes to a value,
226−-- etc.
227−mdMetricKind :: Lens' MetricDescriptor (Maybe Text)
226+-- etc. Some combinations of metric_kind and value_type might not be
227+-- supported.
228+mdMetricKind :: Lens' MetricDescriptor (Maybe MetricDescriptorMetricKind)
228229mdMetricKind
229230 = lens _mdMetricKind (\ s a -> s{_mdMetricKind = a})
230231
@@ -245,9 +246,9 @@ mdDisplayName
245246
246247-- | The set of labels that can be used to describe a specific instance of
247248-- this metric type. For example, the
248−-- \`compute.googleapis.com\/instance\/network\/received_bytes_count\`
249−-- metric type has a label, \`loadbalanced\`, that specifies whether the
250−-- traffic was received through a load balanced IP address.
249+-- compute.googleapis.com\/instance\/network\/received_bytes_count metric
250+-- type has a label, loadbalanced, that specifies whether the traffic was
251+-- received through a load balanced IP address.
251252mdLabels :: Lens' MetricDescriptor [LabelDescriptor]
252253mdLabels
253254 = lens _mdLabels (\ s a -> s{_mdLabels = a}) .
@@ -255,7 +256,7 @@ mdLabels
255256 . _Coerce
256257
257258-- | The metric type including a DNS name prefix, for example
258−-- \`\"compute.googleapis.com\/instance\/cpu\/utilization\"\`. Metric types
259+-- \"compute.googleapis.com\/instance\/cpu\/utilization\". Metric types
259260-- should use a natural hierarchical grouping such as the following:
260261-- compute.googleapis.com\/instance\/cpu\/utilization
261262-- compute.googleapis.com\/instance\/disk\/read_ops_count
@@ -268,7 +269,8 @@ mdType :: Lens' MetricDescriptor (Maybe Text)
268269mdType = lens _mdType (\ s a -> s{_mdType = a})
269270
270271-- | Whether the measurement is an integer, a floating-point number, etc.
271−mdValueType :: Lens' MetricDescriptor (Maybe Text)
272+-- Some combinations of metric_kind and value_type might not be supported.
273+mdValueType :: Lens' MetricDescriptor (Maybe MetricDescriptorValueType)
272274mdValueType
273275 = lens _mdValueType (\ s a -> s{_mdValueType = a})
274276
@@ -280,28 +282,25 @@ mdDescription
280282 (\ s a -> s{_mdDescription = a})
281283
282284-- | The unit in which the metric value is reported. It is only applicable if
283−-- the \`value_type\` is \`INT64\`, \`DOUBLE\`, or \`DISTRIBUTION\`. The
284−-- supported units are a subset of [The Unified Code for Units of
285−-- Measure](http:\/\/unitsofmeasure.org\/ucum.html) standard: **Basic units
286−-- (UNIT)** * \`bit\` bit * \`By\` byte * \`s\` second * \`min\` minute *
287−-- \`h\` hour * \`d\` day **Prefixes (PREFIX)** * \`k\` kilo (10**3) *
288−-- \`M\` mega (10**6) * \`G\` giga (10**9) * \`T\` tera (10**12) * \`P\`
289−-- peta (10**15) * \`E\` exa (10**18) * \`Z\` zetta (10**21) * \`Y\` yotta
290−-- (10**24) * \`m\` milli (10**-3) * \`u\` micro (10**-6) * \`n\` nano
291−-- (10**-9) * \`p\` pico (10**-12) * \`f\` femto (10**-15) * \`a\` atto
292−-- (10**-18) * \`z\` zepto (10**-21) * \`y\` yocto (10**-24) * \`Ki\` kibi
293−-- (2**10) * \`Mi\` mebi (2**20) * \`Gi\` gibi (2**30) * \`Ti\` tebi
294−-- (2**40) **Grammar** The grammar includes the dimensionless unit \`1\`,
295−-- such as \`1\/s\`. The grammar also includes these connectors: * \`\/\`
296−-- division (as an infix operator, e.g. \`1\/s\`). * \`.\` multiplication
297−-- (as an infix operator, e.g. \`GBy.d\`) The grammar for a unit is as
298−-- follows: Expression = Component { \".\" Component } { \"\/\" Component }
299−-- ; Component = [ PREFIX ] UNIT [ Annotation ] | Annotation | \"1\" ;
300−-- Annotation = \"{\" NAME \"}\" ; Notes: * \`Annotation\` is just a
301−-- comment if it follows a \`UNIT\` and is equivalent to \`1\` if it is
302−-- used alone. For examples, \`{requests}\/s == 1\/s\`,
303−-- \`By{transmitted}\/s == By\/s\`. * \`NAME\` is a sequence of non-blank
304−-- printable ASCII characters not containing \'{\' or \'}\'.
285+-- the value_type is INT64, DOUBLE, or DISTRIBUTION. The supported units
286+-- are a subset of The Unified Code for Units of Measure
287+-- (http:\/\/unitsofmeasure.org\/ucum.html) standard:Basic units (UNIT) bit
288+-- bit By byte s second min minute h hour d dayPrefixes (PREFIX) k kilo
289+-- (10**3) M mega (10**6) G giga (10**9) T tera (10**12) P peta (10**15) E
290+-- exa (10**18) Z zetta (10**21) Y yotta (10**24) m milli (10**-3) u micro
291+-- (10**-6) n nano (10**-9) p pico (10**-12) f femto (10**-15) a atto
292+-- (10**-18) z zepto (10**-21) y yocto (10**-24) Ki kibi (2**10) Mi mebi
293+-- (2**20) Gi gibi (2**30) Ti tebi (2**40)GrammarThe grammar includes the
294+-- dimensionless unit 1, such as 1\/s.The grammar also includes these
295+-- connectors: \/ division (as an infix operator, e.g. 1\/s). .
296+-- multiplication (as an infix operator, e.g. GBy.d)The grammar for a unit
297+-- is as follows: Expression = Component { \".\" Component } { \"\/\"
298+-- Component } ; Component = [ PREFIX ] UNIT [ Annotation ] | Annotation |
299+-- \"1\" ; Annotation = \"{\" NAME \"}\" ; Notes: Annotation is just a
300+-- comment if it follows a UNIT and is equivalent to 1 if it is used alone.
301+-- For examples, {requests}\/s == 1\/s, By{transmitted}\/s == By\/s. NAME
302+-- is a sequence of non-blank printable ASCII characters not containing
303+-- \'{\' or \'}\'.
305304mdUnit :: Lens' MetricDescriptor (Maybe Text)
306305mdUnit = lens _mdUnit (\ s a -> s{_mdUnit = a})
307306
@@ -335,23 +334,23 @@ instance ToJSON MetricDescriptor where
335334-- associated metadata. If a group\'s filter matches an available monitored
336335-- resource, then that resource is a member of that group. Groups can
337336-- contain any number of monitored resources, and each monitored resource
338−-- can be a member of any number of groups. Groups can be nested in
339−-- parent-child hierarchies. The \`parentName\` field identifies an
340−-- optional parent for each group. If a group has a parent, then the only
341−-- monitored resources available to be matched by the group\'s filter are
342−-- the resources contained in the parent group. In other words, a group
337+-- can be a member of any number of groups.Groups can be nested in
338+-- parent-child hierarchies. The parentName field identifies an optional
339+-- parent for each group. If a group has a parent, then the only monitored
340+-- resources available to be matched by the group\'s filter are the
341+-- resources contained in the parent group. In other words, a group
343342-- contains the monitored resources that match its filter and the filters
344343-- of all the group\'s ancestors. A group without a parent can contain any
345−-- monitored resource. For example, consider an infrastructure running a
346−-- set of instances with two user-defined tags: \`\"environment\"\` and
347−-- \`\"role\"\`. A parent group has a filter,
348−-- \`environment=\"production\"\`. A child of that parent group has a
349−-- filter, \`role=\"transcoder\"\`. The parent group contains all instances
350−-- in the production environment, regardless of their roles. The child
351−-- group contains instances that have the transcoder role *and* are in the
352−-- production environment. The monitored resources contained in a group can
353−-- change at any moment, depending on what resources exist and what filters
354−-- are associated with the group and its ancestors.
344+-- monitored resource.For example, consider an infrastructure running a set
345+-- of instances with two user-defined tags: \"environment\" and \"role\". A
346+-- parent group has a filter, environment=\"production\". A child of that
347+-- parent group has a filter, role=\"transcoder\". The parent group
348+-- contains all instances in the production environment, regardless of
349+-- their roles. The child group contains instances that have the transcoder
350+-- role and are in the production environment.The monitored resources
351+-- contained in a group can change at any moment, depending on what
352+-- resources exist and what filters are associated with the group and its
353+-- ancestors.
355354--
356355-- /See:/ 'group'' smart constructor.
357356data Group = Group'
@@ -386,11 +385,11 @@ group' =
386385 , _gParentName = Nothing
387386 }
388387
389−-- | The name of this group. The format is
390−-- \`\"projects\/{project_id_or_number}\/groups\/{group_id}\"\`. When
391−-- creating a group, this field is ignored and a new name is created
392−-- consisting of the project specified in the call to \`CreateGroup\` and a
393−-- unique \`{group_id}\` that is generated automatically. \'OutputOnly
388+-- | Output only. The name of this group. The format is
389+-- \"projects\/{project_id_or_number}\/groups\/{group_id}\". When creating
390+-- a group, this field is ignored and a new name is created consisting of
391+-- the project specified in the call to CreateGroup and a unique {group_id}
392+-- that is generated automatically.
394393gName :: Lens' Group (Maybe Text)
395394gName = lens _gName (\ s a -> s{_gName = a})
396395
@@ -411,8 +410,8 @@ gIsCluster
411410 = lens _gIsCluster (\ s a -> s{_gIsCluster = a})
412411
413412-- | The name of the group\'s parent, if it has one. The format is
414−-- \`\"projects\/{project_id_or_number}\/groups\/{group_id}\"\`. For groups
415−-- with no parent, \`parentName\` is the empty string, \`\"\"\`.
413+-- \"projects\/{project_id_or_number}\/groups\/{group_id}\". For groups
414+-- with no parent, parentName is the empty string, \"\".
416415gParentName :: Lens' Group (Maybe Text)
417416gParentName
418417 = lens _gParentName (\ s a -> s{_gParentName = a})
@@ -472,7 +471,7 @@ typedValue =
472471 , _tvInt64Value = Nothing
473472 }
474473
475−-- | A Boolean value: \`true\` or \`false\`.
474+-- | A Boolean value: true or false.
476475tvBoolValue :: Lens' TypedValue (Maybe Bool)
477476tvBoolValue
478477 = lens _tvBoolValue (\ s a -> s{_tvBoolValue = a})
@@ -525,7 +524,7 @@ instance ToJSON TypedValue where
525524
526525-- | Required. Values for all of the labels listed in the associated
527526-- monitored resource descriptor. For example, Cloud SQL databases use the
528−-- labels \`\"database_id\"\` and \`\"zone\"\`.
527+-- labels \"database_id\" and \"zone\".
529528--
530529-- /See:/ 'monitoredResourceLabels' smart constructor.
531530newtype MonitoredResourceLabels = MonitoredResourceLabels'
@@ -559,7 +558,7 @@ instance FromJSON MonitoredResourceLabels where
559558instance ToJSON MonitoredResourceLabels where
560559 toJSON = toJSON . _mrlAddtional
561560
562−-- | \`SourceContext\` represents information about the source of a protobuf
561+-- | SourceContext represents information about the source of a protobuf
563562-- element, like the file in which it is defined.
564563--
565564-- /See:/ 'sourceContext' smart constructor.
@@ -580,7 +579,8 @@ sourceContext =
580579 }
581580
582581-- | The path-qualified name of the .proto file that contained the associated
583−-- protobuf element. For example: \`\"google\/protobuf\/source.proto\"\`.
582+-- protobuf element. For example:
583+-- \"google\/protobuf\/source_context.proto\".
584584scFileName :: Lens' SourceContext (Maybe Text)
585585scFileName
586586 = lens _scFileName (\ s a -> s{_scFileName = a})
@@ -597,17 +597,17 @@ instance ToJSON SourceContext where
597597
598598-- | Distribution contains summary statistics for a population of values and,
599599-- optionally, a histogram representing the distribution of those values
600−-- across a specified set of histogram buckets. The summary statistics are
600+-- across a specified set of histogram buckets.The summary statistics are
601601-- the count, mean, sum of the squared deviation from the mean, the
602−-- minimum, and the maximum of the set of population of values. The
602+-- minimum, and the maximum of the set of population of values.The
603603-- histogram is based on a sequence of buckets and gives a count of values
604604-- that fall into each bucket. The boundaries of the buckets are given
605605-- either explicitly or by specifying parameters for a method of computing
606606-- them (buckets of fixed width or buckets of exponentially increasing
607−-- width). Although it is not forbidden, it is generally a bad idea to
607+-- width).Although it is not forbidden, it is generally a bad idea to
608608-- include non-finite values (infinities or NaNs) in the population of
609−-- values, as this will render the \`mean\` and
610−-- \`sum_of_squared_deviation\` fields meaningless.
609+-- values, as this will render the mean and sum_of_squared_deviation fields
610+-- meaningless.
611611--
612612-- /See:/ 'distribution' smart constructor.
613613data Distribution = Distribution'
@@ -649,16 +649,16 @@ distribution =
649649-- | The sum of squared deviations from the mean of the values in the
650650-- population. For values x_i this is: Sum[i=1..n]((x_i - mean)^2) Knuth,
651651-- \"The Art of Computer Programming\", Vol. 2, page 323, 3rd edition
652−-- describes Welford\'s method for accumulating this sum in one pass. If
653−-- \`count\` is zero then this field must be zero.
652+-- describes Welford\'s method for accumulating this sum in one pass.If
653+-- count is zero then this field must be zero.
654654dSumOfSquaredDeviation :: Lens' Distribution (Maybe Double)
655655dSumOfSquaredDeviation
656656 = lens _dSumOfSquaredDeviation
657657 (\ s a -> s{_dSumOfSquaredDeviation = a})
658658 . mapping _Coerce
659659
660−-- | The arithmetic mean of the values in the population. If \`count\` is
661−-- zero then this field must be zero.
660+-- | The arithmetic mean of the values in the population. If count is zero
661+-- then this field must be zero.
662662dMean :: Lens' Distribution (Maybe Double)
663663dMean
664664 = lens _dMean (\ s a -> s{_dMean = a}) .
@@ -670,15 +670,14 @@ dCount
670670 = lens _dCount (\ s a -> s{_dCount = a}) .
671671 mapping _Coerce
672672
673−-- | If \`bucket_options\` is given, then the sum of the values in
674−-- \`bucket_counts\` must equal the value in \`count\`. If
675−-- \`bucket_options\` is not given, no \`bucket_counts\` fields may be
676−-- given. Bucket counts are given in order under the numbering scheme
677−-- described above (the underflow bucket has number 0; the finite buckets,
678−-- if any, have numbers 1 through N-2; the overflow bucket has number N-1).
679−-- The size of \`bucket_counts\` must be no greater than N as defined in
680−-- \`bucket_options\`. Any suffix of trailing zero bucket_count fields may
681−-- be omitted.
673+-- | If bucket_options is given, then the sum of the values in bucket_counts
674+-- must equal the value in count. If bucket_options is not given, no
675+-- bucket_counts fields may be given.Bucket counts are given in order under
676+-- the numbering scheme described above (the underflow bucket has number 0;
677+-- the finite buckets, if any, have numbers 1 through N-2; the overflow
678+-- bucket has number N-1).The size of bucket_counts must be no greater than
679+-- N as defined in bucket_options.Any suffix of trailing zero bucket_count
680+-- fields may be omitted.
682681dBucketCounts :: Lens' Distribution [Int64]
683682dBucketCounts
684683 = lens _dBucketCounts
@@ -687,7 +686,8 @@ dBucketCounts
687686 . _Coerce
688687
689688-- | If specified, contains the range of the population values. The field
690−-- must not be present if the \`count\` is zero.
689+-- must not be present if the count is zero. This field is presently
690+-- ignored by the Stackdriver Monitoring API v3.
691691dRange :: Lens' Distribution (Maybe Range)
692692dRange = lens _dRange (\ s a -> s{_dRange = a})
693693
@@ -723,11 +723,11 @@ instance ToJSON Distribution where
723723--
724724-- /See:/ 'field' smart constructor.
725725data Field = Field'
726− { _fKind :: !(Maybe Text)
726+ { _fKind :: !(Maybe FieldKind)
727727 , _fOneofIndex :: !(Maybe (Textual Int32))
728728 , _fName :: !(Maybe Text)
729729 , _fJSONName :: !(Maybe Text)
730− , _fCardinality :: !(Maybe Text)
730+ , _fCardinality :: !(Maybe FieldCardinality)
731731 , _fOptions :: !(Maybe [Option])
732732 , _fPacked :: !(Maybe Bool)
733733 , _fDefaultValue :: !(Maybe Text)
@@ -775,12 +775,12 @@ field =
775775 }
776776
777777-- | The field type.
778−fKind :: Lens' Field (Maybe Text)
778+fKind :: Lens' Field (Maybe FieldKind)
779779fKind = lens _fKind (\ s a -> s{_fKind = a})
780780
781−-- | The index of the field type in \`Type.oneofs\`, for message or
782−-- enumeration types. The first type has index 1; zero means the type is
783−-- not in the list.
781+-- | The index of the field type in Type.oneofs, for message or enumeration
782+-- types. The first type has index 1; zero means the type is not in the
783+-- list.
784784fOneofIndex :: Lens' Field (Maybe Int32)
785785fOneofIndex
786786 = lens _fOneofIndex (\ s a -> s{_fOneofIndex = a}) .
@@ -796,7 +796,7 @@ fJSONName
796796 = lens _fJSONName (\ s a -> s{_fJSONName = a})
797797
798798-- | The field cardinality.
799−fCardinality :: Lens' Field (Maybe Text)
799+fCardinality :: Lens' Field (Maybe FieldCardinality)
800800fCardinality
801801 = lens _fCardinality (\ s a -> s{_fCardinality = a})
802802
@@ -824,7 +824,7 @@ fNumber
824824 mapping _Coerce
825825
826826-- | The field type URL, without the scheme, for message or enumeration
827−-- types. Example: \`\"type.googleapis.com\/google.protobuf.Timestamp\"\`.
827+-- types. Example: \"type.googleapis.com\/google.protobuf.Timestamp\".
828828fTypeURL :: Lens' Field (Maybe Text)
829829fTypeURL = lens _fTypeURL (\ s a -> s{_fTypeURL = a})
830830
@@ -862,7 +862,7 @@ instance ToJSON Field where
862862-- empty messages in your APIs. A typical example is to use it as the
863863-- request or the response type of an API method. For instance: service Foo
864864-- { rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty); } The
865−-- JSON representation for \`Empty\` is empty JSON object \`{}\`.
865+-- JSON representation for Empty is empty JSON object {}.
866866--
867867-- /See:/ 'empty' smart constructor.
868868data Empty =
@@ -881,7 +881,7 @@ instance FromJSON Empty where
881881instance ToJSON Empty where
882882 toJSON = const emptyObject
883883
884−-- | The \`ListGroups\` response.
884+-- | The ListGroups response.
885885--
886886-- /See:/ 'listGroupsResponse' smart constructor.
887887data ListGroupsResponse = ListGroupsResponse'
@@ -906,7 +906,7 @@ listGroupsResponse =
906906
907907-- | If there are more results than have been returned, then this field is
908908-- set to a non-empty value. To see the additional results, use that value
909−-- as \`pageToken\` in the next call to this method.
909+-- as pageToken in the next call to this method.
910910lgrNextPageToken :: Lens' ListGroupsResponse (Maybe Text)
911911lgrNextPageToken
912912 = lens _lgrNextPageToken
@@ -934,7 +934,7 @@ instance ToJSON ListGroupsResponse where
934934 [("nextPageToken" .=) <$> _lgrNextPageToken,
935935 ("group" .=) <$> _lgrGroup])
936936
937−-- | The \`ListMetricDescriptors\` response.
937+-- | The ListMetricDescriptors response.
938938--
939939-- /See:/ 'listMetricDescriptorsResponse' smart constructor.
940940data ListMetricDescriptorsResponse = ListMetricDescriptorsResponse'
@@ -958,7 +958,7 @@ listMetricDescriptorsResponse =
958958 }
959959
960960-- | The metric descriptors that are available to the project and that match
961−-- the value of \`filter\`, if present.
961+-- the value of filter, if present.
962962lmdrMetricDescriptors :: Lens' ListMetricDescriptorsResponse [MetricDescriptor]
963963lmdrMetricDescriptors
964964 = lens _lmdrMetricDescriptors
@@ -968,7 +968,7 @@ lmdrMetricDescriptors
968968
969969-- | If there are more results than have been returned, then this field is
970970-- set to a non-empty value. To see the additional results, use that value
971−-- as \`pageToken\` in the next call to this method.
971+-- as pageToken in the next call to this method.
972972lmdrNextPageToken :: Lens' ListMetricDescriptorsResponse (Maybe Text)
973973lmdrNextPageToken
974974 = lens _lmdrNextPageToken
@@ -989,7 +989,7 @@ instance ToJSON ListMetricDescriptorsResponse where
989989 [("metricDescriptors" .=) <$> _lmdrMetricDescriptors,
990990 ("nextPageToken" .=) <$> _lmdrNextPageToken])
991991
992−-- | The option\'s value. For example, \`\"com.google.protobuf\"\`.
992+-- | The option\'s value. For example, \"com.google.protobuf\".
993993--
994994-- /See:/ 'optionValue' smart constructor.
995995newtype OptionValue = OptionValue'
@@ -1009,7 +1009,7 @@ optionValue pOvAddtional_ =
10091009 { _ovAddtional = _Coerce # pOvAddtional_
10101010 }
10111011
1012−-- | Properties of the object. Contains field \'ype with type URL.
1012+-- | Properties of the object. Contains field \'type with type URL.
10131013ovAddtional :: Lens' OptionValue (HashMap Text JSONValue)
10141014ovAddtional
10151015 = lens _ovAddtional (\ s a -> s{_ovAddtional = a}) .
@@ -1023,7 +1023,7 @@ instance FromJSON OptionValue where
10231023instance ToJSON OptionValue where
10241024 toJSON = toJSON . _ovAddtional
10251025
1026−-- | The \`CreateTimeSeries\` request.
1026+-- | The CreateTimeSeries request.
10271027--
10281028-- /See:/ 'createTimeSeriesRequest' smart constructor.
10291029newtype CreateTimeSeriesRequest = CreateTimeSeriesRequest'
@@ -1044,9 +1044,9 @@ createTimeSeriesRequest =
10441044
10451045-- | The new data to be added to a list of time series. Adds at most one data
10461046-- point to each of several time series. The new data point must be more
1047−-- recent than any other point in its time series. Each \`TimeSeries\`
1048−-- value must fully specify a unique time series by supplying all label
1049−-- values for the metric and the monitored resource.
1047+-- recent than any other point in its time series. Each TimeSeries value
1048+-- must fully specify a unique time series by supplying all label values
1049+-- for the metric and the monitored resource.
10501050ctsrTimeSeries :: Lens' CreateTimeSeriesRequest [TimeSeries]
10511051ctsrTimeSeries
10521052 = lens _ctsrTimeSeries
@@ -1066,7 +1066,7 @@ instance ToJSON CreateTimeSeriesRequest where
10661066 = object
10671067 (catMaybes [("timeSeries" .=) <$> _ctsrTimeSeries])
10681068
1069−-- | The \`ListMonitoredResourcDescriptors\` response.
1069+-- | The ListMonitoredResourcDescriptors response.
10701070--
10711071-- /See:/ 'listMonitoredResourceDescriptorsResponse' smart constructor.
10721072data ListMonitoredResourceDescriptorsResponse = ListMonitoredResourceDescriptorsResponse'
@@ -1091,14 +1091,14 @@ listMonitoredResourceDescriptorsResponse =
10911091
10921092-- | If there are more results than have been returned, then this field is
10931093-- set to a non-empty value. To see the additional results, use that value
1094−-- as \`pageToken\` in the next call to this method.
1094+-- as pageToken in the next call to this method.
10951095lmrdrNextPageToken :: Lens' ListMonitoredResourceDescriptorsResponse (Maybe Text)
10961096lmrdrNextPageToken
10971097 = lens _lmrdrNextPageToken
10981098 (\ s a -> s{_lmrdrNextPageToken = a})
10991099
11001100-- | The monitored resource descriptors that are available to this project
1101−-- and that match \`filter\`, if present.
1101+-- and that match filter, if present.
11021102lmrdrResourceDescriptors :: Lens' ListMonitoredResourceDescriptorsResponse [MonitoredResourceDescriptor]
11031103lmrdrResourceDescriptors
11041104 = lens _lmrdrResourceDescriptors
@@ -1125,12 +1125,12 @@ instance ToJSON
11251125 ("resourceDescriptors" .=) <$>
11261126 _lmrdrResourceDescriptors])
11271127
1128−-- | A set of buckets with arbitrary widths. Defines \`size(bounds) + 1\` (=
1129−-- N) buckets with these boundaries for bucket i: Upper bound (0 \<= i \<
1130−-- N-1): bounds[i] Lower bound (1 \<= i \< N); bounds[i - 1] There must be
1131−-- at least one element in \`bounds\`. If \`bounds\` has only one element,
1132−-- there are no finite buckets, and that single element is the common
1133−-- boundary of the overflow and underflow buckets.
1128+-- | A set of buckets with arbitrary widths.Defines size(bounds) + 1 (= N)
1129+-- buckets with these boundaries for bucket i:Upper bound (0 \<= i \< N-1):
1130+-- boundsi Lower bound (1 \<= i \< N); boundsi - 1There must be at least
1131+-- one element in bounds. If bounds has only one element, there are no
1132+-- finite buckets, and that single element is the common boundary of the
1133+-- overflow and underflow buckets.
11341134--
11351135-- /See:/ 'explicit' smart constructor.
11361136newtype Explicit = Explicit'
@@ -1165,8 +1165,7 @@ instance ToJSON Explicit where
11651165 = object (catMaybes [("bounds" .=) <$> _eBounds])
11661166
11671167-- | The set of labels that uniquely identify a metric. To specify a metric,
1168−-- all labels enumerated in the \`MetricDescriptor\` must be assigned
1169−-- values.
1168+-- all labels enumerated in the MetricDescriptor must be assigned values.
11701169--
11711170-- /See:/ 'metricLabels' smart constructor.
11721171newtype MetricLabels = MetricLabels'
@@ -1199,7 +1198,7 @@ instance FromJSON MetricLabels where
11991198instance ToJSON MetricLabels where
12001199 toJSON = toJSON . _mlAddtional
12011200
1202−-- | The measurement metadata. Example: \`\"process_id\" -> 12345\`
1201+-- | The measurement metadata. Example: \"process_id\" -> 12345
12031202--
12041203-- /See:/ 'collectdPayloadMetadata' smart constructor.
12051204newtype CollectdPayloadMetadata = CollectdPayloadMetadata'
@@ -1233,12 +1232,12 @@ instance FromJSON CollectdPayloadMetadata where
12331232instance ToJSON CollectdPayloadMetadata where
12341233 toJSON = toJSON . _cpmAddtional
12351234
1236−-- | A single data point from a \`collectd\`-based plugin.
1235+-- | A single data point from a collectd-based plugin.
12371236--
12381237-- /See:/ 'collectdValue' smart constructor.
12391238data CollectdValue = CollectdValue'
12401239 { _cvDataSourceName :: !(Maybe Text)
1241− , _cvDataSourceType :: !(Maybe Text)
1240+ , _cvDataSourceType :: !(Maybe CollectdValueDataSourceType)
12421241 , _cvValue :: !(Maybe TypedValue)
12431242 } deriving (Eq,Show,Data,Typeable,Generic)
12441243
@@ -1260,15 +1259,15 @@ collectdValue =
12601259 , _cvValue = Nothing
12611260 }
12621261
1263−-- | The data source for the \`collectd\` value. For example there are two
1264−-- data sources for network measurements: \`\"rx\"\` and \`\"tx\"\`.
1262+-- | The data source for the collectd value. For example there are two data
1263+-- sources for network measurements: \"rx\" and \"tx\".
12651264cvDataSourceName :: Lens' CollectdValue (Maybe Text)
12661265cvDataSourceName
12671266 = lens _cvDataSourceName
12681267 (\ s a -> s{_cvDataSourceName = a})
12691268
12701269-- | The type of measurement.
1271−cvDataSourceType :: Lens' CollectdValue (Maybe Text)
1270+cvDataSourceType :: Lens' CollectdValue (Maybe CollectdValueDataSourceType)
12721271cvDataSourceType
12731272 = lens _cvDataSourceType
12741273 (\ s a -> s{_cvDataSourceType = a})
@@ -1293,7 +1292,7 @@ instance ToJSON CollectdValue where
12931292 ("dataSourceType" .=) <$> _cvDataSourceType,
12941293 ("value" .=) <$> _cvValue])
12951294
1296−-- | The \`CreateCollectdTimeSeries\` request.
1295+-- | The CreateCollectdTimeSeries request.
12971296--
12981297-- /See:/ 'createCollectdTimeSeriesRequest' smart constructor.
12991298data CreateCollectdTimeSeriesRequest = CreateCollectdTimeSeriesRequest'
@@ -1320,10 +1319,10 @@ createCollectdTimeSeriesRequest =
13201319 , _cctsrCollectdVersion = Nothing
13211320 }
13221321
1323−-- | The \`collectd\` payloads representing the time series data. You must
1324−-- not include more than a single point for each time series, so no two
1325−-- payloads can have the same values for all of the fields \`plugin\`,
1326−-- \`plugin_instance\`, \`type\`, and \`type_instance\`.
1322+-- | The collectd payloads representing the time series data. You must not
1323+-- include more than a single point for each time series, so no two
1324+-- payloads can have the same values for all of the fields plugin,
1325+-- plugin_instance, type, and type_instance.
13271326cctsrCollectdPayloads :: Lens' CreateCollectdTimeSeriesRequest [CollectdPayload]
13281327cctsrCollectdPayloads
13291328 = lens _cctsrCollectdPayloads
@@ -1337,8 +1336,8 @@ cctsrResource
13371336 = lens _cctsrResource
13381337 (\ s a -> s{_cctsrResource = a})
13391338
1340−-- | The version of \`collectd\` that collected the data. Example:
1341−-- \`\"5.3.0-192.el6\"\`.
1339+-- | The version of collectd that collected the data. Example:
1340+-- \"5.3.0-192.el6\".
13421341cctsrCollectdVersion :: Lens' CreateCollectdTimeSeriesRequest (Maybe Text)
13431342cctsrCollectdVersion
13441343 = lens _cctsrCollectdVersion
@@ -1389,7 +1388,14 @@ point =
13891388pValue :: Lens' Point (Maybe TypedValue)
13901389pValue = lens _pValue (\ s a -> s{_pValue = a})
13911390
1392−-- | The time interval to which the value applies.
1391+-- | The time interval to which the data point applies. For GAUGE metrics,
1392+-- only the end time of the interval is used. For DELTA metrics, the start
1393+-- and end time should specify a non-zero interval, with subsequent points
1394+-- specifying contiguous and non-overlapping intervals. For CUMULATIVE
1395+-- metrics, the start and end time should specify a non-zero interval, with
1396+-- subsequent points specifying the same start time and increasing end
1397+-- times, until an event resets the cumulative value to zero and sets a new
1398+-- start time for the following points.
13931399pInterval :: Lens' Point (Maybe TimeInterval)
13941400pInterval
13951401 = lens _pInterval (\ s a -> s{_pInterval = a})
@@ -1407,16 +1413,16 @@ instance ToJSON Point where
14071413 [("value" .=) <$> _pValue,
14081414 ("interval" .=) <$> _pInterval])
14091415
1410−-- | A collection of data points sent from a \`collectd\`-based plugin. See
1411−-- the \`collectd\` documentation for more information.
1416+-- | A collection of data points sent from a collectd-based plugin. See the
1417+-- collectd documentation for more information.
14121418--
14131419-- /See:/ 'collectdPayload' smart constructor.
14141420data CollectdPayload = CollectdPayload'
1415− { _cpStartTime :: !(Maybe Text)
1421+ { _cpStartTime :: !(Maybe DateTime')
14161422 , _cpPluginInstance :: !(Maybe Text)
14171423 , _cpValues :: !(Maybe [CollectdValue])
14181424 , _cpTypeInstance :: !(Maybe Text)
1419− , _cpEndTime :: !(Maybe Text)
1425+ , _cpEndTime :: !(Maybe DateTime')
14201426 , _cpMetadata :: !(Maybe CollectdPayloadMetadata)
14211427 , _cpType :: !(Maybe Text)
14221428 , _cpPlugin :: !(Maybe Text)
@@ -1456,45 +1462,47 @@ collectdPayload =
14561462 }
14571463
14581464-- | The start time of the interval.
1459−cpStartTime :: Lens' CollectdPayload (Maybe Text)
1465+cpStartTime :: Lens' CollectdPayload (Maybe UTCTime)
14601466cpStartTime
1461− = lens _cpStartTime (\ s a -> s{_cpStartTime = a})
1467+ = lens _cpStartTime (\ s a -> s{_cpStartTime = a}) .
1468+ mapping _DateTime
14621469
1463−-- | The instance name of the plugin Example: \`\"hdcl\"\`.
1470+-- | The instance name of the plugin Example: \"hdcl\".
14641471cpPluginInstance :: Lens' CollectdPayload (Maybe Text)
14651472cpPluginInstance
14661473 = lens _cpPluginInstance
14671474 (\ s a -> s{_cpPluginInstance = a})
14681475
14691476-- | The measured values during this time interval. Each value must have a
1470−-- different \`dataSourceName\`.
1477+-- different dataSourceName.
14711478cpValues :: Lens' CollectdPayload [CollectdValue]
14721479cpValues
14731480 = lens _cpValues (\ s a -> s{_cpValues = a}) .
14741481 _Default
14751482 . _Coerce
14761483
1477−-- | The measurement type instance. Example: \`\"used\"\`.
1484+-- | The measurement type instance. Example: \"used\".
14781485cpTypeInstance :: Lens' CollectdPayload (Maybe Text)
14791486cpTypeInstance
14801487 = lens _cpTypeInstance
14811488 (\ s a -> s{_cpTypeInstance = a})
14821489
14831490-- | The end time of the interval.
1484−cpEndTime :: Lens' CollectdPayload (Maybe Text)
1491+cpEndTime :: Lens' CollectdPayload (Maybe UTCTime)
14851492cpEndTime
1486− = lens _cpEndTime (\ s a -> s{_cpEndTime = a})
1493+ = lens _cpEndTime (\ s a -> s{_cpEndTime = a}) .
1494+ mapping _DateTime
14871495
1488−-- | The measurement metadata. Example: \`\"process_id\" -> 12345\`
1496+-- | The measurement metadata. Example: \"process_id\" -> 12345
14891497cpMetadata :: Lens' CollectdPayload (Maybe CollectdPayloadMetadata)
14901498cpMetadata
14911499 = lens _cpMetadata (\ s a -> s{_cpMetadata = a})
14921500
1493−-- | The measurement type. Example: \`\"memory\"\`.
1501+-- | The measurement type. Example: \"memory\".
14941502cpType :: Lens' CollectdPayload (Maybe Text)
14951503cpType = lens _cpType (\ s a -> s{_cpType = a})
14961504
1497−-- | The name of the plugin. Example: \`\"disk\"\`.
1505+-- | The name of the plugin. Example: \"disk\".
14981506cpPlugin :: Lens' CollectdPayload (Maybe Text)
14991507cpPlugin = lens _cpPlugin (\ s a -> s{_cpPlugin = a})
15001508
@@ -1525,7 +1533,7 @@ instance ToJSON CollectdPayload where
15251533 ("plugin" .=) <$> _cpPlugin])
15261534
15271535-- | A specific metric identified by specifying values for all of the labels
1528−-- of a \`MetricDescriptor\`.
1536+-- of a MetricDescriptor.
15291537--
15301538-- /See:/ 'metric' smart constructor.
15311539data Metric = Metric'
@@ -1549,13 +1557,12 @@ metric =
15491557 }
15501558
15511559-- | The set of labels that uniquely identify a metric. To specify a metric,
1552−-- all labels enumerated in the \`MetricDescriptor\` must be assigned
1553−-- values.
1560+-- all labels enumerated in the MetricDescriptor must be assigned values.
15541561mLabels :: Lens' Metric (Maybe MetricLabels)
15551562mLabels = lens _mLabels (\ s a -> s{_mLabels = a})
15561563
15571564-- | An existing metric type, see google.api.MetricDescriptor. For example,
1558−-- \`compute.googleapis.com\/instance\/cpu\/usage_time\`.
1565+-- compute.googleapis.com\/instance\/cpu\/usage_time.
15591566mType :: Lens' Metric (Maybe Text)
15601567mType = lens _mType (\ s a -> s{_mType = a})
15611568
@@ -1573,10 +1580,10 @@ instance ToJSON Metric where
15731580
15741581-- | Specify a sequence of buckets that have a width that is proportional to
15751582-- the value of the lower bound. Each bucket represents a constant relative
1576−-- uncertainty on a specific value in the bucket. Defines
1577−-- \`num_finite_buckets + 2\` (= N) buckets with these boundaries for
1578−-- bucket i: Upper bound (0 \<= i \< N-1): scale * (growth_factor ^ i).
1579−-- Lower bound (1 \<= i \< N): scale * (growth_factor ^ (i - 1)).
1583+-- uncertainty on a specific value in the bucket.Defines num_finite_buckets
1584+-- + 2 (= N) buckets with these boundaries for bucket i:Upper bound (0 \<=
1585+-- i \< N-1): scale * (growth_factor ^ i). Lower bound (1 \<= i \< N):
1586+-- scale * (growth_factor ^ (i - 1)).
15801587--
15811588-- /See:/ 'exponential' smart constructor.
15821589data Exponential = Exponential'
@@ -1603,20 +1610,20 @@ exponential =
16031610 , _eNumFiniteBuckets = Nothing
16041611 }
16051612
1606−-- | Must be greater than 1
1613+-- | Must be greater than 1.
16071614eGrowthFactor :: Lens' Exponential (Maybe Double)
16081615eGrowthFactor
16091616 = lens _eGrowthFactor
16101617 (\ s a -> s{_eGrowthFactor = a})
16111618 . mapping _Coerce
16121619
1613−-- | Must be greater than 0
1620+-- | Must be greater than 0.
16141621eScale :: Lens' Exponential (Maybe Double)
16151622eScale
16161623 = lens _eScale (\ s a -> s{_eScale = a}) .
16171624 mapping _Coerce
16181625
1619−-- | must be greater than 0
1626+-- | Must be greater than 0.
16201627eNumFiniteBuckets :: Lens' Exponential (Maybe Int32)
16211628eNumFiniteBuckets
16221629 = lens _eNumFiniteBuckets
@@ -1687,15 +1694,15 @@ instance ToJSON Range where
16871694
16881695-- | An object representing a resource that can be used for monitoring,
16891696-- logging, billing, or other purposes. Examples include virtual machine
1690−-- instances, databases, and storage devices such as disks. The \`type\`
1691−-- field identifies a MonitoredResourceDescriptor object that describes the
1692−-- resource\'s schema. Information in the \`labels\` field identifies the
1697+-- instances, databases, and storage devices such as disks. The type field
1698+-- identifies a MonitoredResourceDescriptor object that describes the
1699+-- resource\'s schema. Information in the labels field identifies the
16931700-- actual resource and its attributes according to the schema. For example,
16941701-- a particular Compute Engine VM instance could be represented by the
16951702-- following object, because the MonitoredResourceDescriptor for
1696−-- \`\"gce_instance\"\` has labels \`\"instance_id\"\` and \`\"zone\"\`: {
1697−-- \"type\": \"gce_instance\", \"labels\": { \"instance_id\":
1698−-- \"my-instance\", \"zone\": \"us-central1-a\" }}
1703+-- \"gce_instance\" has labels \"instance_id\" and \"zone\": { \"type\":
1704+-- \"gce_instance\", \"labels\": { \"instance_id\": \"12345678901234\",
1705+-- \"zone\": \"us-central1-a\" }}
16991706--
17001707-- /See:/ 'monitoredResource' smart constructor.
17011708data MonitoredResource = MonitoredResource'
@@ -1720,13 +1727,13 @@ monitoredResource =
17201727
17211728-- | Required. Values for all of the labels listed in the associated
17221729-- monitored resource descriptor. For example, Cloud SQL databases use the
1723−-- labels \`\"database_id\"\` and \`\"zone\"\`.
1730+-- labels \"database_id\" and \"zone\".
17241731mrLabels :: Lens' MonitoredResource (Maybe MonitoredResourceLabels)
17251732mrLabels = lens _mrLabels (\ s a -> s{_mrLabels = a})
17261733
1727−-- | Required. The monitored resource type. This field must match the
1728−-- \`type\` field of a MonitoredResourceDescriptor object. For example, the
1729−-- type of a Cloud SQL database is \`\"cloudsql_database\"\`.
1734+-- | Required. The monitored resource type. This field must match the type
1735+-- field of a MonitoredResourceDescriptor object. For example, the type of
1736+-- a Cloud SQL database is \"cloudsql_database\".
17301737mrType :: Lens' MonitoredResource (Maybe Text)
17311738mrType = lens _mrType (\ s a -> s{_mrType = a})
17321739
@@ -1744,14 +1751,14 @@ instance ToJSON MonitoredResource where
17441751 [("labels" .=) <$> _mrLabels,
17451752 ("type" .=) <$> _mrType])
17461753
1747−-- | A time interval extending from after \`startTime\` through \`endTime\`.
1748−-- If \`startTime\` is omitted, the interval is the single point in time,
1749−-- \`endTime\`.
1754+-- | A time interval extending just after a start time through an end time.
1755+-- If the start time is the same as the end time, then the interval
1756+-- represents a single point in time.
17501757--
17511758-- /See:/ 'timeInterval' smart constructor.
17521759data TimeInterval = TimeInterval'
1753− { _tiStartTime :: !(Maybe Text)
1754− , _tiEndTime :: !(Maybe Text)
1760+ { _tiStartTime :: !(Maybe DateTime')
1761+ , _tiEndTime :: !(Maybe DateTime')
17551762 } deriving (Eq,Show,Data,Typeable,Generic)
17561763
17571764-- | Creates a value of 'TimeInterval' with the minimum fields required to make a request.
@@ -1769,18 +1776,19 @@ timeInterval =
17691776 , _tiEndTime = Nothing
17701777 }
17711778
1772−-- | If this value is omitted, the interval is a point in time, \`endTime\`.
1773−-- If \`startTime\` is present, it must be earlier than (less than)
1774−-- \`endTime\`. The interval begins after \`startTime\`—it does not include
1775−-- \`startTime\`.
1776−tiStartTime :: Lens' TimeInterval (Maybe Text)
1779+-- | Optional. The beginning of the time interval. The default value for the
1780+-- start time is the end time. The start time must not be later than the
1781+-- end time.
1782+tiStartTime :: Lens' TimeInterval (Maybe UTCTime)
17771783tiStartTime
1778− = lens _tiStartTime (\ s a -> s{_tiStartTime = a})
1784+ = lens _tiStartTime (\ s a -> s{_tiStartTime = a}) .
1785+ mapping _DateTime
17791786
1780−-- | Required. The end of the interval. The interval includes this time.
1781−tiEndTime :: Lens' TimeInterval (Maybe Text)
1787+-- | Required. The end of the time interval.
1788+tiEndTime :: Lens' TimeInterval (Maybe UTCTime)
17821789tiEndTime
1783− = lens _tiEndTime (\ s a -> s{_tiEndTime = a})
1790+ = lens _tiEndTime (\ s a -> s{_tiEndTime = a}) .
1791+ mapping _DateTime
17841792
17851793instance FromJSON TimeInterval where
17861794 parseJSON
@@ -1796,7 +1804,7 @@ instance ToJSON TimeInterval where
17961804 [("startTime" .=) <$> _tiStartTime,
17971805 ("endTime" .=) <$> _tiEndTime])
17981806
1799−-- | The \`ListGroupMembers\` response.
1807+-- | The ListGroupMembers response.
18001808--
18011809-- /See:/ 'listGroupMembersResponse' smart constructor.
18021810data ListGroupMembersResponse = ListGroupMembersResponse'
@@ -1825,7 +1833,7 @@ listGroupMembersResponse =
18251833
18261834-- | If there are more results than have been returned, then this field is
18271835-- set to a non-empty value. To see the additional results, use that value
1828−-- as \`pageToken\` in the next call to this method.
1836+-- as pageToken in the next call to this method.
18291837lgmrNextPageToken :: Lens' ListGroupMembersResponse (Maybe Text)
18301838lgmrNextPageToken
18311839 = lens _lgmrNextPageToken
@@ -1867,7 +1875,7 @@ instance ToJSON ListGroupMembersResponse where
18671875-- /See:/ 'labelDescriptor' smart constructor.
18681876data LabelDescriptor = LabelDescriptor'
18691877 { _ldKey :: !(Maybe Text)
1870− , _ldValueType :: !(Maybe Text)
1878+ , _ldValueType :: !(Maybe LabelDescriptorValueType)
18711879 , _ldDescription :: !(Maybe Text)
18721880 } deriving (Eq,Show,Data,Typeable,Generic)
18731881
@@ -1894,7 +1902,7 @@ ldKey :: Lens' LabelDescriptor (Maybe Text)
18941902ldKey = lens _ldKey (\ s a -> s{_ldKey = a})
18951903
18961904-- | The type of data that can be assigned to the label.
1897−ldValueType :: Lens' LabelDescriptor (Maybe Text)
1905+ldValueType :: Lens' LabelDescriptor (Maybe LabelDescriptorValueType)
18981906ldValueType
18991907 = lens _ldValueType (\ s a -> s{_ldValueType = a})
19001908
@@ -1922,10 +1930,10 @@ instance ToJSON LabelDescriptor where
19221930
19231931-- | Specify a sequence of buckets that all have the same width (except
19241932-- overflow and underflow). Each bucket represents a constant absolute
1925−-- uncertainty on the specific value in the bucket. Defines
1926−-- \`num_finite_buckets + 2\` (= N) buckets with these boundaries for
1927−-- bucket \`i\`: Upper bound (0 \<= i \< N-1): offset + (width * i). Lower
1928−-- bound (1 \<= i \< N): offset + (width * (i - 1)).
1933+-- uncertainty on the specific value in the bucket.Defines
1934+-- num_finite_buckets + 2 (= N) buckets with these boundaries for bucket
1935+-- i:Upper bound (0 \<= i \< N-1): offset + (width * i). Lower bound (1 \<=
1936+-- i \< N): offset + (width * (i - 1)).
19291937--
19301938-- /See:/ 'linear' smart constructor.
19311939data Linear = Linear'
@@ -1996,7 +2004,7 @@ data Type = Type'
19962004 , _tName :: !(Maybe Text)
19972005 , _tOptions :: !(Maybe [Option])
19982006 , _tFields :: !(Maybe [Field])
1999− , _tSyntax :: !(Maybe Text)
2007+ , _tSyntax :: !(Maybe TypeSyntax)
20002008 } deriving (Eq,Show,Data,Typeable,Generic)
20012009
20022010-- | Creates a value of 'Type' with the minimum fields required to make a request.
@@ -2032,7 +2040,7 @@ tSourceContext
20322040 = lens _tSourceContext
20332041 (\ s a -> s{_tSourceContext = a})
20342042
2035−-- | The list of types appearing in \`oneof\` definitions in this type.
2043+-- | The list of types appearing in oneof definitions in this type.
20362044tOneofs :: Lens' Type [Text]
20372045tOneofs
20382046 = lens _tOneofs (\ s a -> s{_tOneofs = a}) . _Default
@@ -2056,7 +2064,7 @@ tFields
20562064 . _Coerce
20572065
20582066-- | The source syntax.
2059−tSyntax :: Lens' Type (Maybe Text)
2067+tSyntax :: Lens' Type (Maybe TypeSyntax)
20602068tSyntax = lens _tSyntax (\ s a -> s{_tSyntax = a})
20612069
20622070instance FromJSON Type where
@@ -2105,11 +2113,11 @@ option =
21052113 , _oName = Nothing
21062114 }
21072115
2108−-- | The option\'s value. For example, \`\"com.google.protobuf\"\`.
2116+-- | The option\'s value. For example, \"com.google.protobuf\".
21092117oValue :: Lens' Option (Maybe OptionValue)
21102118oValue = lens _oValue (\ s a -> s{_oValue = a})
21112119
2112−-- | The option\'s name. For example, \`\"java_package\"\`.
2120+-- | The option\'s name. For example, \"java_package\".
21132121oName :: Lens' Option (Maybe Text)
21142122oName = lens _oName (\ s a -> s{_oName = a})
21152123
@@ -2126,23 +2134,23 @@ instance ToJSON Option where
21262134 [("value" .=) <$> _oValue, ("name" .=) <$> _oName])
21272135
21282136-- | A Distribution may optionally contain a histogram of the values in the
2129−-- population. The histogram is given in \`bucket_counts\` as counts of
2130−-- values that fall into one of a sequence of non-overlapping buckets. The
2131−-- sequence of buckets is described by \`bucket_options\`. A bucket
2132−-- specifies an inclusive lower bound and exclusive upper bound for the
2133−-- values that are counted for that bucket. The upper bound of a bucket is
2134−-- strictly greater than the lower bound. The sequence of N buckets for a
2135−-- Distribution consists of an underflow bucket (number 0), zero or more
2136−-- finite buckets (number 1 through N - 2) and an overflow bucket (number N
2137−-- - 1). The buckets are contiguous: the lower bound of bucket i (i > 0) is
2138−-- the same as the upper bound of bucket i - 1. The buckets span the whole
2139−-- range of finite values: lower bound of the underflow bucket is -infinity
2140−-- and the upper bound of the overflow bucket is +infinity. The finite
2141−-- buckets are so-called because both bounds are finite. \`BucketOptions\`
2142−-- describes bucket boundaries in one of three ways. Two describe the
2143−-- boundaries by giving parameters for a formula to generate boundaries and
2144−-- one gives the bucket boundaries explicitly. If \`bucket_boundaries\` is
2145−-- not given, then no \`bucket_counts\` may be given.
2137+-- population. The histogram is given in bucket_counts as counts of values
2138+-- that fall into one of a sequence of non-overlapping buckets. The
2139+-- sequence of buckets is described by bucket_options.A bucket specifies an
2140+-- inclusive lower bound and exclusive upper bound for the values that are
2141+-- counted for that bucket. The upper bound of a bucket is strictly greater
2142+-- than the lower bound.The sequence of N buckets for a Distribution
2143+-- consists of an underflow bucket (number 0), zero or more finite buckets
2144+-- (number 1 through N - 2) and an overflow bucket (number N - 1). The
2145+-- buckets are contiguous: the lower bound of bucket i (i > 0) is the same
2146+-- as the upper bound of bucket i - 1. The buckets span the whole range of
2147+-- finite values: lower bound of the underflow bucket is -infinity and the
2148+-- upper bound of the overflow bucket is +infinity. The finite buckets are
2149+-- so-called because both bounds are finite.BucketOptions describes bucket
2150+-- boundaries in one of three ways. Two describe the boundaries by giving
2151+-- parameters for a formula to generate boundaries and one gives the bucket
2152+-- boundaries explicitly.If bucket_options is not given, then no
2153+-- bucket_counts may be given.
21462154--
21472155-- /See:/ 'bucketOptions' smart constructor.
21482156data BucketOptions = BucketOptions'
@@ -2204,17 +2212,18 @@ instance ToJSON BucketOptions where
22042212 ("linearBuckets" .=) <$> _boLinearBuckets,
22052213 ("explicitBuckets" .=) <$> _boExplicitBuckets])
22062214
2207−-- | A collection of data points that describes the time-varying nature of a
2215+-- | A collection of data points that describes the time-varying values of a
22082216-- metric. A time series is identified by a combination of a
2209−-- fully-specified monitored resource and a fully-specified metric.
2217+-- fully-specified monitored resource and a fully-specified metric. This
2218+-- type is used for both listing and creating time series.
22102219--
22112220-- /See:/ 'timeSeries' smart constructor.
22122221data TimeSeries = TimeSeries'
22132222 { _tsPoints :: !(Maybe [Point])
2214− , _tsMetricKind :: !(Maybe Text)
2223+ , _tsMetricKind :: !(Maybe TimeSeriesMetricKind)
22152224 , _tsMetric :: !(Maybe Metric)
22162225 , _tsResource :: !(Maybe MonitoredResource)
2217− , _tsValueType :: !(Maybe Text)
2226+ , _tsValueType :: !(Maybe TimeSeriesValueType)
22182227 } deriving (Eq,Show,Data,Typeable,Generic)
22192228
22202229-- | Creates a value of 'TimeSeries' with the minimum fields required to make a request.
@@ -2241,39 +2250,48 @@ timeSeries =
22412250 , _tsValueType = Nothing
22422251 }
22432252
2244−-- | The data points of this time series. When used as output, points will be
2245−-- sorted by decreasing time order. When used as input, points could be
2246−-- written in any orders.
2253+-- | The data points of this time series. When listing time series, the order
2254+-- of the points is specified by the list method.When creating a time
2255+-- series, this field must contain exactly one point and the point\'s type
2256+-- must be the same as the value type of the associated metric. If the
2257+-- associated metric\'s descriptor must be auto-created, then the value
2258+-- type of the descriptor is determined by the point\'s type, which must be
2259+-- BOOL, INT64, DOUBLE, or DISTRIBUTION.
22472260tsPoints :: Lens' TimeSeries [Point]
22482261tsPoints
22492262 = lens _tsPoints (\ s a -> s{_tsPoints = a}) .
22502263 _Default
22512264 . _Coerce
22522265
2253−-- | The metric kind of the time series. This can be different than the
2254−-- metric kind specified in [google.api.MetricDescriptor] because of
2255−-- alignment and reduction operations on the data. This field is ignored
2256−-- when writing data; the value specified in the descriptor is used
2257−-- instead. \'OutputOnly
2258−tsMetricKind :: Lens' TimeSeries (Maybe Text)
2266+-- | The metric kind of the time series. When listing time series, this
2267+-- metric kind might be different from the metric kind of the associated
2268+-- metric if this time series is an alignment or reduction of other time
2269+-- series.When creating a time series, this field is optional. If present,
2270+-- it must be the same as the metric kind of the associated metric. If the
2271+-- associated metric\'s descriptor must be auto-created, then this field
2272+-- specifies the metric kind of the new descriptor and must be either GAUGE
2273+-- (the default) or CUMULATIVE.
2274+tsMetricKind :: Lens' TimeSeries (Maybe TimeSeriesMetricKind)
22592275tsMetricKind
22602276 = lens _tsMetricKind (\ s a -> s{_tsMetricKind = a})
22612277
2262−-- | The fully-specified metric used to identify the time series.
2278+-- | The associated metric. A fully-specified metric used to identify the
2279+-- time series.
22632280tsMetric :: Lens' TimeSeries (Maybe Metric)
22642281tsMetric = lens _tsMetric (\ s a -> s{_tsMetric = a})
22652282
2266−-- | The fully-specified monitored resource used to identify the time series.
2283+-- | The associated resource. A fully-specified monitored resource used to
2284+-- identify the time series.
22672285tsResource :: Lens' TimeSeries (Maybe MonitoredResource)
22682286tsResource
22692287 = lens _tsResource (\ s a -> s{_tsResource = a})
22702288
2271−-- | The value type of the time series. This can be different than the value
2272−-- type specified in [google.api.MetricDescriptor] because of alignment and
2273−-- reduction operations on the data. This field is ignored when writing
2274−-- data; the value specified in the descriptor is used instead.
2275−-- \'OutputOnly
2276−tsValueType :: Lens' TimeSeries (Maybe Text)
2289+-- | The value type of the time series. When listing time series, this value
2290+-- type might be different from the value type of the associated metric if
2291+-- this time series is an alignment or reduction of other time series.When
2292+-- creating a time series, this field is optional. If present, it must be
2293+-- the same as the type of the data in the points field.
2294+tsValueType :: Lens' TimeSeries (Maybe TimeSeriesValueType)
22772295tsValueType
22782296 = lens _tsValueType (\ s a -> s{_tsValueType = a})
22792297
gogol-monitoring/gen/Network/Google/Monitoring/Types/Sum.hs+503
@@ -17,3 +17,506 @@
1717module Network.Google.Monitoring.Types.Sum where
1818
1919import Network.Google.Prelude
20+
21+-- | Whether the measurement is an integer, a floating-point number, etc.
22+-- Some combinations of metric_kind and value_type might not be supported.
23+data MetricDescriptorValueType
24+ = MDVTValueTypeUnspecified
25+ -- ^ @VALUE_TYPE_UNSPECIFIED@
26+ -- Do not use this default value.
27+ | MDVTBool
28+ -- ^ @BOOL@
29+ -- The value is a boolean. This value type can be used only if the metric
30+ -- kind is GAUGE.
31+ | MDVTINT64
32+ -- ^ @INT64@
33+ -- The value is a signed 64-bit integer.
34+ | MDVTDouble
35+ -- ^ @DOUBLE@
36+ -- The value is a double precision floating point number.
37+ | MDVTString
38+ -- ^ @STRING@
39+ -- The value is a text string. This value type can be used only if the
40+ -- metric kind is GAUGE.
41+ | MDVTDistribution
42+ -- ^ @DISTRIBUTION@
43+ -- The value is a Distribution.
44+ | MDVTMoney
45+ -- ^ @MONEY@
46+ -- The value is money.
47+ deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
48+
49+instance Hashable MetricDescriptorValueType
50+
51+instance FromHttpApiData MetricDescriptorValueType where
52+ parseQueryParam = \case
53+ "VALUE_TYPE_UNSPECIFIED" -> Right MDVTValueTypeUnspecified
54+ "BOOL" -> Right MDVTBool
55+ "INT64" -> Right MDVTINT64
56+ "DOUBLE" -> Right MDVTDouble
57+ "STRING" -> Right MDVTString
58+ "DISTRIBUTION" -> Right MDVTDistribution
59+ "MONEY" -> Right MDVTMoney
60+ x -> Left ("Unable to parse MetricDescriptorValueType from: " <> x)
61+
62+instance ToHttpApiData MetricDescriptorValueType where
63+ toQueryParam = \case
64+ MDVTValueTypeUnspecified -> "VALUE_TYPE_UNSPECIFIED"
65+ MDVTBool -> "BOOL"
66+ MDVTINT64 -> "INT64"
67+ MDVTDouble -> "DOUBLE"
68+ MDVTString -> "STRING"
69+ MDVTDistribution -> "DISTRIBUTION"
70+ MDVTMoney -> "MONEY"
71+
72+instance FromJSON MetricDescriptorValueType where
73+ parseJSON = parseJSONText "MetricDescriptorValueType"
74+
75+instance ToJSON MetricDescriptorValueType where
76+ toJSON = toJSONText
77+
78+-- | The type of measurement.
79+data CollectdValueDataSourceType
80+ = UnspecifiedDataSourceType
81+ -- ^ @UNSPECIFIED_DATA_SOURCE_TYPE@
82+ -- An unspecified data source type. This corresponds to
83+ -- google.api.MetricDescriptor.MetricKind.METRIC_KIND_UNSPECIFIED.
84+ | Gauge
85+ -- ^ @GAUGE@
86+ -- An instantaneous measurement of a varying quantity. This corresponds to
87+ -- google.api.MetricDescriptor.MetricKind.GAUGE.
88+ | Counter
89+ -- ^ @COUNTER@
90+ -- A cumulative value over time. This corresponds to
91+ -- google.api.MetricDescriptor.MetricKind.CUMULATIVE.
92+ | Derive
93+ -- ^ @DERIVE@
94+ -- A rate of change of the measurement.
95+ | Absolute
96+ -- ^ @ABSOLUTE@
97+ -- An amount of change since the last measurement interval. This
98+ -- corresponds to google.api.MetricDescriptor.MetricKind.DELTA.
99+ deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
100+
101+instance Hashable CollectdValueDataSourceType
102+
103+instance FromHttpApiData CollectdValueDataSourceType where
104+ parseQueryParam = \case
105+ "UNSPECIFIED_DATA_SOURCE_TYPE" -> Right UnspecifiedDataSourceType
106+ "GAUGE" -> Right Gauge
107+ "COUNTER" -> Right Counter
108+ "DERIVE" -> Right Derive
109+ "ABSOLUTE" -> Right Absolute
110+ x -> Left ("Unable to parse CollectdValueDataSourceType from: " <> x)
111+
112+instance ToHttpApiData CollectdValueDataSourceType where
113+ toQueryParam = \case
114+ UnspecifiedDataSourceType -> "UNSPECIFIED_DATA_SOURCE_TYPE"
115+ Gauge -> "GAUGE"
116+ Counter -> "COUNTER"
117+ Derive -> "DERIVE"
118+ Absolute -> "ABSOLUTE"
119+
120+instance FromJSON CollectdValueDataSourceType where
121+ parseJSON = parseJSONText "CollectdValueDataSourceType"
122+
123+instance ToJSON CollectdValueDataSourceType where
124+ toJSON = toJSONText
125+
126+-- | The field type.
127+data FieldKind
128+ = TypeUnknown
129+ -- ^ @TYPE_UNKNOWN@
130+ -- Field type unknown.
131+ | TypeDouble
132+ -- ^ @TYPE_DOUBLE@
133+ -- Field type double.
134+ | TypeFloat
135+ -- ^ @TYPE_FLOAT@
136+ -- Field type float.
137+ | TypeINT64
138+ -- ^ @TYPE_INT64@
139+ -- Field type int64.
140+ | TypeUINT64
141+ -- ^ @TYPE_UINT64@
142+ -- Field type uint64.
143+ | TypeINT32
144+ -- ^ @TYPE_INT32@
145+ -- Field type int32.
146+ | TypeFIXED64
147+ -- ^ @TYPE_FIXED64@
148+ -- Field type fixed64.
149+ | TypeFIXED32
150+ -- ^ @TYPE_FIXED32@
151+ -- Field type fixed32.
152+ | TypeBool
153+ -- ^ @TYPE_BOOL@
154+ -- Field type bool.
155+ | TypeString
156+ -- ^ @TYPE_STRING@
157+ -- Field type string.
158+ | TypeGroup
159+ -- ^ @TYPE_GROUP@
160+ -- Field type group. Proto2 syntax only, and deprecated.
161+ | TypeMessage
162+ -- ^ @TYPE_MESSAGE@
163+ -- Field type message.
164+ | TypeBytes
165+ -- ^ @TYPE_BYTES@
166+ -- Field type bytes.
167+ | TypeUINT32
168+ -- ^ @TYPE_UINT32@
169+ -- Field type uint32.
170+ | TypeEnum
171+ -- ^ @TYPE_ENUM@
172+ -- Field type enum.
173+ | TypeSFIXED32
174+ -- ^ @TYPE_SFIXED32@
175+ -- Field type sfixed32.
176+ | TypeSFIXED64
177+ -- ^ @TYPE_SFIXED64@
178+ -- Field type sfixed64.
179+ | TypeSINT32
180+ -- ^ @TYPE_SINT32@
181+ -- Field type sint32.
182+ | TypeSINT64
183+ -- ^ @TYPE_SINT64@
184+ -- Field type sint64.
185+ deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
186+
187+instance Hashable FieldKind
188+
189+instance FromHttpApiData FieldKind where
190+ parseQueryParam = \case
191+ "TYPE_UNKNOWN" -> Right TypeUnknown
192+ "TYPE_DOUBLE" -> Right TypeDouble
193+ "TYPE_FLOAT" -> Right TypeFloat
194+ "TYPE_INT64" -> Right TypeINT64
195+ "TYPE_UINT64" -> Right TypeUINT64
196+ "TYPE_INT32" -> Right TypeINT32
197+ "TYPE_FIXED64" -> Right TypeFIXED64
198+ "TYPE_FIXED32" -> Right TypeFIXED32
199+ "TYPE_BOOL" -> Right TypeBool
200+ "TYPE_STRING" -> Right TypeString
201+ "TYPE_GROUP" -> Right TypeGroup
202+ "TYPE_MESSAGE" -> Right TypeMessage
203+ "TYPE_BYTES" -> Right TypeBytes
204+ "TYPE_UINT32" -> Right TypeUINT32
205+ "TYPE_ENUM" -> Right TypeEnum
206+ "TYPE_SFIXED32" -> Right TypeSFIXED32
207+ "TYPE_SFIXED64" -> Right TypeSFIXED64
208+ "TYPE_SINT32" -> Right TypeSINT32
209+ "TYPE_SINT64" -> Right TypeSINT64
210+ x -> Left ("Unable to parse FieldKind from: " <> x)
211+
212+instance ToHttpApiData FieldKind where
213+ toQueryParam = \case
214+ TypeUnknown -> "TYPE_UNKNOWN"
215+ TypeDouble -> "TYPE_DOUBLE"
216+ TypeFloat -> "TYPE_FLOAT"
217+ TypeINT64 -> "TYPE_INT64"
218+ TypeUINT64 -> "TYPE_UINT64"
219+ TypeINT32 -> "TYPE_INT32"
220+ TypeFIXED64 -> "TYPE_FIXED64"
221+ TypeFIXED32 -> "TYPE_FIXED32"
222+ TypeBool -> "TYPE_BOOL"
223+ TypeString -> "TYPE_STRING"
224+ TypeGroup -> "TYPE_GROUP"
225+ TypeMessage -> "TYPE_MESSAGE"
226+ TypeBytes -> "TYPE_BYTES"
227+ TypeUINT32 -> "TYPE_UINT32"
228+ TypeEnum -> "TYPE_ENUM"
229+ TypeSFIXED32 -> "TYPE_SFIXED32"
230+ TypeSFIXED64 -> "TYPE_SFIXED64"
231+ TypeSINT32 -> "TYPE_SINT32"
232+ TypeSINT64 -> "TYPE_SINT64"
233+
234+instance FromJSON FieldKind where
235+ parseJSON = parseJSONText "FieldKind"
236+
237+instance ToJSON FieldKind where
238+ toJSON = toJSONText
239+
240+-- | The type of data that can be assigned to the label.
241+data LabelDescriptorValueType
242+ = String
243+ -- ^ @STRING@
244+ -- A variable-length string. This is the default.
245+ | Bool
246+ -- ^ @BOOL@
247+ -- Boolean; true or false.
248+ | INT64
249+ -- ^ @INT64@
250+ -- A 64-bit signed integer.
251+ deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
252+
253+instance Hashable LabelDescriptorValueType
254+
255+instance FromHttpApiData LabelDescriptorValueType where
256+ parseQueryParam = \case
257+ "STRING" -> Right String
258+ "BOOL" -> Right Bool
259+ "INT64" -> Right INT64
260+ x -> Left ("Unable to parse LabelDescriptorValueType from: " <> x)
261+
262+instance ToHttpApiData LabelDescriptorValueType where
263+ toQueryParam = \case
264+ String -> "STRING"
265+ Bool -> "BOOL"
266+ INT64 -> "INT64"
267+
268+instance FromJSON LabelDescriptorValueType where
269+ parseJSON = parseJSONText "LabelDescriptorValueType"
270+
271+instance ToJSON LabelDescriptorValueType where
272+ toJSON = toJSONText
273+
274+-- | The source syntax.
275+data TypeSyntax
276+ = SyntaxPROTO2
277+ -- ^ @SYNTAX_PROTO2@
278+ -- Syntax proto2.
279+ | SyntaxPROTO3
280+ -- ^ @SYNTAX_PROTO3@
281+ -- Syntax proto3.
282+ deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
283+
284+instance Hashable TypeSyntax
285+
286+instance FromHttpApiData TypeSyntax where
287+ parseQueryParam = \case
288+ "SYNTAX_PROTO2" -> Right SyntaxPROTO2
289+ "SYNTAX_PROTO3" -> Right SyntaxPROTO3
290+ x -> Left ("Unable to parse TypeSyntax from: " <> x)
291+
292+instance ToHttpApiData TypeSyntax where
293+ toQueryParam = \case
294+ SyntaxPROTO2 -> "SYNTAX_PROTO2"
295+ SyntaxPROTO3 -> "SYNTAX_PROTO3"
296+
297+instance FromJSON TypeSyntax where
298+ parseJSON = parseJSONText "TypeSyntax"
299+
300+instance ToJSON TypeSyntax where
301+ toJSON = toJSONText
302+
303+-- | V1 error format.
304+data Xgafv
305+ = X1
306+ -- ^ @1@
307+ -- v1 error format
308+ | X2
309+ -- ^ @2@
310+ -- v2 error format
311+ deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
312+
313+instance Hashable Xgafv
314+
315+instance FromHttpApiData Xgafv where
316+ parseQueryParam = \case
317+ "1" -> Right X1
318+ "2" -> Right X2
319+ x -> Left ("Unable to parse Xgafv from: " <> x)
320+
321+instance ToHttpApiData Xgafv where
322+ toQueryParam = \case
323+ X1 -> "1"
324+ X2 -> "2"
325+
326+instance FromJSON Xgafv where
327+ parseJSON = parseJSONText "Xgafv"
328+
329+instance ToJSON Xgafv where
330+ toJSON = toJSONText
331+
332+-- | The metric kind of the time series. When listing time series, this
333+-- metric kind might be different from the metric kind of the associated
334+-- metric if this time series is an alignment or reduction of other time
335+-- series.When creating a time series, this field is optional. If present,
336+-- it must be the same as the metric kind of the associated metric. If the
337+-- associated metric\'s descriptor must be auto-created, then this field
338+-- specifies the metric kind of the new descriptor and must be either GAUGE
339+-- (the default) or CUMULATIVE.
340+data TimeSeriesMetricKind
341+ = TSMKMetricKindUnspecified
342+ -- ^ @METRIC_KIND_UNSPECIFIED@
343+ -- Do not use this default value.
344+ | TSMKGauge
345+ -- ^ @GAUGE@
346+ -- An instantaneous measurement of a value.
347+ | TSMKDelta
348+ -- ^ @DELTA@
349+ -- The change in a value during a time interval.
350+ | TSMKCumulative
351+ -- ^ @CUMULATIVE@
352+ -- A value accumulated over a time interval. Cumulative measurements in a
353+ -- time series should have the same start time and increasing end times,
354+ -- until an event resets the cumulative value to zero and sets a new start
355+ -- time for the following points.
356+ deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
357+
358+instance Hashable TimeSeriesMetricKind
359+
360+instance FromHttpApiData TimeSeriesMetricKind where
361+ parseQueryParam = \case
362+ "METRIC_KIND_UNSPECIFIED" -> Right TSMKMetricKindUnspecified
363+ "GAUGE" -> Right TSMKGauge
364+ "DELTA" -> Right TSMKDelta
365+ "CUMULATIVE" -> Right TSMKCumulative
366+ x -> Left ("Unable to parse TimeSeriesMetricKind from: " <> x)
367+
368+instance ToHttpApiData TimeSeriesMetricKind where
369+ toQueryParam = \case
370+ TSMKMetricKindUnspecified -> "METRIC_KIND_UNSPECIFIED"
371+ TSMKGauge -> "GAUGE"
372+ TSMKDelta -> "DELTA"
373+ TSMKCumulative -> "CUMULATIVE"
374+
375+instance FromJSON TimeSeriesMetricKind where
376+ parseJSON = parseJSONText "TimeSeriesMetricKind"
377+
378+instance ToJSON TimeSeriesMetricKind where
379+ toJSON = toJSONText
380+
381+-- | The value type of the time series. When listing time series, this value
382+-- type might be different from the value type of the associated metric if
383+-- this time series is an alignment or reduction of other time series.When
384+-- creating a time series, this field is optional. If present, it must be
385+-- the same as the type of the data in the points field.
386+data TimeSeriesValueType
387+ = TSVTValueTypeUnspecified
388+ -- ^ @VALUE_TYPE_UNSPECIFIED@
389+ -- Do not use this default value.
390+ | TSVTBool
391+ -- ^ @BOOL@
392+ -- The value is a boolean. This value type can be used only if the metric
393+ -- kind is GAUGE.
394+ | TSVTINT64
395+ -- ^ @INT64@
396+ -- The value is a signed 64-bit integer.
397+ | TSVTDouble
398+ -- ^ @DOUBLE@
399+ -- The value is a double precision floating point number.
400+ | TSVTString
401+ -- ^ @STRING@
402+ -- The value is a text string. This value type can be used only if the
403+ -- metric kind is GAUGE.
404+ | TSVTDistribution
405+ -- ^ @DISTRIBUTION@
406+ -- The value is a Distribution.
407+ | TSVTMoney
408+ -- ^ @MONEY@
409+ -- The value is money.
410+ deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
411+
412+instance Hashable TimeSeriesValueType
413+
414+instance FromHttpApiData TimeSeriesValueType where
415+ parseQueryParam = \case
416+ "VALUE_TYPE_UNSPECIFIED" -> Right TSVTValueTypeUnspecified
417+ "BOOL" -> Right TSVTBool
418+ "INT64" -> Right TSVTINT64
419+ "DOUBLE" -> Right TSVTDouble
420+ "STRING" -> Right TSVTString
421+ "DISTRIBUTION" -> Right TSVTDistribution
422+ "MONEY" -> Right TSVTMoney
423+ x -> Left ("Unable to parse TimeSeriesValueType from: " <> x)
424+
425+instance ToHttpApiData TimeSeriesValueType where
426+ toQueryParam = \case
427+ TSVTValueTypeUnspecified -> "VALUE_TYPE_UNSPECIFIED"
428+ TSVTBool -> "BOOL"
429+ TSVTINT64 -> "INT64"
430+ TSVTDouble -> "DOUBLE"
431+ TSVTString -> "STRING"
432+ TSVTDistribution -> "DISTRIBUTION"
433+ TSVTMoney -> "MONEY"
434+
435+instance FromJSON TimeSeriesValueType where
436+ parseJSON = parseJSONText "TimeSeriesValueType"
437+
438+instance ToJSON TimeSeriesValueType where
439+ toJSON = toJSONText
440+
441+-- | The field cardinality.
442+data FieldCardinality
443+ = CardinalityUnknown
444+ -- ^ @CARDINALITY_UNKNOWN@
445+ -- For fields with unknown cardinality.
446+ | CardinalityOptional
447+ -- ^ @CARDINALITY_OPTIONAL@
448+ -- For optional fields.
449+ | CardinalityRequired
450+ -- ^ @CARDINALITY_REQUIRED@
451+ -- For required fields. Proto2 syntax only.
452+ | CardinalityRepeated
453+ -- ^ @CARDINALITY_REPEATED@
454+ -- For repeated fields.
455+ deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
456+
457+instance Hashable FieldCardinality
458+
459+instance FromHttpApiData FieldCardinality where
460+ parseQueryParam = \case
461+ "CARDINALITY_UNKNOWN" -> Right CardinalityUnknown
462+ "CARDINALITY_OPTIONAL" -> Right CardinalityOptional
463+ "CARDINALITY_REQUIRED" -> Right CardinalityRequired
464+ "CARDINALITY_REPEATED" -> Right CardinalityRepeated
465+ x -> Left ("Unable to parse FieldCardinality from: " <> x)
466+
467+instance ToHttpApiData FieldCardinality where
468+ toQueryParam = \case
469+ CardinalityUnknown -> "CARDINALITY_UNKNOWN"
470+ CardinalityOptional -> "CARDINALITY_OPTIONAL"
471+ CardinalityRequired -> "CARDINALITY_REQUIRED"
472+ CardinalityRepeated -> "CARDINALITY_REPEATED"
473+
474+instance FromJSON FieldCardinality where
475+ parseJSON = parseJSONText "FieldCardinality"
476+
477+instance ToJSON FieldCardinality where
478+ toJSON = toJSONText
479+
480+-- | Whether the metric records instantaneous values, changes to a value,
481+-- etc. Some combinations of metric_kind and value_type might not be
482+-- supported.
483+data MetricDescriptorMetricKind
484+ = MDMKMetricKindUnspecified
485+ -- ^ @METRIC_KIND_UNSPECIFIED@
486+ -- Do not use this default value.
487+ | MDMKGauge
488+ -- ^ @GAUGE@
489+ -- An instantaneous measurement of a value.
490+ | MDMKDelta
491+ -- ^ @DELTA@
492+ -- The change in a value during a time interval.
493+ | MDMKCumulative
494+ -- ^ @CUMULATIVE@
495+ -- A value accumulated over a time interval. Cumulative measurements in a
496+ -- time series should have the same start time and increasing end times,
497+ -- until an event resets the cumulative value to zero and sets a new start
498+ -- time for the following points.
499+ deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
500+
501+instance Hashable MetricDescriptorMetricKind
502+
503+instance FromHttpApiData MetricDescriptorMetricKind where
504+ parseQueryParam = \case
505+ "METRIC_KIND_UNSPECIFIED" -> Right MDMKMetricKindUnspecified
506+ "GAUGE" -> Right MDMKGauge
507+ "DELTA" -> Right MDMKDelta
508+ "CUMULATIVE" -> Right MDMKCumulative
509+ x -> Left ("Unable to parse MetricDescriptorMetricKind from: " <> x)
510+
511+instance ToHttpApiData MetricDescriptorMetricKind where
512+ toQueryParam = \case
513+ MDMKMetricKindUnspecified -> "METRIC_KIND_UNSPECIFIED"
514+ MDMKGauge -> "GAUGE"
515+ MDMKDelta -> "DELTA"
516+ MDMKCumulative -> "CUMULATIVE"
517+
518+instance FromJSON MetricDescriptorMetricKind where
519+ parseJSON = parseJSONText "MetricDescriptorMetricKind"
520+
521+instance ToJSON MetricDescriptorMetricKind where
522+ toJSON = toJSONText
gogol-monitoring/gen/Network/Google/Resource/Monitoring/Projects/CollectdTimeSeries/Create.hs+11−13
@@ -20,12 +20,11 @@
2020-- Stability : auto-generated
2121-- Portability : non-portable (GHC extensions)
2222--
23−-- Creates a new time series with the given data points. This method is
24−-- only for use in \`collectd\`-related code, including the Google
25−-- Monitoring Agent. See
26−-- [google.monitoring.v3.MetricService.CreateTimeSeries] instead.
23+-- Stackdriver Monitoring Agent only: Creates a new time series.
24+-- This method is only for use by the Stackdriver Monitoring Agent. Use
25+-- projects.timeSeries.create instead.
2726--
28−-- /See:/ <https://cloud.google.com/monitoring/api/ Google Monitoring API Reference> for @monitoring.projects.collectdTimeSeries.create@.
27+-- /See:/ <https://cloud.google.com/monitoring/api/ Stackdriver Monitoring API Reference> for @monitoring.projects.collectdTimeSeries.create@.
2928module Network.Google.Resource.Monitoring.Projects.CollectdTimeSeries.Create
3029 (
3130 -- * REST Resource
@@ -56,7 +55,7 @@ type ProjectsCollectdTimeSeriesCreateResource =
5655 "v3" :>
5756 Capture "name" Text :>
5857 "collectdTimeSeries" :>
59− QueryParam "$.xgafv" Text :>
58+ QueryParam "$.xgafv" Xgafv :>
6059 QueryParam "upload_protocol" Text :>
6160 QueryParam "pp" Bool :>
6261 QueryParam "access_token" Text :>
@@ -67,14 +66,13 @@ type ProjectsCollectdTimeSeriesCreateResource =
6766 ReqBody '[JSON] CreateCollectdTimeSeriesRequest :>
6867 Post '[JSON] Empty
6968
70−-- | Creates a new time series with the given data points. This method is
71−-- only for use in \`collectd\`-related code, including the Google
72−-- Monitoring Agent. See
73−-- [google.monitoring.v3.MetricService.CreateTimeSeries] instead.
69+-- | Stackdriver Monitoring Agent only: Creates a new time series.
70+-- This method is only for use by the Stackdriver Monitoring Agent. Use
71+-- projects.timeSeries.create instead.
7472--
7573-- /See:/ 'projectsCollectdTimeSeriesCreate' smart constructor.
7674data ProjectsCollectdTimeSeriesCreate = ProjectsCollectdTimeSeriesCreate'
77− { _pctscXgafv :: !(Maybe Text)
75+ { _pctscXgafv :: !(Maybe Xgafv)
7876 , _pctscUploadProtocol :: !(Maybe Text)
7977 , _pctscPp :: !Bool
8078 , _pctscAccessToken :: !(Maybe Text)
@@ -124,7 +122,7 @@ projectsCollectdTimeSeriesCreate pPctscPayload_ pPctscName_ =
124122 }
125123
126124-- | V1 error format.
127−pctscXgafv :: Lens' ProjectsCollectdTimeSeriesCreate (Maybe Text)
125+pctscXgafv :: Lens' ProjectsCollectdTimeSeriesCreate (Maybe Xgafv)
128126pctscXgafv
129127 = lens _pctscXgafv (\ s a -> s{_pctscXgafv = a})
130128
@@ -162,7 +160,7 @@ pctscBearerToken
162160 (\ s a -> s{_pctscBearerToken = a})
163161
164162-- | The project in which to create the time series. The format is
165−-- \`\"projects\/PROJECT_ID_OR_NUMBER\"\`.
163+-- \"projects\/PROJECT_ID_OR_NUMBER\".
166164pctscName :: Lens' ProjectsCollectdTimeSeriesCreate Text
167165pctscName
168166 = lens _pctscName (\ s a -> s{_pctscName = a})
gogol-monitoring/gen/Network/Google/Resource/Monitoring/Projects/Groups/Create.hs+5−5
@@ -22,7 +22,7 @@
2222--
2323-- Creates a new group.
2424--
25−-- /See:/ <https://cloud.google.com/monitoring/api/ Google Monitoring API Reference> for @monitoring.projects.groups.create@.
25+-- /See:/ <https://cloud.google.com/monitoring/api/ Stackdriver Monitoring API Reference> for @monitoring.projects.groups.create@.
2626module Network.Google.Resource.Monitoring.Projects.Groups.Create
2727 (
2828 -- * REST Resource
@@ -54,7 +54,7 @@ type ProjectsGroupsCreateResource =
5454 "v3" :>
5555 Capture "name" Text :>
5656 "groups" :>
57− QueryParam "$.xgafv" Text :>
57+ QueryParam "$.xgafv" Xgafv :>
5858 QueryParam "validateOnly" Bool :>
5959 QueryParam "upload_protocol" Text :>
6060 QueryParam "pp" Bool :>
@@ -69,7 +69,7 @@ type ProjectsGroupsCreateResource =
6969--
7070-- /See:/ 'projectsGroupsCreate' smart constructor.
7171data ProjectsGroupsCreate = ProjectsGroupsCreate'
72− { _pgcXgafv :: !(Maybe Text)
72+ { _pgcXgafv :: !(Maybe Xgafv)
7373 , _pgcValidateOnly :: !(Maybe Bool)
7474 , _pgcUploadProtocol :: !(Maybe Text)
7575 , _pgcPp :: !Bool
@@ -123,7 +123,7 @@ projectsGroupsCreate pPgcPayload_ pPgcName_ =
123123 }
124124
125125-- | V1 error format.
126−pgcXgafv :: Lens' ProjectsGroupsCreate (Maybe Text)
126+pgcXgafv :: Lens' ProjectsGroupsCreate (Maybe Xgafv)
127127pgcXgafv = lens _pgcXgafv (\ s a -> s{_pgcXgafv = a})
128128
129129-- | If true, validate this request but do not create the group.
@@ -166,7 +166,7 @@ pgcBearerToken
166166 (\ s a -> s{_pgcBearerToken = a})
167167
168168-- | The project in which to create the group. The format is
169−-- \`\"projects\/{project_id_or_number}\"\`.
169+-- \"projects\/{project_id_or_number}\".
170170pgcName :: Lens' ProjectsGroupsCreate Text
171171pgcName = lens _pgcName (\ s a -> s{_pgcName = a})
172172
gogol-monitoring/gen/Network/Google/Resource/Monitoring/Projects/Groups/Delete.hs+5−5
@@ -22,7 +22,7 @@
2222--
2323-- Deletes an existing group.
2424--
25−-- /See:/ <https://cloud.google.com/monitoring/api/ Google Monitoring API Reference> for @monitoring.projects.groups.delete@.
25+-- /See:/ <https://cloud.google.com/monitoring/api/ Stackdriver Monitoring API Reference> for @monitoring.projects.groups.delete@.
2626module Network.Google.Resource.Monitoring.Projects.Groups.Delete
2727 (
2828 -- * REST Resource
@@ -51,7 +51,7 @@ import Network.Google.Prelude
5151type ProjectsGroupsDeleteResource =
5252 "v3" :>
5353 Capture "name" Text :>
54− QueryParam "$.xgafv" Text :>
54+ QueryParam "$.xgafv" Xgafv :>
5555 QueryParam "upload_protocol" Text :>
5656 QueryParam "pp" Bool :>
5757 QueryParam "access_token" Text :>
@@ -64,7 +64,7 @@ type ProjectsGroupsDeleteResource =
6464--
6565-- /See:/ 'projectsGroupsDelete' smart constructor.
6666data ProjectsGroupsDelete = ProjectsGroupsDelete'
67− { _pgdXgafv :: !(Maybe Text)
67+ { _pgdXgafv :: !(Maybe Xgafv)
6868 , _pgdUploadProtocol :: !(Maybe Text)
6969 , _pgdPp :: !Bool
7070 , _pgdAccessToken :: !(Maybe Text)
@@ -109,7 +109,7 @@ projectsGroupsDelete pPgdName_ =
109109 }
110110
111111-- | V1 error format.
112−pgdXgafv :: Lens' ProjectsGroupsDelete (Maybe Text)
112+pgdXgafv :: Lens' ProjectsGroupsDelete (Maybe Xgafv)
113113pgdXgafv = lens _pgdXgafv (\ s a -> s{_pgdXgafv = a})
114114
115115-- | Upload protocol for media (e.g. \"raw\", \"multipart\").
@@ -141,7 +141,7 @@ pgdBearerToken
141141 (\ s a -> s{_pgdBearerToken = a})
142142
143143-- | The group to delete. The format is
144−-- \`\"projects\/{project_id_or_number}\/groups\/{group_id}\"\`.
144+-- \"projects\/{project_id_or_number}\/groups\/{group_id}\".
145145pgdName :: Lens' ProjectsGroupsDelete Text
146146pgdName = lens _pgdName (\ s a -> s{_pgdName = a})
147147
gogol-monitoring/gen/Network/Google/Resource/Monitoring/Projects/Groups/Get.hs+5−5
@@ -22,7 +22,7 @@
2222--
2323-- Gets a single group.
2424--
25−-- /See:/ <https://cloud.google.com/monitoring/api/ Google Monitoring API Reference> for @monitoring.projects.groups.get@.
25+-- /See:/ <https://cloud.google.com/monitoring/api/ Stackdriver Monitoring API Reference> for @monitoring.projects.groups.get@.
2626module Network.Google.Resource.Monitoring.Projects.Groups.Get
2727 (
2828 -- * REST Resource
@@ -51,7 +51,7 @@ import Network.Google.Prelude
5151type ProjectsGroupsGetResource =
5252 "v3" :>
5353 Capture "name" Text :>
54− QueryParam "$.xgafv" Text :>
54+ QueryParam "$.xgafv" Xgafv :>
5555 QueryParam "upload_protocol" Text :>
5656 QueryParam "pp" Bool :>
5757 QueryParam "access_token" Text :>
@@ -64,7 +64,7 @@ type ProjectsGroupsGetResource =
6464--
6565-- /See:/ 'projectsGroupsGet' smart constructor.
6666data ProjectsGroupsGet = ProjectsGroupsGet'
67− { _pggXgafv :: !(Maybe Text)
67+ { _pggXgafv :: !(Maybe Xgafv)
6868 , _pggUploadProtocol :: !(Maybe Text)
6969 , _pggPp :: !Bool
7070 , _pggAccessToken :: !(Maybe Text)
@@ -109,7 +109,7 @@ projectsGroupsGet pPggName_ =
109109 }
110110
111111-- | V1 error format.
112−pggXgafv :: Lens' ProjectsGroupsGet (Maybe Text)
112+pggXgafv :: Lens' ProjectsGroupsGet (Maybe Xgafv)
113113pggXgafv = lens _pggXgafv (\ s a -> s{_pggXgafv = a})
114114
115115-- | Upload protocol for media (e.g. \"raw\", \"multipart\").
@@ -141,7 +141,7 @@ pggBearerToken
141141 (\ s a -> s{_pggBearerToken = a})
142142
143143-- | The group to retrieve. The format is
144−-- \`\"projects\/{project_id_or_number}\/groups\/{group_id}\"\`.
144+-- \"projects\/{project_id_or_number}\/groups\/{group_id}\".
145145pggName :: Lens' ProjectsGroupsGet Text
146146pggName = lens _pggName (\ s a -> s{_pggName = a})
147147
gogol-monitoring/gen/Network/Google/Resource/Monitoring/Projects/Groups/List.hs+16−20
@@ -22,7 +22,7 @@
2222--
2323-- Lists the existing groups.
2424--
25−-- /See:/ <https://cloud.google.com/monitoring/api/ Google Monitoring API Reference> for @monitoring.projects.groups.list@.
25+-- /See:/ <https://cloud.google.com/monitoring/api/ Stackdriver Monitoring API Reference> for @monitoring.projects.groups.list@.
2626module Network.Google.Resource.Monitoring.Projects.Groups.List
2727 (
2828 -- * REST Resource
@@ -57,7 +57,7 @@ type ProjectsGroupsListResource =
5757 "v3" :>
5858 Capture "name" Text :>
5959 "groups" :>
60− QueryParam "$.xgafv" Text :>
60+ QueryParam "$.xgafv" Xgafv :>
6161 QueryParam "upload_protocol" Text :>
6262 QueryParam "childrenOfGroup" Text :>
6363 QueryParam "pp" Bool :>
@@ -76,7 +76,7 @@ type ProjectsGroupsListResource =
7676--
7777-- /See:/ 'projectsGroupsList' smart constructor.
7878data ProjectsGroupsList = ProjectsGroupsList'
79− { _pglXgafv :: !(Maybe Text)
79+ { _pglXgafv :: !(Maybe Xgafv)
8080 , _pglUploadProtocol :: !(Maybe Text)
8181 , _pglChildrenOfGroup :: !(Maybe Text)
8282 , _pglPp :: !Bool
@@ -141,7 +141,7 @@ projectsGroupsList pPglName_ =
141141 }
142142
143143-- | V1 error format.
144−pglXgafv :: Lens' ProjectsGroupsList (Maybe Text)
144+pglXgafv :: Lens' ProjectsGroupsList (Maybe Xgafv)
145145pglXgafv = lens _pglXgafv (\ s a -> s{_pglXgafv = a})
146146
147147-- | Upload protocol for media (e.g. \"raw\", \"multipart\").
@@ -150,10 +150,9 @@ pglUploadProtocol
150150 = lens _pglUploadProtocol
151151 (\ s a -> s{_pglUploadProtocol = a})
152152
153−-- | A group name:
154−-- \`\"projects\/{project_id_or_number}\/groups\/{group_id}\"\`. Returns
155−-- groups whose \`parentName\` field contains the group name. If no groups
156−-- have this parent, the results are empty.
153+-- | A group name: \"projects\/{project_id_or_number}\/groups\/{group_id}\".
154+-- Returns groups whose parentName field contains the group name. If no
155+-- groups have this parent, the results are empty.
157156pglChildrenOfGroup :: Lens' ProjectsGroupsList (Maybe Text)
158157pglChildrenOfGroup
159158 = lens _pglChildrenOfGroup
@@ -163,10 +162,9 @@ pglChildrenOfGroup
163162pglPp :: Lens' ProjectsGroupsList Bool
164163pglPp = lens _pglPp (\ s a -> s{_pglPp = a})
165164
166−-- | A group name:
167−-- \`\"projects\/{project_id_or_number}\/groups\/{group_id}\"\`. Returns
168−-- the descendants of the specified group. This is a superset of the
169−-- results returned by the \`childrenOfGroup\` filter, and includes
165+-- | A group name: \"projects\/{project_id_or_number}\/groups\/{group_id}\".
166+-- Returns the descendants of the specified group. This is a superset of
167+-- the results returned by the childrenOfGroup filter, and includes
170168-- children-of-children, and so forth.
171169pglDescendantsOfGroup :: Lens' ProjectsGroupsList (Maybe Text)
172170pglDescendantsOfGroup
@@ -192,14 +190,13 @@ pglBearerToken
192190 (\ s a -> s{_pglBearerToken = a})
193191
194192-- | The project whose groups are to be listed. The format is
195−-- \`\"projects\/{project_id_or_number}\"\`.
193+-- \"projects\/{project_id_or_number}\".
196194pglName :: Lens' ProjectsGroupsList Text
197195pglName = lens _pglName (\ s a -> s{_pglName = a})
198196
199−-- | If this field is not empty then it must contain the \`nextPageToken\`
200−-- value returned by a previous call to this method. Using this field
201−-- causes the method to return additional results from the previous method
202−-- call.
197+-- | If this field is not empty then it must contain the nextPageToken value
198+-- returned by a previous call to this method. Using this field causes the
199+-- method to return additional results from the previous method call.
203200pglPageToken :: Lens' ProjectsGroupsList (Maybe Text)
204201pglPageToken
205202 = lens _pglPageToken (\ s a -> s{_pglPageToken = a})
@@ -210,9 +207,8 @@ pglPageSize
210207 = lens _pglPageSize (\ s a -> s{_pglPageSize = a}) .
211208 mapping _Coerce
212209
213−-- | A group name:
214−-- \`\"projects\/{project_id_or_number}\/groups\/{group_id}\"\`. Returns
215−-- groups that are ancestors of the specified group. The groups are
210+-- | A group name: \"projects\/{project_id_or_number}\/groups\/{group_id}\".
211+-- Returns groups that are ancestors of the specified group. The groups are
216212-- returned in order, starting with the immediate parent and ending with
217213-- the most distant ancestor. If the specified group has no immediate
218214-- parent, the results are empty.
gogol-monitoring/gen/Network/Google/Resource/Monitoring/Projects/Groups/Members/List.hs+21−21
@@ -22,7 +22,7 @@
2222--
2323-- Lists the monitored resources that are members of a group.
2424--
25−-- /See:/ <https://cloud.google.com/monitoring/api/ Google Monitoring API Reference> for @monitoring.projects.groups.members.list@.
25+-- /See:/ <https://cloud.google.com/monitoring/api/ Stackdriver Monitoring API Reference> for @monitoring.projects.groups.members.list@.
2626module Network.Google.Resource.Monitoring.Projects.Groups.Members.List
2727 (
2828 -- * REST Resource
@@ -57,8 +57,8 @@ type ProjectsGroupsMembersListResource =
5757 "v3" :>
5858 Capture "name" Text :>
5959 "members" :>
60− QueryParam "interval.startTime" Text :>
61− QueryParam "$.xgafv" Text :>
60+ QueryParam "interval.startTime" DateTime' :>
61+ QueryParam "$.xgafv" Xgafv :>
6262 QueryParam "upload_protocol" Text :>
6363 QueryParam "pp" Bool :>
6464 QueryParam "access_token" Text :>
@@ -66,7 +66,7 @@ type ProjectsGroupsMembersListResource =
6666 QueryParam "bearer_token" Text :>
6767 QueryParam "filter" Text :>
6868 QueryParam "pageToken" Text :>
69− QueryParam "interval.endTime" Text :>
69+ QueryParam "interval.endTime" DateTime' :>
7070 QueryParam "pageSize" (Textual Int32) :>
7171 QueryParam "callback" Text :>
7272 QueryParam "alt" AltJSON :>
@@ -76,8 +76,8 @@ type ProjectsGroupsMembersListResource =
7676--
7777-- /See:/ 'projectsGroupsMembersList' smart constructor.
7878data ProjectsGroupsMembersList = ProjectsGroupsMembersList'
79− { _pgmlIntervalStartTime :: !(Maybe Text)
80− , _pgmlXgafv :: !(Maybe Text)
79+ { _pgmlIntervalStartTime :: !(Maybe DateTime')
80+ , _pgmlXgafv :: !(Maybe Xgafv)
8181 , _pgmlUploadProtocol :: !(Maybe Text)
8282 , _pgmlPp :: !Bool
8383 , _pgmlAccessToken :: !(Maybe Text)
@@ -86,7 +86,7 @@ data ProjectsGroupsMembersList = ProjectsGroupsMembersList'
8686 , _pgmlName :: !Text
8787 , _pgmlFilter :: !(Maybe Text)
8888 , _pgmlPageToken :: !(Maybe Text)
89− , _pgmlIntervalEndTime :: !(Maybe Text)
89+ , _pgmlIntervalEndTime :: !(Maybe DateTime')
9090 , _pgmlPageSize :: !(Maybe (Textual Int32))
9191 , _pgmlCallback :: !(Maybe Text)
9292 } deriving (Eq,Show,Data,Typeable,Generic)
@@ -140,17 +140,17 @@ projectsGroupsMembersList pPgmlName_ =
140140 , _pgmlCallback = Nothing
141141 }
142142
143−-- | If this value is omitted, the interval is a point in time, \`endTime\`.
144−-- If \`startTime\` is present, it must be earlier than (less than)
145−-- \`endTime\`. The interval begins after \`startTime\`—it does not include
146−-- \`startTime\`.
147−pgmlIntervalStartTime :: Lens' ProjectsGroupsMembersList (Maybe Text)
143+-- | Optional. The beginning of the time interval. The default value for the
144+-- start time is the end time. The start time must not be later than the
145+-- end time.
146+pgmlIntervalStartTime :: Lens' ProjectsGroupsMembersList (Maybe UTCTime)
148147pgmlIntervalStartTime
149148 = lens _pgmlIntervalStartTime
150149 (\ s a -> s{_pgmlIntervalStartTime = a})
150+ . mapping _DateTime
151151
152152-- | V1 error format.
153−pgmlXgafv :: Lens' ProjectsGroupsMembersList (Maybe Text)
153+pgmlXgafv :: Lens' ProjectsGroupsMembersList (Maybe Xgafv)
154154pgmlXgafv
155155 = lens _pgmlXgafv (\ s a -> s{_pgmlXgafv = a})
156156
@@ -183,11 +183,11 @@ pgmlBearerToken
183183 (\ s a -> s{_pgmlBearerToken = a})
184184
185185-- | The group whose members are listed. The format is
186−-- \`\"projects\/{project_id_or_number}\/groups\/{group_id}\"\`.
186+-- \"projects\/{project_id_or_number}\/groups\/{group_id}\".
187187pgmlName :: Lens' ProjectsGroupsMembersList Text
188188pgmlName = lens _pgmlName (\ s a -> s{_pgmlName = a})
189189
190−-- | An optional [list filter](\/monitoring\/api\/learn_more#filtering)
190+-- | An optional list filter (\/monitoring\/api\/learn_more#filtering)
191191-- describing the members to be returned. The filter may reference the
192192-- type, labels, and metadata of monitored resources that comprise the
193193-- group. For example, to return only resources representing Compute Engine
@@ -196,20 +196,20 @@ pgmlFilter :: Lens' ProjectsGroupsMembersList (Maybe Text)
196196pgmlFilter
197197 = lens _pgmlFilter (\ s a -> s{_pgmlFilter = a})
198198
199−-- | If this field is not empty then it must contain the \`nextPageToken\`
200−-- value returned by a previous call to this method. Using this field
201−-- causes the method to return additional results from the previous method
202−-- call.
199+-- | If this field is not empty then it must contain the nextPageToken value
200+-- returned by a previous call to this method. Using this field causes the
201+-- method to return additional results from the previous method call.
203202pgmlPageToken :: Lens' ProjectsGroupsMembersList (Maybe Text)
204203pgmlPageToken
205204 = lens _pgmlPageToken
206205 (\ s a -> s{_pgmlPageToken = a})
207206
208−-- | Required. The end of the interval. The interval includes this time.
209−pgmlIntervalEndTime :: Lens' ProjectsGroupsMembersList (Maybe Text)
207+-- | Required. The end of the time interval.
208+pgmlIntervalEndTime :: Lens' ProjectsGroupsMembersList (Maybe UTCTime)
210209pgmlIntervalEndTime
211210 = lens _pgmlIntervalEndTime
212211 (\ s a -> s{_pgmlIntervalEndTime = a})
212+ . mapping _DateTime
213213
214214-- | A positive number that is the maximum number of results to return.
215215pgmlPageSize :: Lens' ProjectsGroupsMembersList (Maybe Int32)
gogol-monitoring/gen/Network/Google/Resource/Monitoring/Projects/Groups/Update.hs+11−11
@@ -21,9 +21,9 @@
2121-- Portability : non-portable (GHC extensions)
2222--
2323-- Updates an existing group. You can change any group attributes except
24−-- \`name\`.
24+-- name.
2525--
26−-- /See:/ <https://cloud.google.com/monitoring/api/ Google Monitoring API Reference> for @monitoring.projects.groups.update@.
26+-- /See:/ <https://cloud.google.com/monitoring/api/ Stackdriver Monitoring API Reference> for @monitoring.projects.groups.update@.
2727module Network.Google.Resource.Monitoring.Projects.Groups.Update
2828 (
2929 -- * REST Resource
@@ -54,7 +54,7 @@ import Network.Google.Prelude
5454type ProjectsGroupsUpdateResource =
5555 "v3" :>
5656 Capture "name" Text :>
57− QueryParam "$.xgafv" Text :>
57+ QueryParam "$.xgafv" Xgafv :>
5858 QueryParam "validateOnly" Bool :>
5959 QueryParam "upload_protocol" Text :>
6060 QueryParam "pp" Bool :>
@@ -66,11 +66,11 @@ type ProjectsGroupsUpdateResource =
6666 ReqBody '[JSON] Group :> Put '[JSON] Group
6767
6868-- | Updates an existing group. You can change any group attributes except
69−-- \`name\`.
69+-- name.
7070--
7171-- /See:/ 'projectsGroupsUpdate' smart constructor.
7272data ProjectsGroupsUpdate = ProjectsGroupsUpdate'
73− { _pguXgafv :: !(Maybe Text)
73+ { _pguXgafv :: !(Maybe Xgafv)
7474 , _pguValidateOnly :: !(Maybe Bool)
7575 , _pguUploadProtocol :: !(Maybe Text)
7676 , _pguPp :: !Bool
@@ -124,7 +124,7 @@ projectsGroupsUpdate pPguPayload_ pPguName_ =
124124 }
125125
126126-- | V1 error format.
127−pguXgafv :: Lens' ProjectsGroupsUpdate (Maybe Text)
127+pguXgafv :: Lens' ProjectsGroupsUpdate (Maybe Xgafv)
128128pguXgafv = lens _pguXgafv (\ s a -> s{_pguXgafv = a})
129129
130130-- | If true, validate this request but do not update the existing group.
@@ -166,11 +166,11 @@ pguBearerToken
166166 = lens _pguBearerToken
167167 (\ s a -> s{_pguBearerToken = a})
168168
169−-- | The name of this group. The format is
170−-- \`\"projects\/{project_id_or_number}\/groups\/{group_id}\"\`. When
171−-- creating a group, this field is ignored and a new name is created
172−-- consisting of the project specified in the call to \`CreateGroup\` and a
173−-- unique \`{group_id}\` that is generated automatically. \'OutputOnly
169+-- | Output only. The name of this group. The format is
170+-- \"projects\/{project_id_or_number}\/groups\/{group_id}\". When creating
171+-- a group, this field is ignored and a new name is created consisting of
172+-- the project specified in the call to CreateGroup and a unique {group_id}
173+-- that is generated automatically.
174174pguName :: Lens' ProjectsGroupsUpdate Text
175175pguName = lens _pguName (\ s a -> s{_pguName = a})
176176
gogol-monitoring/gen/Network/Google/Resource/Monitoring/Projects/MetricDescriptors/Create.hs+7−7
@@ -21,9 +21,9 @@
2121-- Portability : non-portable (GHC extensions)
2222--
2323-- Creates a new metric descriptor. User-created metric descriptors define
24−-- [custom metrics](\/monitoring\/custom-metrics).
24+-- custom metrics (\/monitoring\/custom-metrics).
2525--
26−-- /See:/ <https://cloud.google.com/monitoring/api/ Google Monitoring API Reference> for @monitoring.projects.metricDescriptors.create@.
26+-- /See:/ <https://cloud.google.com/monitoring/api/ Stackdriver Monitoring API Reference> for @monitoring.projects.metricDescriptors.create@.
2727module Network.Google.Resource.Monitoring.Projects.MetricDescriptors.Create
2828 (
2929 -- * REST Resource
@@ -54,7 +54,7 @@ type ProjectsMetricDescriptorsCreateResource =
5454 "v3" :>
5555 Capture "name" Text :>
5656 "metricDescriptors" :>
57− QueryParam "$.xgafv" Text :>
57+ QueryParam "$.xgafv" Xgafv :>
5858 QueryParam "upload_protocol" Text :>
5959 QueryParam "pp" Bool :>
6060 QueryParam "access_token" Text :>
@@ -66,11 +66,11 @@ type ProjectsMetricDescriptorsCreateResource =
6666 Post '[JSON] MetricDescriptor
6767
6868-- | Creates a new metric descriptor. User-created metric descriptors define
69−-- [custom metrics](\/monitoring\/custom-metrics).
69+-- custom metrics (\/monitoring\/custom-metrics).
7070--
7171-- /See:/ 'projectsMetricDescriptorsCreate' smart constructor.
7272data ProjectsMetricDescriptorsCreate = ProjectsMetricDescriptorsCreate'
73− { _pmdcXgafv :: !(Maybe Text)
73+ { _pmdcXgafv :: !(Maybe Xgafv)
7474 , _pmdcUploadProtocol :: !(Maybe Text)
7575 , _pmdcPp :: !Bool
7676 , _pmdcAccessToken :: !(Maybe Text)
@@ -120,7 +120,7 @@ projectsMetricDescriptorsCreate pPmdcPayload_ pPmdcName_ =
120120 }
121121
122122-- | V1 error format.
123−pmdcXgafv :: Lens' ProjectsMetricDescriptorsCreate (Maybe Text)
123+pmdcXgafv :: Lens' ProjectsMetricDescriptorsCreate (Maybe Xgafv)
124124pmdcXgafv
125125 = lens _pmdcXgafv (\ s a -> s{_pmdcXgafv = a})
126126
@@ -158,7 +158,7 @@ pmdcBearerToken
158158 (\ s a -> s{_pmdcBearerToken = a})
159159
160160-- | The project on which to execute the request. The format is
161−-- \`\"projects\/{project_id_or_number}\"\`.
161+-- \"projects\/{project_id_or_number}\".
162162pmdcName :: Lens' ProjectsMetricDescriptorsCreate Text
163163pmdcName = lens _pmdcName (\ s a -> s{_pmdcName = a})
164164
gogol-monitoring/gen/Network/Google/Resource/Monitoring/Projects/MetricDescriptors/Delete.hs+10−11
@@ -20,10 +20,10 @@
2020-- Stability : auto-generated
2121-- Portability : non-portable (GHC extensions)
2222--
23−-- Deletes a metric descriptor. Only user-created [custom
24−-- metrics](\/monitoring\/custom-metrics) can be deleted.
23+-- Deletes a metric descriptor. Only user-created custom metrics
24+-- (\/monitoring\/custom-metrics) can be deleted.
2525--
26−-- /See:/ <https://cloud.google.com/monitoring/api/ Google Monitoring API Reference> for @monitoring.projects.metricDescriptors.delete@.
26+-- /See:/ <https://cloud.google.com/monitoring/api/ Stackdriver Monitoring API Reference> for @monitoring.projects.metricDescriptors.delete@.
2727module Network.Google.Resource.Monitoring.Projects.MetricDescriptors.Delete
2828 (
2929 -- * REST Resource
@@ -52,7 +52,7 @@ import Network.Google.Prelude
5252type ProjectsMetricDescriptorsDeleteResource =
5353 "v3" :>
5454 Capture "name" Text :>
55− QueryParam "$.xgafv" Text :>
55+ QueryParam "$.xgafv" Xgafv :>
5656 QueryParam "upload_protocol" Text :>
5757 QueryParam "pp" Bool :>
5858 QueryParam "access_token" Text :>
@@ -61,12 +61,12 @@ type ProjectsMetricDescriptorsDeleteResource =
6161 QueryParam "callback" Text :>
6262 QueryParam "alt" AltJSON :> Delete '[JSON] Empty
6363
64−-- | Deletes a metric descriptor. Only user-created [custom
65−-- metrics](\/monitoring\/custom-metrics) can be deleted.
64+-- | Deletes a metric descriptor. Only user-created custom metrics
65+-- (\/monitoring\/custom-metrics) can be deleted.
6666--
6767-- /See:/ 'projectsMetricDescriptorsDelete' smart constructor.
6868data ProjectsMetricDescriptorsDelete = ProjectsMetricDescriptorsDelete'
69− { _pmddXgafv :: !(Maybe Text)
69+ { _pmddXgafv :: !(Maybe Xgafv)
7070 , _pmddUploadProtocol :: !(Maybe Text)
7171 , _pmddPp :: !Bool
7272 , _pmddAccessToken :: !(Maybe Text)
@@ -111,7 +111,7 @@ projectsMetricDescriptorsDelete pPmddName_ =
111111 }
112112
113113-- | V1 error format.
114−pmddXgafv :: Lens' ProjectsMetricDescriptorsDelete (Maybe Text)
114+pmddXgafv :: Lens' ProjectsMetricDescriptorsDelete (Maybe Xgafv)
115115pmddXgafv
116116 = lens _pmddXgafv (\ s a -> s{_pmddXgafv = a})
117117
@@ -144,9 +144,8 @@ pmddBearerToken
144144 (\ s a -> s{_pmddBearerToken = a})
145145
146146-- | The metric descriptor on which to execute the request. The format is
147−-- \`\"projects\/{project_id_or_number}\/metricDescriptors\/{metric_id}\"\`.
148−-- An example of \`{metric_id}\` is:
149−-- \`\"custom.googleapis.com\/my_test_metric\"\`.
147+-- \"projects\/{project_id_or_number}\/metricDescriptors\/{metric_id}\". An
148+-- example of {metric_id} is: \"custom.googleapis.com\/my_test_metric\".
150149pmddName :: Lens' ProjectsMetricDescriptorsDelete Text
151150pmddName = lens _pmddName (\ s a -> s{_pmddName = a})
152151
gogol-monitoring/gen/Network/Google/Resource/Monitoring/Projects/MetricDescriptors/Get.hs+7−7
@@ -23,7 +23,7 @@
2323-- Gets a single metric descriptor. This method does not require a
2424-- Stackdriver account.
2525--
26−-- /See:/ <https://cloud.google.com/monitoring/api/ Google Monitoring API Reference> for @monitoring.projects.metricDescriptors.get@.
26+-- /See:/ <https://cloud.google.com/monitoring/api/ Stackdriver Monitoring API Reference> for @monitoring.projects.metricDescriptors.get@.
2727module Network.Google.Resource.Monitoring.Projects.MetricDescriptors.Get
2828 (
2929 -- * REST Resource
@@ -52,7 +52,7 @@ import Network.Google.Prelude
5252type ProjectsMetricDescriptorsGetResource =
5353 "v3" :>
5454 Capture "name" Text :>
55− QueryParam "$.xgafv" Text :>
55+ QueryParam "$.xgafv" Xgafv :>
5656 QueryParam "upload_protocol" Text :>
5757 QueryParam "pp" Bool :>
5858 QueryParam "access_token" Text :>
@@ -67,7 +67,7 @@ type ProjectsMetricDescriptorsGetResource =
6767--
6868-- /See:/ 'projectsMetricDescriptorsGet' smart constructor.
6969data ProjectsMetricDescriptorsGet = ProjectsMetricDescriptorsGet'
70− { _pmdgXgafv :: !(Maybe Text)
70+ { _pmdgXgafv :: !(Maybe Xgafv)
7171 , _pmdgUploadProtocol :: !(Maybe Text)
7272 , _pmdgPp :: !Bool
7373 , _pmdgAccessToken :: !(Maybe Text)
@@ -112,7 +112,7 @@ projectsMetricDescriptorsGet pPmdgName_ =
112112 }
113113
114114-- | V1 error format.
115−pmdgXgafv :: Lens' ProjectsMetricDescriptorsGet (Maybe Text)
115+pmdgXgafv :: Lens' ProjectsMetricDescriptorsGet (Maybe Xgafv)
116116pmdgXgafv
117117 = lens _pmdgXgafv (\ s a -> s{_pmdgXgafv = a})
118118
@@ -145,9 +145,9 @@ pmdgBearerToken
145145 (\ s a -> s{_pmdgBearerToken = a})
146146
147147-- | The metric descriptor on which to execute the request. The format is
148−-- \`\"projects\/{project_id_or_number}\/metricDescriptors\/{metric_id}\"\`.
149−-- An example value of \`{metric_id}\` is
150−-- \`\"compute.googleapis.com\/instance\/disk\/read_bytes_count\"\`.
148+-- \"projects\/{project_id_or_number}\/metricDescriptors\/{metric_id}\". An
149+-- example value of {metric_id} is
150+-- \"compute.googleapis.com\/instance\/disk\/read_bytes_count\".
151151pmdgName :: Lens' ProjectsMetricDescriptorsGet Text
152152pmdgName = lens _pmdgName (\ s a -> s{_pmdgName = a})
153153
gogol-monitoring/gen/Network/Google/Resource/Monitoring/Projects/MetricDescriptors/List.hs+11−12
@@ -23,7 +23,7 @@
2323-- Lists metric descriptors that match a filter. This method does not
2424-- require a Stackdriver account.
2525--
26−-- /See:/ <https://cloud.google.com/monitoring/api/ Google Monitoring API Reference> for @monitoring.projects.metricDescriptors.list@.
26+-- /See:/ <https://cloud.google.com/monitoring/api/ Stackdriver Monitoring API Reference> for @monitoring.projects.metricDescriptors.list@.
2727module Network.Google.Resource.Monitoring.Projects.MetricDescriptors.List
2828 (
2929 -- * REST Resource
@@ -56,7 +56,7 @@ type ProjectsMetricDescriptorsListResource =
5656 "v3" :>
5757 Capture "name" Text :>
5858 "metricDescriptors" :>
59− QueryParam "$.xgafv" Text :>
59+ QueryParam "$.xgafv" Xgafv :>
6060 QueryParam "upload_protocol" Text :>
6161 QueryParam "pp" Bool :>
6262 QueryParam "access_token" Text :>
@@ -74,7 +74,7 @@ type ProjectsMetricDescriptorsListResource =
7474--
7575-- /See:/ 'projectsMetricDescriptorsList' smart constructor.
7676data ProjectsMetricDescriptorsList = ProjectsMetricDescriptorsList'
77− { _pmdlXgafv :: !(Maybe Text)
77+ { _pmdlXgafv :: !(Maybe Xgafv)
7878 , _pmdlUploadProtocol :: !(Maybe Text)
7979 , _pmdlPp :: !Bool
8080 , _pmdlAccessToken :: !(Maybe Text)
@@ -131,7 +131,7 @@ projectsMetricDescriptorsList pPmdlName_ =
131131 }
132132
133133-- | V1 error format.
134−pmdlXgafv :: Lens' ProjectsMetricDescriptorsList (Maybe Text)
134+pmdlXgafv :: Lens' ProjectsMetricDescriptorsList (Maybe Xgafv)
135135pmdlXgafv
136136 = lens _pmdlXgafv (\ s a -> s{_pmdlXgafv = a})
137137
@@ -164,24 +164,23 @@ pmdlBearerToken
164164 (\ s a -> s{_pmdlBearerToken = a})
165165
166166-- | The project on which to execute the request. The format is
167−-- \`\"projects\/{project_id_or_number}\"\`.
167+-- \"projects\/{project_id_or_number}\".
168168pmdlName :: Lens' ProjectsMetricDescriptorsList Text
169169pmdlName = lens _pmdlName (\ s a -> s{_pmdlName = a})
170170
171171-- | If this field is empty, all custom and system-defined metric descriptors
172−-- are returned. Otherwise, the [filter](\/monitoring\/api\/v3\/filters)
172+-- are returned. Otherwise, the filter (\/monitoring\/api\/v3\/filters)
173173-- specifies which metric descriptors are to be returned. For example, the
174−-- following filter matches all [custom
175−-- metrics](\/monitoring\/custom-metrics): metric.type =
174+-- following filter matches all custom metrics
175+-- (\/monitoring\/custom-metrics): metric.type =
176176-- starts_with(\"custom.googleapis.com\/\")
177177pmdlFilter :: Lens' ProjectsMetricDescriptorsList (Maybe Text)
178178pmdlFilter
179179 = lens _pmdlFilter (\ s a -> s{_pmdlFilter = a})
180180
181−-- | If this field is not empty then it must contain the \`nextPageToken\`
182−-- value returned by a previous call to this method. Using this field
183−-- causes the method to return additional results from the previous method
184−-- call.
181+-- | If this field is not empty then it must contain the nextPageToken value
182+-- returned by a previous call to this method. Using this field causes the
183+-- method to return additional results from the previous method call.
185184pmdlPageToken :: Lens' ProjectsMetricDescriptorsList (Maybe Text)
186185pmdlPageToken
187186 = lens _pmdlPageToken
gogol-monitoring/gen/Network/Google/Resource/Monitoring/Projects/MonitoredResourceDescriptors/Get.hs+6−7
@@ -23,7 +23,7 @@
2323-- Gets a single monitored resource descriptor. This method does not
2424-- require a Stackdriver account.
2525--
26−-- /See:/ <https://cloud.google.com/monitoring/api/ Google Monitoring API Reference> for @monitoring.projects.monitoredResourceDescriptors.get@.
26+-- /See:/ <https://cloud.google.com/monitoring/api/ Stackdriver Monitoring API Reference> for @monitoring.projects.monitoredResourceDescriptors.get@.
2727module Network.Google.Resource.Monitoring.Projects.MonitoredResourceDescriptors.Get
2828 (
2929 -- * REST Resource
@@ -53,7 +53,7 @@ type ProjectsMonitoredResourceDescriptorsGetResource
5353 =
5454 "v3" :>
5555 Capture "name" Text :>
56− QueryParam "$.xgafv" Text :>
56+ QueryParam "$.xgafv" Xgafv :>
5757 QueryParam "upload_protocol" Text :>
5858 QueryParam "pp" Bool :>
5959 QueryParam "access_token" Text :>
@@ -68,7 +68,7 @@ type ProjectsMonitoredResourceDescriptorsGetResource
6868--
6969-- /See:/ 'projectsMonitoredResourceDescriptorsGet' smart constructor.
7070data ProjectsMonitoredResourceDescriptorsGet = ProjectsMonitoredResourceDescriptorsGet'
71− { _pmrdgXgafv :: !(Maybe Text)
71+ { _pmrdgXgafv :: !(Maybe Xgafv)
7272 , _pmrdgUploadProtocol :: !(Maybe Text)
7373 , _pmrdgPp :: !Bool
7474 , _pmrdgAccessToken :: !(Maybe Text)
@@ -113,7 +113,7 @@ projectsMonitoredResourceDescriptorsGet pPmrdgName_ =
113113 }
114114
115115-- | V1 error format.
116−pmrdgXgafv :: Lens' ProjectsMonitoredResourceDescriptorsGet (Maybe Text)
116+pmrdgXgafv :: Lens' ProjectsMonitoredResourceDescriptorsGet (Maybe Xgafv)
117117pmrdgXgafv
118118 = lens _pmrdgXgafv (\ s a -> s{_pmrdgXgafv = a})
119119
@@ -146,9 +146,8 @@ pmrdgBearerToken
146146 (\ s a -> s{_pmrdgBearerToken = a})
147147
148148-- | The monitored resource descriptor to get. The format is
149−-- \`\"projects\/{project_id_or_number}\/monitoredResourceDescriptors\/{resource_type}\"\`.
150−-- The \`{resource_type}\` is a predefined type, such as
151−-- \`cloudsql_database\`.
149+-- \"projects\/{project_id_or_number}\/monitoredResourceDescriptors\/{resource_type}\".
150+-- The {resource_type} is a predefined type, such as cloudsql_database.
152151pmrdgName :: Lens' ProjectsMonitoredResourceDescriptorsGet Text
153152pmrdgName
154153 = lens _pmrdgName (\ s a -> s{_pmrdgName = a})
gogol-monitoring/gen/Network/Google/Resource/Monitoring/Projects/MonitoredResourceDescriptors/List.hs+10−11
@@ -23,7 +23,7 @@
2323-- Lists monitored resource descriptors that match a filter. This method
2424-- does not require a Stackdriver account.
2525--
26−-- /See:/ <https://cloud.google.com/monitoring/api/ Google Monitoring API Reference> for @monitoring.projects.monitoredResourceDescriptors.list@.
26+-- /See:/ <https://cloud.google.com/monitoring/api/ Stackdriver Monitoring API Reference> for @monitoring.projects.monitoredResourceDescriptors.list@.
2727module Network.Google.Resource.Monitoring.Projects.MonitoredResourceDescriptors.List
2828 (
2929 -- * REST Resource
@@ -57,7 +57,7 @@ type ProjectsMonitoredResourceDescriptorsListResource
5757 "v3" :>
5858 Capture "name" Text :>
5959 "monitoredResourceDescriptors" :>
60− QueryParam "$.xgafv" Text :>
60+ QueryParam "$.xgafv" Xgafv :>
6161 QueryParam "upload_protocol" Text :>
6262 QueryParam "pp" Bool :>
6363 QueryParam "access_token" Text :>
@@ -76,7 +76,7 @@ type ProjectsMonitoredResourceDescriptorsListResource
7676--
7777-- /See:/ 'projectsMonitoredResourceDescriptorsList' smart constructor.
7878data ProjectsMonitoredResourceDescriptorsList = ProjectsMonitoredResourceDescriptorsList'
79− { _pmrdlXgafv :: !(Maybe Text)
79+ { _pmrdlXgafv :: !(Maybe Xgafv)
8080 , _pmrdlUploadProtocol :: !(Maybe Text)
8181 , _pmrdlPp :: !Bool
8282 , _pmrdlAccessToken :: !(Maybe Text)
@@ -133,7 +133,7 @@ projectsMonitoredResourceDescriptorsList pPmrdlName_ =
133133 }
134134
135135-- | V1 error format.
136−pmrdlXgafv :: Lens' ProjectsMonitoredResourceDescriptorsList (Maybe Text)
136+pmrdlXgafv :: Lens' ProjectsMonitoredResourceDescriptorsList (Maybe Xgafv)
137137pmrdlXgafv
138138 = lens _pmrdlXgafv (\ s a -> s{_pmrdlXgafv = a})
139139
@@ -166,24 +166,23 @@ pmrdlBearerToken
166166 (\ s a -> s{_pmrdlBearerToken = a})
167167
168168-- | The project on which to execute the request. The format is
169−-- \`\"projects\/{project_id_or_number}\"\`.
169+-- \"projects\/{project_id_or_number}\".
170170pmrdlName :: Lens' ProjectsMonitoredResourceDescriptorsList Text
171171pmrdlName
172172 = lens _pmrdlName (\ s a -> s{_pmrdlName = a})
173173
174−-- | An optional [filter](\/monitoring\/api\/v3\/filters) describing the
174+-- | An optional filter (\/monitoring\/api\/v3\/filters) describing the
175175-- descriptors to be returned. The filter can reference the descriptor\'s
176176-- type and labels. For example, the following filter returns only Google
177−-- Compute Engine descriptors that have an \`id\` label: resource.type =
177+-- Compute Engine descriptors that have an id label: resource.type =
178178-- starts_with(\"gce_\") AND resource.label:id
179179pmrdlFilter :: Lens' ProjectsMonitoredResourceDescriptorsList (Maybe Text)
180180pmrdlFilter
181181 = lens _pmrdlFilter (\ s a -> s{_pmrdlFilter = a})
182182
183−-- | If this field is not empty then it must contain the \`nextPageToken\`
184−-- value returned by a previous call to this method. Using this field
185−-- causes the method to return additional results from the previous method
186−-- call.
183+-- | If this field is not empty then it must contain the nextPageToken value
184+-- returned by a previous call to this method. Using this field causes the
185+-- method to return additional results from the previous method call.
187186pmrdlPageToken :: Lens' ProjectsMonitoredResourceDescriptorsList (Maybe Text)
188187pmrdlPageToken
189188 = lens _pmrdlPageToken
gogol-monitoring/gen/Network/Google/Resource/Monitoring/Projects/TimeSeries/Create.hs+5−5
@@ -25,7 +25,7 @@
2525-- not be written, a corresponding failure message is included in the error
2626-- response.
2727--
28−-- /See:/ <https://cloud.google.com/monitoring/api/ Google Monitoring API Reference> for @monitoring.projects.timeSeries.create@.
28+-- /See:/ <https://cloud.google.com/monitoring/api/ Stackdriver Monitoring API Reference> for @monitoring.projects.timeSeries.create@.
2929module Network.Google.Resource.Monitoring.Projects.TimeSeries.Create
3030 (
3131 -- * REST Resource
@@ -56,7 +56,7 @@ type ProjectsTimeSeriesCreateResource =
5656 "v3" :>
5757 Capture "name" Text :>
5858 "timeSeries" :>
59− QueryParam "$.xgafv" Text :>
59+ QueryParam "$.xgafv" Xgafv :>
6060 QueryParam "upload_protocol" Text :>
6161 QueryParam "pp" Bool :>
6262 QueryParam "access_token" Text :>
@@ -74,7 +74,7 @@ type ProjectsTimeSeriesCreateResource =
7474--
7575-- /See:/ 'projectsTimeSeriesCreate' smart constructor.
7676data ProjectsTimeSeriesCreate = ProjectsTimeSeriesCreate'
77− { _ptscXgafv :: !(Maybe Text)
77+ { _ptscXgafv :: !(Maybe Xgafv)
7878 , _ptscUploadProtocol :: !(Maybe Text)
7979 , _ptscPp :: !Bool
8080 , _ptscAccessToken :: !(Maybe Text)
@@ -124,7 +124,7 @@ projectsTimeSeriesCreate pPtscPayload_ pPtscName_ =
124124 }
125125
126126-- | V1 error format.
127−ptscXgafv :: Lens' ProjectsTimeSeriesCreate (Maybe Text)
127+ptscXgafv :: Lens' ProjectsTimeSeriesCreate (Maybe Xgafv)
128128ptscXgafv
129129 = lens _ptscXgafv (\ s a -> s{_ptscXgafv = a})
130130
@@ -162,7 +162,7 @@ ptscBearerToken
162162 (\ s a -> s{_ptscBearerToken = a})
163163
164164-- | The project on which to execute the request. The format is
165−-- \`\"projects\/{project_id_or_number}\"\`.
165+-- \"projects\/{project_id_or_number}\".
166166ptscName :: Lens' ProjectsTimeSeriesCreate Text
167167ptscName = lens _ptscName (\ s a -> s{_ptscName = a})
168168
gogol-monitoring/gen/Network/Google/Resource/Monitoring/Projects/TimeSeries/List.hs+53−52
@@ -23,7 +23,7 @@
2323-- Lists time series that match a filter. This method does not require a
2424-- Stackdriver account.
2525--
26−-- /See:/ <https://cloud.google.com/monitoring/api/ Google Monitoring API Reference> for @monitoring.projects.timeSeries.list@.
26+-- /See:/ <https://cloud.google.com/monitoring/api/ Stackdriver Monitoring API Reference> for @monitoring.projects.timeSeries.list@.
2727module Network.Google.Resource.Monitoring.Projects.TimeSeries.List
2828 (
2929 -- * REST Resource
@@ -64,8 +64,8 @@ type ProjectsTimeSeriesListResource =
6464 "v3" :>
6565 Capture "name" Text :>
6666 "timeSeries" :>
67− QueryParam "interval.startTime" Text :>
68− QueryParam "$.xgafv" Text :>
67+ QueryParam "interval.startTime" DateTime' :>
68+ QueryParam "$.xgafv" Xgafv :>
6969 QueryParam "upload_protocol" Text :>
7070 QueryParam "orderBy" Text :>
7171 QueryParam "pp" Bool :>
@@ -80,10 +80,11 @@ type ProjectsTimeSeriesListResource =
8080 :>
8181 QueryParam "filter" Text :>
8282 QueryParam "aggregation.alignmentPeriod"
83− Text
83+ Duration
8484 :>
8585 QueryParam "pageToken" Text :>
86− QueryParam "interval.endTime" Text :>
86+ QueryParam "interval.endTime" DateTime'
87+ :>
8788 QueryParam "pageSize" (Textual Int32)
8889 :>
8990 QueryParam "callback" Text :>
@@ -96,8 +97,8 @@ type ProjectsTimeSeriesListResource =
9697--
9798-- /See:/ 'projectsTimeSeriesList' smart constructor.
9899data ProjectsTimeSeriesList = ProjectsTimeSeriesList'
99− { _ptslIntervalStartTime :: !(Maybe Text)
100− , _ptslXgafv :: !(Maybe Text)
100+ { _ptslIntervalStartTime :: !(Maybe DateTime')
101+ , _ptslXgafv :: !(Maybe Xgafv)
101102 , _ptslUploadProtocol :: !(Maybe Text)
102103 , _ptslOrderBy :: !(Maybe Text)
103104 , _ptslPp :: !Bool
@@ -110,9 +111,9 @@ data ProjectsTimeSeriesList = ProjectsTimeSeriesList'
110111 , _ptslView :: !(Maybe Text)
111112 , _ptslAggregationCrossSeriesReducer :: !(Maybe Text)
112113 , _ptslFilter :: !(Maybe Text)
113− , _ptslAggregationAlignmentPeriod :: !(Maybe Text)
114+ , _ptslAggregationAlignmentPeriod :: !(Maybe Duration)
114115 , _ptslPageToken :: !(Maybe Text)
115− , _ptslIntervalEndTime :: !(Maybe Text)
116+ , _ptslIntervalEndTime :: !(Maybe DateTime')
116117 , _ptslPageSize :: !(Maybe (Textual Int32))
117118 , _ptslCallback :: !(Maybe Text)
118119 } deriving (Eq,Show,Data,Typeable,Generic)
@@ -184,17 +185,17 @@ projectsTimeSeriesList pPtslName_ =
184185 , _ptslCallback = Nothing
185186 }
186187
187−-- | If this value is omitted, the interval is a point in time, \`endTime\`.
188−-- If \`startTime\` is present, it must be earlier than (less than)
189−-- \`endTime\`. The interval begins after \`startTime\`—it does not include
190−-- \`startTime\`.
191−ptslIntervalStartTime :: Lens' ProjectsTimeSeriesList (Maybe Text)
188+-- | Optional. The beginning of the time interval. The default value for the
189+-- start time is the end time. The start time must not be later than the
190+-- end time.
191+ptslIntervalStartTime :: Lens' ProjectsTimeSeriesList (Maybe UTCTime)
192192ptslIntervalStartTime
193193 = lens _ptslIntervalStartTime
194194 (\ s a -> s{_ptslIntervalStartTime = a})
195+ . mapping _DateTime
195196
196197-- | V1 error format.
197−ptslXgafv :: Lens' ProjectsTimeSeriesList (Maybe Text)
198+ptslXgafv :: Lens' ProjectsTimeSeriesList (Maybe Xgafv)
198199ptslXgafv
199200 = lens _ptslXgafv (\ s a -> s{_ptslXgafv = a})
200201
@@ -230,11 +231,11 @@ ptslUploadType
230231-- | The approach to be used to align individual time series. Not all
231232-- alignment functions may be applied to all time series, depending on the
232233-- metric type and value type of the original time series. Alignment may
233−-- change the metric type or the value type of the time series. Time series
234+-- change the metric type or the value type of the time series.Time series
234235-- data must be aligned in order to perform cross-time series reduction. If
235−-- \`crossSeriesReducer\` is specified, then \`perSeriesAligner\` must be
236−-- specified and not equal \`ALIGN_NONE\` and \`alignmentPeriod\` must be
237−-- specified; otherwise, an error is returned.
236+-- crossSeriesReducer is specified, then perSeriesAligner must be specified
237+-- and not equal ALIGN_NONE and alignmentPeriod must be specified;
238+-- otherwise, an error is returned.
238239ptslAggregationPerSeriesAligner :: Lens' ProjectsTimeSeriesList (Maybe Text)
239240ptslAggregationPerSeriesAligner
240241 = lens _ptslAggregationPerSeriesAligner
@@ -251,16 +252,15 @@ ptslBearerToken
251252ptslName :: Lens' ProjectsTimeSeriesList Text
252253ptslName = lens _ptslName (\ s a -> s{_ptslName = a})
253254
254−-- | The set of fields to preserve when \`crossSeriesReducer\` is specified.
255−-- The \`groupByFields\` determine how the time series are partitioned into
256−-- subsets prior to applying the aggregation function. Each subset contains
257−-- time series that have the same value for each of the grouping fields.
258−-- Each individual time series is a member of exactly one subset. The
259−-- \`crossSeriesReducer\` is applied to each subset of time series. Fields
260−-- not specified in \`groupByFields\` are aggregated away. If
261−-- \`groupByFields\` is not specified, the time series are aggregated into
262−-- a single output time series. If \`crossSeriesReducer\` is not defined,
263−-- this field is ignored.
255+-- | The set of fields to preserve when crossSeriesReducer is specified. The
256+-- groupByFields determine how the time series are partitioned into subsets
257+-- prior to applying the aggregation function. Each subset contains time
258+-- series that have the same value for each of the grouping fields. Each
259+-- individual time series is a member of exactly one subset. The
260+-- crossSeriesReducer is applied to each subset of time series. Fields not
261+-- specified in groupByFields are aggregated away. If groupByFields is not
262+-- specified, the time series are aggregated into a single output time
263+-- series. If crossSeriesReducer is not defined, this field is ignored.
264264ptslAggregationGroupByFields :: Lens' ProjectsTimeSeriesList [Text]
265265ptslAggregationGroupByFields
266266 = lens _ptslAggregationGroupByFields
@@ -275,17 +275,17 @@ ptslView = lens _ptslView (\ s a -> s{_ptslView = a})
275275-- | The approach to be used to combine time series. Not all reducer
276276-- functions may be applied to all time series, depending on the metric
277277-- type and the value type of the original time series. Reduction may
278−-- change the metric type of value type of the time series. Time series
279−-- data must be aligned in order to perform cross-time series reduction. If
280−-- \`crossSeriesReducer\` is specified, then \`perSeriesAligner\` must be
281−-- specified and not equal \`ALIGN_NONE\` and \`alignmentPeriod\` must be
282−-- specified; otherwise, an error is returned.
278+-- change the metric type of value type of the time series.Time series data
279+-- must be aligned in order to perform cross-time series reduction. If
280+-- crossSeriesReducer is specified, then perSeriesAligner must be specified
281+-- and not equal ALIGN_NONE and alignmentPeriod must be specified;
282+-- otherwise, an error is returned.
283283ptslAggregationCrossSeriesReducer :: Lens' ProjectsTimeSeriesList (Maybe Text)
284284ptslAggregationCrossSeriesReducer
285285 = lens _ptslAggregationCrossSeriesReducer
286286 (\ s a -> s{_ptslAggregationCrossSeriesReducer = a})
287287
288−-- | A [monitoring filter](\/monitoring\/api\/v3\/filters) that specifies
288+-- | A monitoring filter (\/monitoring\/api\/v3\/filters) that specifies
289289-- which time series should be returned. The filter must specify a single
290290-- metric type, and can additionally specify metric labels and other
291291-- information. For example: metric.type =
@@ -295,37 +295,38 @@ ptslFilter :: Lens' ProjectsTimeSeriesList (Maybe Text)
295295ptslFilter
296296 = lens _ptslFilter (\ s a -> s{_ptslFilter = a})
297297
298−-- | The alignment period for per-[time series](TimeSeries) alignment. If
299−-- present, \`alignmentPeriod\` must be at least 60 seconds. After per-time
300−-- series alignment, each time series will contain data points only on the
301−-- period boundaries. If \`perSeriesAligner\` is not specified or equals
302−-- \`ALIGN_NONE\`, then this field is ignored. If \`perSeriesAligner\` is
303−-- specified and does not equal \`ALIGN_NONE\`, then this field must be
304−-- defined; otherwise an error is returned.
305−ptslAggregationAlignmentPeriod :: Lens' ProjectsTimeSeriesList (Maybe Text)
298+-- | The alignment period for per-time series alignment. If present,
299+-- alignmentPeriod must be at least 60 seconds. After per-time series
300+-- alignment, each time series will contain data points only on the period
301+-- boundaries. If perSeriesAligner is not specified or equals ALIGN_NONE,
302+-- then this field is ignored. If perSeriesAligner is specified and does
303+-- not equal ALIGN_NONE, then this field must be defined; otherwise an
304+-- error is returned.
305+ptslAggregationAlignmentPeriod :: Lens' ProjectsTimeSeriesList (Maybe Scientific)
306306ptslAggregationAlignmentPeriod
307307 = lens _ptslAggregationAlignmentPeriod
308308 (\ s a -> s{_ptslAggregationAlignmentPeriod = a})
309+ . mapping _Duration
309310
310−-- | If this field is not empty then it must contain the \`nextPageToken\`
311−-- value returned by a previous call to this method. Using this field
312−-- causes the method to return additional results from the previous method
313−-- call.
311+-- | If this field is not empty then it must contain the nextPageToken value
312+-- returned by a previous call to this method. Using this field causes the
313+-- method to return additional results from the previous method call.
314314ptslPageToken :: Lens' ProjectsTimeSeriesList (Maybe Text)
315315ptslPageToken
316316 = lens _ptslPageToken
317317 (\ s a -> s{_ptslPageToken = a})
318318
319−-- | Required. The end of the interval. The interval includes this time.
320−ptslIntervalEndTime :: Lens' ProjectsTimeSeriesList (Maybe Text)
319+-- | Required. The end of the time interval.
320+ptslIntervalEndTime :: Lens' ProjectsTimeSeriesList (Maybe UTCTime)
321321ptslIntervalEndTime
322322 = lens _ptslIntervalEndTime
323323 (\ s a -> s{_ptslIntervalEndTime = a})
324+ . mapping _DateTime
324325
325326-- | A positive number that is the maximum number of results to return. When
326−-- \`view\` field sets to \`FULL\`, it limits the number of \`Points\`
327−-- server will return; if \`view\` field is \`HEADERS\`, it limits the
328−-- number of \`TimeSeries\` server will return.
327+-- view field sets to FULL, it limits the number of Points server will
328+-- return; if view field is HEADERS, it limits the number of TimeSeries
329+-- server will return.
329330ptslPageSize :: Lens' ProjectsTimeSeriesList (Maybe Int32)
330331ptslPageSize
331332 = lens _ptslPageSize (\ s a -> s{_ptslPageSize = a})
gogol-monitoring/gogol-monitoring.cabal+4−9
@@ -1,6 +1,6 @@
11name: gogol-monitoring
22version: 0.1.0
3−synopsis: Google Monitoring SDK.
3+synopsis: Google Stackdriver Monitoring SDK.
44homepage: https://github.com/brendanhay/gogol
55bug-reports: https://github.com/brendanhay/gogol/issues
66license: OtherLicense
@@ -14,14 +14,9 @@ cabal-version: >= 1.10
1414extra-source-files: README.md
1515
1616description:
17− Manages your Stackdriver monitoring data and configurations. Projects
18− must be associated with a Stackdriver account, except for the following
19− methods:
20− [monitoredResourceDescriptors.list](v3\/projects.monitoredResourceDescriptors\/list),
21− [monitoredResourceDescriptors.get](v3\/projects.monitoredResourceDescriptors\/get),
22− [metricDescriptors.list](v3\/projects.metricDescriptors\/list),
23− [metricDescriptors.get](v3\/projects.metricDescriptors\/get), and
24− [timeSeries.list](v3\/projects.timeSeries\/list).
17+ Manages your Stackdriver Monitoring data and configurations. Most
18+ projects must be associated with a Stackdriver account, with a few
19+ exceptions as noted on the individual method pages.
2520 .
2621 /Warning:/ This is an experimental prototype/preview release which is still
2722 under exploratory development and not intended for public use, caveat emptor!