/* * Copyright 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. */ /* * Do not modify this file. This file is generated from the pi-2018-02-27.normal.json service model. */ using System; using System.Collections.Generic; using System.Xml.Serialization; using System.Text; using System.IO; using System.Net; using Amazon.Runtime; using Amazon.Runtime.Internal; namespace Amazon.PI.Model { /// /// Container for the parameters to the DescribeDimensionKeys operation. /// For a specific time period, retrieve the top N dimension keys for a metric. /// /// /// /// /// Each response element returns a maximum of 500 bytes. For larger elements, such as /// SQL statements, only the first 500 bytes are returned. /// /// /// public partial class DescribeDimensionKeysRequest : AmazonPIRequest { private List _additionalMetrics = new List(); private DateTime? _endTime; private Dictionary _filter = new Dictionary(); private DimensionGroup _groupBy; private string _identifier; private int? _maxResults; private string _metric; private string _nextToken; private DimensionGroup _partitionBy; private int? _periodInSeconds; private ServiceType _serviceType; private DateTime? _startTime; /// /// Gets and sets the property AdditionalMetrics. /// /// Additional metrics for the top N dimension keys. If the specified dimension /// group in the GroupBy parameter is db.sql_tokenized, you /// can specify per-SQL metrics to get the values for the top N SQL digests. /// The response syntax is as follows: "AdditionalMetrics" : { "string" : /// "string" }. /// /// [AWSProperty(Min=1, Max=30)] public List AdditionalMetrics { get { return this._additionalMetrics; } set { this._additionalMetrics = value; } } // Check to see if AdditionalMetrics property is set internal bool IsSetAdditionalMetrics() { return this._additionalMetrics != null && this._additionalMetrics.Count > 0; } /// /// Gets and sets the property EndTime. /// /// The date and time specifying the end of the requested time series data. The value /// specified is exclusive, which means that data points less than (but not equal /// to) EndTime are returned. /// /// /// /// The value for EndTime must be later than the value for StartTime. /// /// [AWSProperty(Required=true)] public DateTime EndTime { get { return this._endTime.GetValueOrDefault(); } set { this._endTime = value; } } // Check to see if EndTime property is set internal bool IsSetEndTime() { return this._endTime.HasValue; } /// /// Gets and sets the property Filter. /// /// One or more filters to apply in the request. Restrictions: /// ///
  • /// /// Any number of filters by the same dimension, as specified in the GroupBy /// or Partition parameters. /// ///
  • /// /// A single filter for any other dimension in this dimension group. /// ///
///
public Dictionary Filter { get { return this._filter; } set { this._filter = value; } } // Check to see if Filter property is set internal bool IsSetFilter() { return this._filter != null && this._filter.Count > 0; } /// /// Gets and sets the property GroupBy. /// /// A specification for how to aggregate the data points from a query result. You must /// specify a valid dimension group. Performance Insights returns all dimensions within /// this group, unless you provide the names of specific dimensions within this group. /// You can also request that Performance Insights return a limited number of values for /// a dimension. /// /// [AWSProperty(Required=true)] public DimensionGroup GroupBy { get { return this._groupBy; } set { this._groupBy = value; } } // Check to see if GroupBy property is set internal bool IsSetGroupBy() { return this._groupBy != null; } /// /// Gets and sets the property Identifier. /// /// An immutable, Amazon Web Services Region-unique identifier for a data source. Performance /// Insights gathers metrics from this data source. /// /// /// /// To use an Amazon RDS instance as a data source, you specify its DbiResourceId /// value. For example, specify db-FAIHNTYBKTGAUSUZQYPDS2GW4A. /// /// [AWSProperty(Required=true, Min=0, Max=256)] public string Identifier { get { return this._identifier; } set { this._identifier = value; } } // Check to see if Identifier property is set internal bool IsSetIdentifier() { return this._identifier != null; } /// /// Gets and sets the property MaxResults. /// /// The maximum number of items to return in the response. If more items exist than the /// specified MaxRecords value, a pagination token is included in the response /// so that the remaining results can be retrieved. /// /// [AWSProperty(Min=0, Max=25)] public int MaxResults { get { return this._maxResults.GetValueOrDefault(); } set { this._maxResults = value; } } // Check to see if MaxResults property is set internal bool IsSetMaxResults() { return this._maxResults.HasValue; } /// /// Gets and sets the property 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. /// ///
/// /// 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. /// ///
[AWSProperty(Required=true, Min=0, Max=256)] public string Metric { get { return this._metric; } set { this._metric = value; } } // Check to see if Metric property is set internal bool IsSetMetric() { return this._metric != null; } /// /// Gets and sets the property NextToken. /// /// An optional pagination token provided by a previous request. If this parameter is /// specified, the response includes only records beyond the token, up to the value specified /// by MaxRecords. /// /// [AWSProperty(Min=1, Max=8192)] public string NextToken { get { return this._nextToken; } set { this._nextToken = value; } } // Check to see if NextToken property is set internal bool IsSetNextToken() { return this._nextToken != null; } /// /// Gets and sets the property PartitionBy. /// /// For each dimension specified in GroupBy, specify a secondary dimension /// to further subdivide the partition keys in the response. /// /// public DimensionGroup PartitionBy { get { return this._partitionBy; } set { this._partitionBy = value; } } // Check to see if PartitionBy property is set internal bool IsSetPartitionBy() { return this._partitionBy != null; } /// /// Gets and sets the property PeriodInSeconds. /// /// The granularity, in seconds, of the data points returned from Performance Insights. /// A period can be as short as one second, or as long as one day (86400 seconds). Valid /// values are: /// ///
  • /// /// 1 (one second) /// ///
  • /// /// 60 (one minute) /// ///
  • /// /// 300 (five minutes) /// ///
  • /// /// 3600 (one hour) /// ///
  • /// /// 86400 (twenty-four hours) /// ///
/// /// If you don't specify PeriodInSeconds, then Performance Insights chooses /// a value for you, with a goal of returning roughly 100-200 data points in the response. /// /// ///
public int PeriodInSeconds { get { return this._periodInSeconds.GetValueOrDefault(); } set { this._periodInSeconds = value; } } // Check to see if PeriodInSeconds property is set internal bool IsSetPeriodInSeconds() { return this._periodInSeconds.HasValue; } /// /// Gets and sets the property ServiceType. /// /// The Amazon Web Services service for which Performance Insights will return metrics. /// Valid values are as follows: /// ///
  • /// /// RDS /// ///
  • /// /// DOCDB /// ///
///
[AWSProperty(Required=true)] public ServiceType ServiceType { get { return this._serviceType; } set { this._serviceType = value; } } // Check to see if ServiceType property is set internal bool IsSetServiceType() { return this._serviceType != null; } /// /// Gets and sets the property StartTime. /// /// The date and time specifying the beginning of the requested time series data. You /// must specify a StartTime within the past 7 days. The value specified /// is inclusive, which means that data points equal to or greater than StartTime /// are returned. /// /// /// /// The value for StartTime must be earlier than the value for EndTime. /// /// /// [AWSProperty(Required=true)] public DateTime StartTime { get { return this._startTime.GetValueOrDefault(); } set { this._startTime = value; } } // Check to see if StartTime property is set internal bool IsSetStartTime() { return this._startTime.HasValue; } } }