/* * Copyright 2018-2023 Amazon.com, Inc. or its affiliates. All Rights Reserved. * * Licensed under the Apache License, Version 2.0 (the "License"). You may not use this file except in compliance with * the License. A copy of the License is located at * * http://aws.amazon.com/apache2.0 * * or in the "license" file accompanying this file. This file is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR * CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions * and limitations under the License. */ package com.amazonaws.services.pi.model; import java.io.Serializable; import javax.annotation.Generated; import com.amazonaws.protocol.StructuredPojo; import com.amazonaws.protocol.ProtocolMarshaller; /** *
* A single query to be processed. You must provide the metric to query. If no other parameters are specified,
* Performance Insights returns all data points for the specified metric. Optionally, you can request that the data
* points be aggregated by dimension group (GroupBy
), and return only those data points that match your
* criteria (Filter
).
*
* The name of a Performance Insights metric to be measured. *
*
* Valid values for Metric
are:
*
* db.load.avg
- A scaled representation of the number of active sessions for the database engine.
*
* db.sampledload.avg
- The raw number of active sessions for the database engine.
*
* The counter metrics listed in Performance Insights operating system counters in the Amazon Aurora User Guide. *
*
* If the number of active sessions is less than an internal Performance Insights threshold,
* db.load.avg
and db.sampledload.avg
are the same value. If the number of active sessions
* is greater than the internal threshold, Performance Insights samples the active sessions, with
* db.load.avg
showing the scaled values, db.sampledload.avg
showing the raw values, and
* db.sampledload.avg
less than db.load.avg
. For most use cases, you can query
* db.load.avg
only.
*
* A specification for how to aggregate the data points from a query result. You must specify a valid dimension * group. Performance Insights will return all of the dimensions within that group, unless you provide the names of * specific dimensions within that group. You can also request that Performance Insights return a limited number of * values for a dimension. *
*/ private DimensionGroup groupBy; /** ** One or more filters to apply in the request. Restrictions: *
*
* Any number of filters by the same dimension, as specified in the GroupBy
parameter.
*
* A single filter for any other dimension in this dimension group. *
** The name of a Performance Insights metric to be measured. *
*
* Valid values for Metric
are:
*
* db.load.avg
- A scaled representation of the number of active sessions for the database engine.
*
* db.sampledload.avg
- The raw number of active sessions for the database engine.
*
* The counter metrics listed in Performance Insights operating system counters in the Amazon Aurora User Guide. *
*
* If the number of active sessions is less than an internal Performance Insights threshold,
* db.load.avg
and db.sampledload.avg
are the same value. If the number of active sessions
* is greater than the internal threshold, Performance Insights samples the active sessions, with
* db.load.avg
showing the scaled values, db.sampledload.avg
showing the raw values, and
* db.sampledload.avg
less than db.load.avg
. For most use cases, you can query
* db.load.avg
only.
*
* Valid values for Metric
are:
*
* db.load.avg
- A scaled representation of the number of active sessions for the database
* engine.
*
* db.sampledload.avg
- The raw number of active sessions for the database engine.
*
* The counter metrics listed in Performance Insights operating system counters in the Amazon Aurora User Guide. *
*
* If the number of active sessions is less than an internal Performance Insights threshold,
* db.load.avg
and db.sampledload.avg
are the same value. If the number of active
* sessions is greater than the internal threshold, Performance Insights samples the active sessions, with
* db.load.avg
showing the scaled values, db.sampledload.avg
showing the raw
* values, and db.sampledload.avg
less than db.load.avg
. For most use cases, you
* can query db.load.avg
only.
*/
public void setMetric(String metric) {
this.metric = metric;
}
/**
*
* The name of a Performance Insights metric to be measured. *
*
* Valid values for Metric
are:
*
* db.load.avg
- A scaled representation of the number of active sessions for the database engine.
*
* db.sampledload.avg
- The raw number of active sessions for the database engine.
*
* The counter metrics listed in Performance Insights operating system counters in the Amazon Aurora User Guide. *
*
* If the number of active sessions is less than an internal Performance Insights threshold,
* db.load.avg
and db.sampledload.avg
are the same value. If the number of active sessions
* is greater than the internal threshold, Performance Insights samples the active sessions, with
* db.load.avg
showing the scaled values, db.sampledload.avg
showing the raw values, and
* db.sampledload.avg
less than db.load.avg
. For most use cases, you can query
* db.load.avg
only.
*
* Valid values for Metric
are:
*
* db.load.avg
- A scaled representation of the number of active sessions for the database
* engine.
*
* db.sampledload.avg
- The raw number of active sessions for the database engine.
*
* The counter metrics listed in Performance Insights operating system counters in the Amazon Aurora User Guide. *
*
* If the number of active sessions is less than an internal Performance Insights threshold,
* db.load.avg
and db.sampledload.avg
are the same value. If the number of active
* sessions is greater than the internal threshold, Performance Insights samples the active sessions, with
* db.load.avg
showing the scaled values, db.sampledload.avg
showing the raw
* values, and db.sampledload.avg
less than db.load.avg
. For most use cases, you
* can query db.load.avg
only.
*/
public String getMetric() {
return this.metric;
}
/**
*
* The name of a Performance Insights metric to be measured. *
*
* Valid values for Metric
are:
*
* db.load.avg
- A scaled representation of the number of active sessions for the database engine.
*
* db.sampledload.avg
- The raw number of active sessions for the database engine.
*
* The counter metrics listed in Performance Insights operating system counters in the Amazon Aurora User Guide. *
*
* If the number of active sessions is less than an internal Performance Insights threshold,
* db.load.avg
and db.sampledload.avg
are the same value. If the number of active sessions
* is greater than the internal threshold, Performance Insights samples the active sessions, with
* db.load.avg
showing the scaled values, db.sampledload.avg
showing the raw values, and
* db.sampledload.avg
less than db.load.avg
. For most use cases, you can query
* db.load.avg
only.
*
* Valid values for Metric
are:
*
* db.load.avg
- A scaled representation of the number of active sessions for the database
* engine.
*
* db.sampledload.avg
- The raw number of active sessions for the database engine.
*
* The counter metrics listed in Performance Insights operating system counters in the Amazon Aurora User Guide. *
*
* If the number of active sessions is less than an internal Performance Insights threshold,
* db.load.avg
and db.sampledload.avg
are the same value. If the number of active
* sessions is greater than the internal threshold, Performance Insights samples the active sessions, with
* db.load.avg
showing the scaled values, db.sampledload.avg
showing the raw
* values, and db.sampledload.avg
less than db.load.avg
. For most use cases, you
* can query db.load.avg
only.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public MetricQuery withMetric(String metric) {
setMetric(metric);
return this;
}
/**
*
* A specification for how to aggregate the data points from a query result. You must specify a valid dimension * group. Performance Insights will return all of the dimensions within that group, unless you provide the names of * specific dimensions within that group. You can also request that Performance Insights return a limited number of * values for a dimension. *
* * @param groupBy * A specification for how to aggregate the data points from a query result. You must specify a valid * dimension group. Performance Insights will return all of the dimensions within that group, unless you * provide the names of specific dimensions within that group. You can also request that Performance Insights * return a limited number of values for a dimension. */ public void setGroupBy(DimensionGroup groupBy) { this.groupBy = groupBy; } /** ** A specification for how to aggregate the data points from a query result. You must specify a valid dimension * group. Performance Insights will return all of the dimensions within that group, unless you provide the names of * specific dimensions within that group. You can also request that Performance Insights return a limited number of * values for a dimension. *
* * @return A specification for how to aggregate the data points from a query result. You must specify a valid * dimension group. Performance Insights will return all of the dimensions within that group, unless you * provide the names of specific dimensions within that group. You can also request that Performance * Insights return a limited number of values for a dimension. */ public DimensionGroup getGroupBy() { return this.groupBy; } /** ** A specification for how to aggregate the data points from a query result. You must specify a valid dimension * group. Performance Insights will return all of the dimensions within that group, unless you provide the names of * specific dimensions within that group. You can also request that Performance Insights return a limited number of * values for a dimension. *
* * @param groupBy * A specification for how to aggregate the data points from a query result. You must specify a valid * dimension group. Performance Insights will return all of the dimensions within that group, unless you * provide the names of specific dimensions within that group. You can also request that Performance Insights * return a limited number of values for a dimension. * @return Returns a reference to this object so that method calls can be chained together. */ public MetricQuery withGroupBy(DimensionGroup groupBy) { setGroupBy(groupBy); return this; } /** ** One or more filters to apply in the request. Restrictions: *
*
* Any number of filters by the same dimension, as specified in the GroupBy
parameter.
*
* A single filter for any other dimension in this dimension group. *
*
* Any number of filters by the same dimension, as specified in the GroupBy
parameter.
*
* A single filter for any other dimension in this dimension group. *
** One or more filters to apply in the request. Restrictions: *
*
* Any number of filters by the same dimension, as specified in the GroupBy
parameter.
*
* A single filter for any other dimension in this dimension group. *
*
* Any number of filters by the same dimension, as specified in the GroupBy
parameter.
*
* A single filter for any other dimension in this dimension group. *
** One or more filters to apply in the request. Restrictions: *
*
* Any number of filters by the same dimension, as specified in the GroupBy
parameter.
*
* A single filter for any other dimension in this dimension group. *
*
* Any number of filters by the same dimension, as specified in the GroupBy
parameter.
*
* A single filter for any other dimension in this dimension group. *
*