/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include This structure is used in both When used in When used in
* Any expression used in a Some of the parameters of this structure also have different uses whether you
* are using this structure in a GetMetricData
and
* PutMetricAlarm
. The supported use of this structure is different
* for those two operations.GetMetricData
, it
* indicates the metric data to return, and whether this call is just retrieving a
* batch set of data for one metric, or is performing a Metrics Insights query or a
* math expression. A single GetMetricData
call can include up to 500
* MetricDataQuery
structures.PutMetricAlarm
, it enables you to create an alarm based on a metric
* math expression. Each MetricDataQuery
in the array specifies either
* a metric to retrieve, or a math expression to be performed on retrieved metrics.
* A single PutMetricAlarm
call can include up to 20
* MetricDataQuery
structures in the array. The 20 structures can
* include as many as 10 structures that contain a MetricStat
* parameter to retrieve a metric, and as many as 10 structures that contain the
* Expression
parameter to perform a math expression. Of those
* Expression
structures, one must have true
as the value
* for ReturnData
. The result of this expression is the value the
* alarm watches.PutMetricAlarm
* operation must return a single time series. For more information, see Metric
* Math Syntax and Functions in the Amazon CloudWatch User Guide.GetMetricData
operation or a
* PutMetricAlarm
operation. These differences are explained in the
* following parameter list.See Also:
AWS
* API Reference
A short name used to tie this object to the results in the response. This
* name must be unique within a single call to GetMetricData
. If you
* are performing math expressions on this set of data, this name represents that
* data and can serve as a variable in the mathematical expression. The valid
* characters are letters, numbers, and underscore. The first character must be a
* lowercase letter.
A short name used to tie this object to the results in the response. This
* name must be unique within a single call to GetMetricData
. If you
* are performing math expressions on this set of data, this name represents that
* data and can serve as a variable in the mathematical expression. The valid
* characters are letters, numbers, and underscore. The first character must be a
* lowercase letter.
A short name used to tie this object to the results in the response. This
* name must be unique within a single call to GetMetricData
. If you
* are performing math expressions on this set of data, this name represents that
* data and can serve as a variable in the mathematical expression. The valid
* characters are letters, numbers, and underscore. The first character must be a
* lowercase letter.
A short name used to tie this object to the results in the response. This
* name must be unique within a single call to GetMetricData
. If you
* are performing math expressions on this set of data, this name represents that
* data and can serve as a variable in the mathematical expression. The valid
* characters are letters, numbers, and underscore. The first character must be a
* lowercase letter.
A short name used to tie this object to the results in the response. This
* name must be unique within a single call to GetMetricData
. If you
* are performing math expressions on this set of data, this name represents that
* data and can serve as a variable in the mathematical expression. The valid
* characters are letters, numbers, and underscore. The first character must be a
* lowercase letter.
A short name used to tie this object to the results in the response. This
* name must be unique within a single call to GetMetricData
. If you
* are performing math expressions on this set of data, this name represents that
* data and can serve as a variable in the mathematical expression. The valid
* characters are letters, numbers, and underscore. The first character must be a
* lowercase letter.
A short name used to tie this object to the results in the response. This
* name must be unique within a single call to GetMetricData
. If you
* are performing math expressions on this set of data, this name represents that
* data and can serve as a variable in the mathematical expression. The valid
* characters are letters, numbers, and underscore. The first character must be a
* lowercase letter.
A short name used to tie this object to the results in the response. This
* name must be unique within a single call to GetMetricData
. If you
* are performing math expressions on this set of data, this name represents that
* data and can serve as a variable in the mathematical expression. The valid
* characters are letters, numbers, and underscore. The first character must be a
* lowercase letter.
The metric to be returned, along with statistics, period, and units. Use this * parameter only if this object is retrieving a metric and not performing a math * expression on returned data.
Within one MetricDataQuery object, you must
* specify either Expression
or MetricStat
but not
* both.
The metric to be returned, along with statistics, period, and units. Use this * parameter only if this object is retrieving a metric and not performing a math * expression on returned data.
Within one MetricDataQuery object, you must
* specify either Expression
or MetricStat
but not
* both.
The metric to be returned, along with statistics, period, and units. Use this * parameter only if this object is retrieving a metric and not performing a math * expression on returned data.
Within one MetricDataQuery object, you must
* specify either Expression
or MetricStat
but not
* both.
The metric to be returned, along with statistics, period, and units. Use this * parameter only if this object is retrieving a metric and not performing a math * expression on returned data.
Within one MetricDataQuery object, you must
* specify either Expression
or MetricStat
but not
* both.
The metric to be returned, along with statistics, period, and units. Use this * parameter only if this object is retrieving a metric and not performing a math * expression on returned data.
Within one MetricDataQuery object, you must
* specify either Expression
or MetricStat
but not
* both.
The metric to be returned, along with statistics, period, and units. Use this * parameter only if this object is retrieving a metric and not performing a math * expression on returned data.
Within one MetricDataQuery object, you must
* specify either Expression
or MetricStat
but not
* both.
This field can contain either a Metrics Insights query, or a metric math * expression to be performed on the returned data. For more information about * Metrics Insights queries, see Metrics * Insights query components and syntax in the Amazon CloudWatch User * Guide.
A math expression can use the Id
of the other
* metrics or queries to refer to those metrics, and can also use the
* Id
of other expressions to use the result of those expressions. For
* more information about metric math expressions, see Metric
* Math Syntax and Functions in the Amazon CloudWatch User Guide.
Within each MetricDataQuery object, you must specify either
* Expression
or MetricStat
but not both.
This field can contain either a Metrics Insights query, or a metric math * expression to be performed on the returned data. For more information about * Metrics Insights queries, see Metrics * Insights query components and syntax in the Amazon CloudWatch User * Guide.
A math expression can use the Id
of the other
* metrics or queries to refer to those metrics, and can also use the
* Id
of other expressions to use the result of those expressions. For
* more information about metric math expressions, see Metric
* Math Syntax and Functions in the Amazon CloudWatch User Guide.
Within each MetricDataQuery object, you must specify either
* Expression
or MetricStat
but not both.
This field can contain either a Metrics Insights query, or a metric math * expression to be performed on the returned data. For more information about * Metrics Insights queries, see Metrics * Insights query components and syntax in the Amazon CloudWatch User * Guide.
A math expression can use the Id
of the other
* metrics or queries to refer to those metrics, and can also use the
* Id
of other expressions to use the result of those expressions. For
* more information about metric math expressions, see Metric
* Math Syntax and Functions in the Amazon CloudWatch User Guide.
Within each MetricDataQuery object, you must specify either
* Expression
or MetricStat
but not both.
This field can contain either a Metrics Insights query, or a metric math * expression to be performed on the returned data. For more information about * Metrics Insights queries, see Metrics * Insights query components and syntax in the Amazon CloudWatch User * Guide.
A math expression can use the Id
of the other
* metrics or queries to refer to those metrics, and can also use the
* Id
of other expressions to use the result of those expressions. For
* more information about metric math expressions, see Metric
* Math Syntax and Functions in the Amazon CloudWatch User Guide.
Within each MetricDataQuery object, you must specify either
* Expression
or MetricStat
but not both.
This field can contain either a Metrics Insights query, or a metric math * expression to be performed on the returned data. For more information about * Metrics Insights queries, see Metrics * Insights query components and syntax in the Amazon CloudWatch User * Guide.
A math expression can use the Id
of the other
* metrics or queries to refer to those metrics, and can also use the
* Id
of other expressions to use the result of those expressions. For
* more information about metric math expressions, see Metric
* Math Syntax and Functions in the Amazon CloudWatch User Guide.
Within each MetricDataQuery object, you must specify either
* Expression
or MetricStat
but not both.
This field can contain either a Metrics Insights query, or a metric math * expression to be performed on the returned data. For more information about * Metrics Insights queries, see Metrics * Insights query components and syntax in the Amazon CloudWatch User * Guide.
A math expression can use the Id
of the other
* metrics or queries to refer to those metrics, and can also use the
* Id
of other expressions to use the result of those expressions. For
* more information about metric math expressions, see Metric
* Math Syntax and Functions in the Amazon CloudWatch User Guide.
Within each MetricDataQuery object, you must specify either
* Expression
or MetricStat
but not both.
This field can contain either a Metrics Insights query, or a metric math * expression to be performed on the returned data. For more information about * Metrics Insights queries, see Metrics * Insights query components and syntax in the Amazon CloudWatch User * Guide.
A math expression can use the Id
of the other
* metrics or queries to refer to those metrics, and can also use the
* Id
of other expressions to use the result of those expressions. For
* more information about metric math expressions, see Metric
* Math Syntax and Functions in the Amazon CloudWatch User Guide.
Within each MetricDataQuery object, you must specify either
* Expression
or MetricStat
but not both.
This field can contain either a Metrics Insights query, or a metric math * expression to be performed on the returned data. For more information about * Metrics Insights queries, see Metrics * Insights query components and syntax in the Amazon CloudWatch User * Guide.
A math expression can use the Id
of the other
* metrics or queries to refer to those metrics, and can also use the
* Id
of other expressions to use the result of those expressions. For
* more information about metric math expressions, see Metric
* Math Syntax and Functions in the Amazon CloudWatch User Guide.
Within each MetricDataQuery object, you must specify either
* Expression
or MetricStat
but not both.
A human-readable label for this metric or expression. This is especially * useful if this is an expression, so that you know what the value represents. If * the metric or expression is shown in a CloudWatch dashboard widget, the label is * shown. If Label is omitted, CloudWatch generates a default.
You can put * dynamic expressions into a label, so that it is more descriptive. For more * information, see Using * Dynamic Labels.
*/ inline const Aws::String& GetLabel() const{ return m_label; } /** *A human-readable label for this metric or expression. This is especially * useful if this is an expression, so that you know what the value represents. If * the metric or expression is shown in a CloudWatch dashboard widget, the label is * shown. If Label is omitted, CloudWatch generates a default.
You can put * dynamic expressions into a label, so that it is more descriptive. For more * information, see Using * Dynamic Labels.
*/ inline bool LabelHasBeenSet() const { return m_labelHasBeenSet; } /** *A human-readable label for this metric or expression. This is especially * useful if this is an expression, so that you know what the value represents. If * the metric or expression is shown in a CloudWatch dashboard widget, the label is * shown. If Label is omitted, CloudWatch generates a default.
You can put * dynamic expressions into a label, so that it is more descriptive. For more * information, see Using * Dynamic Labels.
*/ inline void SetLabel(const Aws::String& value) { m_labelHasBeenSet = true; m_label = value; } /** *A human-readable label for this metric or expression. This is especially * useful if this is an expression, so that you know what the value represents. If * the metric or expression is shown in a CloudWatch dashboard widget, the label is * shown. If Label is omitted, CloudWatch generates a default.
You can put * dynamic expressions into a label, so that it is more descriptive. For more * information, see Using * Dynamic Labels.
*/ inline void SetLabel(Aws::String&& value) { m_labelHasBeenSet = true; m_label = std::move(value); } /** *A human-readable label for this metric or expression. This is especially * useful if this is an expression, so that you know what the value represents. If * the metric or expression is shown in a CloudWatch dashboard widget, the label is * shown. If Label is omitted, CloudWatch generates a default.
You can put * dynamic expressions into a label, so that it is more descriptive. For more * information, see Using * Dynamic Labels.
*/ inline void SetLabel(const char* value) { m_labelHasBeenSet = true; m_label.assign(value); } /** *A human-readable label for this metric or expression. This is especially * useful if this is an expression, so that you know what the value represents. If * the metric or expression is shown in a CloudWatch dashboard widget, the label is * shown. If Label is omitted, CloudWatch generates a default.
You can put * dynamic expressions into a label, so that it is more descriptive. For more * information, see Using * Dynamic Labels.
*/ inline MetricDataQuery& WithLabel(const Aws::String& value) { SetLabel(value); return *this;} /** *A human-readable label for this metric or expression. This is especially * useful if this is an expression, so that you know what the value represents. If * the metric or expression is shown in a CloudWatch dashboard widget, the label is * shown. If Label is omitted, CloudWatch generates a default.
You can put * dynamic expressions into a label, so that it is more descriptive. For more * information, see Using * Dynamic Labels.
*/ inline MetricDataQuery& WithLabel(Aws::String&& value) { SetLabel(std::move(value)); return *this;} /** *A human-readable label for this metric or expression. This is especially * useful if this is an expression, so that you know what the value represents. If * the metric or expression is shown in a CloudWatch dashboard widget, the label is * shown. If Label is omitted, CloudWatch generates a default.
You can put * dynamic expressions into a label, so that it is more descriptive. For more * information, see Using * Dynamic Labels.
*/ inline MetricDataQuery& WithLabel(const char* value) { SetLabel(value); return *this;} /** *When used in GetMetricData
, this option indicates whether to
* return the timestamps and raw data values of this metric. If you are performing
* this call just to do math expressions and do not also need the raw data
* returned, you can specify false
. If you omit this, the default of
* true
is used.
When used in PutMetricAlarm
,
* specify true
for the one expression result to use as the alarm. For
* all other metrics and expressions in the same PutMetricAlarm
* operation, specify ReturnData
as False.
When used in GetMetricData
, this option indicates whether to
* return the timestamps and raw data values of this metric. If you are performing
* this call just to do math expressions and do not also need the raw data
* returned, you can specify false
. If you omit this, the default of
* true
is used.
When used in PutMetricAlarm
,
* specify true
for the one expression result to use as the alarm. For
* all other metrics and expressions in the same PutMetricAlarm
* operation, specify ReturnData
as False.
When used in GetMetricData
, this option indicates whether to
* return the timestamps and raw data values of this metric. If you are performing
* this call just to do math expressions and do not also need the raw data
* returned, you can specify false
. If you omit this, the default of
* true
is used.
When used in PutMetricAlarm
,
* specify true
for the one expression result to use as the alarm. For
* all other metrics and expressions in the same PutMetricAlarm
* operation, specify ReturnData
as False.
When used in GetMetricData
, this option indicates whether to
* return the timestamps and raw data values of this metric. If you are performing
* this call just to do math expressions and do not also need the raw data
* returned, you can specify false
. If you omit this, the default of
* true
is used.
When used in PutMetricAlarm
,
* specify true
for the one expression result to use as the alarm. For
* all other metrics and expressions in the same PutMetricAlarm
* operation, specify ReturnData
as False.
The granularity, in seconds, of the returned data points. For metrics with
* regular resolution, a period can be as short as one minute (60 seconds) and must
* be a multiple of 60. For high-resolution metrics that are collected at intervals
* of less than one minute, the period can be 1, 5, 10, 30, 60, or any multiple of
* 60. High-resolution metrics are those metrics stored by a
* PutMetricData
operation that includes a StorageResolution of
* 1 second
.
The granularity, in seconds, of the returned data points. For metrics with
* regular resolution, a period can be as short as one minute (60 seconds) and must
* be a multiple of 60. For high-resolution metrics that are collected at intervals
* of less than one minute, the period can be 1, 5, 10, 30, 60, or any multiple of
* 60. High-resolution metrics are those metrics stored by a
* PutMetricData
operation that includes a StorageResolution of
* 1 second
.
The granularity, in seconds, of the returned data points. For metrics with
* regular resolution, a period can be as short as one minute (60 seconds) and must
* be a multiple of 60. For high-resolution metrics that are collected at intervals
* of less than one minute, the period can be 1, 5, 10, 30, 60, or any multiple of
* 60. High-resolution metrics are those metrics stored by a
* PutMetricData
operation that includes a StorageResolution of
* 1 second
.
The granularity, in seconds, of the returned data points. For metrics with
* regular resolution, a period can be as short as one minute (60 seconds) and must
* be a multiple of 60. For high-resolution metrics that are collected at intervals
* of less than one minute, the period can be 1, 5, 10, 30, 60, or any multiple of
* 60. High-resolution metrics are those metrics stored by a
* PutMetricData
operation that includes a StorageResolution of
* 1 second
.
The ID of the account where the metrics are located.
If you are
* performing a GetMetricData
operation in a monitoring account, use
* this to specify which account to retrieve this metric from.
If you are
* performing a PutMetricAlarm
operation, use this to specify which
* account contains the metric that the alarm is watching.
The ID of the account where the metrics are located.
If you are
* performing a GetMetricData
operation in a monitoring account, use
* this to specify which account to retrieve this metric from.
If you are
* performing a PutMetricAlarm
operation, use this to specify which
* account contains the metric that the alarm is watching.
The ID of the account where the metrics are located.
If you are
* performing a GetMetricData
operation in a monitoring account, use
* this to specify which account to retrieve this metric from.
If you are
* performing a PutMetricAlarm
operation, use this to specify which
* account contains the metric that the alarm is watching.
The ID of the account where the metrics are located.
If you are
* performing a GetMetricData
operation in a monitoring account, use
* this to specify which account to retrieve this metric from.
If you are
* performing a PutMetricAlarm
operation, use this to specify which
* account contains the metric that the alarm is watching.
The ID of the account where the metrics are located.
If you are
* performing a GetMetricData
operation in a monitoring account, use
* this to specify which account to retrieve this metric from.
If you are
* performing a PutMetricAlarm
operation, use this to specify which
* account contains the metric that the alarm is watching.
The ID of the account where the metrics are located.
If you are
* performing a GetMetricData
operation in a monitoring account, use
* this to specify which account to retrieve this metric from.
If you are
* performing a PutMetricAlarm
operation, use this to specify which
* account contains the metric that the alarm is watching.
The ID of the account where the metrics are located.
If you are
* performing a GetMetricData
operation in a monitoring account, use
* this to specify which account to retrieve this metric from.
If you are
* performing a PutMetricAlarm
operation, use this to specify which
* account contains the metric that the alarm is watching.
The ID of the account where the metrics are located.
If you are
* performing a GetMetricData
operation in a monitoring account, use
* this to specify which account to retrieve this metric from.
If you are
* performing a PutMetricAlarm
operation, use this to specify which
* account contains the metric that the alarm is watching.