/* * 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.devopsguru.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. Use these parameters to query the Performance Insights
* GetResourceMetrics
API to retrieve the metrics for an anomaly. For more information, see
* GetResourceMetrics
* in the Amazon RDS Performance Insights API Reference.
*
* Amazon RDS Performance Insights enables you to monitor and explore different dimensions of database load based on * data captured from a running DB instance. DB load is measured as average active sessions. Performance Insights * provides the data to API consumers as a two-dimensional time-series dataset. The time dimension provides DB load data * for each time point in the queried time range. Each time point decomposes overall load in relation to the requested * dimensions, measured at that time point. Examples include SQL, Wait event, User, and Host. *
** To learn more about Performance Insights and Amazon Aurora DB instances, go to the Amazon Aurora User * Guide. *
** To learn more about Performance Insights and Amazon RDS DB instances, go to the Amazon RDS User Guide. *
*
* The name of the meteric used used when querying an Performance Insights GetResourceMetrics
API for
* anomaly metrics.
*
* 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.
*
* 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.
*
* The specification for how to aggregate the data points from a Performance Insights
* GetResourceMetrics
API query. The Performance Insights query returns 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.
*
* One or more filters to apply to a Performance Insights GetResourceMetrics
API query. 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 the meteric used used when querying an Performance Insights GetResourceMetrics
API for
* anomaly metrics.
*
* 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.
*
* 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.
*
GetResourceMetrics
* API for anomaly metrics.
*
* 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.
*
* 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 the meteric used used when querying an Performance Insights GetResourceMetrics
API for
* anomaly metrics.
*
* 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.
*
* 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.
*
GetResourceMetrics
* API for anomaly metrics.
*
* 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.
*
* 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 the meteric used used when querying an Performance Insights GetResourceMetrics
API for
* anomaly metrics.
*
* 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.
*
* 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.
*
GetResourceMetrics
* API for anomaly metrics.
*
* 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.
*
* 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 PerformanceInsightsMetricQuery withMetric(String metric) {
setMetric(metric);
return this;
}
/**
*
* The specification for how to aggregate the data points from a Performance Insights
* GetResourceMetrics
API query. The Performance Insights query returns 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.
*
GetResourceMetrics
API query. The Performance Insights query returns 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(PerformanceInsightsMetricDimensionGroup groupBy) {
this.groupBy = groupBy;
}
/**
*
* The specification for how to aggregate the data points from a Performance Insights
* GetResourceMetrics
API query. The Performance Insights query returns 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.
*
GetResourceMetrics
API query. The Performance Insights query returns 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 PerformanceInsightsMetricDimensionGroup getGroupBy() {
return this.groupBy;
}
/**
*
* The specification for how to aggregate the data points from a Performance Insights
* GetResourceMetrics
API query. The Performance Insights query returns 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.
*
GetResourceMetrics
API query. The Performance Insights query returns 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 PerformanceInsightsMetricQuery withGroupBy(PerformanceInsightsMetricDimensionGroup groupBy) {
setGroupBy(groupBy);
return this;
}
/**
*
* One or more filters to apply to a Performance Insights GetResourceMetrics
API query. 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. *
*GetResourceMetrics
API query.
* 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. *
*
* One or more filters to apply to a Performance Insights GetResourceMetrics
API query. 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. *
*GetResourceMetrics
API query.
* 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. *
*
* One or more filters to apply to a Performance Insights GetResourceMetrics
API query. 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. *
*GetResourceMetrics
API query.
* 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. *
*