/*
* 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 lightsail-2016-11-28.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.Lightsail.Model
{
///
/// Container for the parameters to the GetRelationalDatabaseMetricData operation.
/// Returns the data points of the specified metric for a database in Amazon Lightsail.
///
///
///
/// Metrics report the utilization of your resources, and the error counts generated by
/// them. Monitor and collect metric data regularly to maintain the reliability, availability,
/// and performance of your resources.
///
///
public partial class GetRelationalDatabaseMetricDataRequest : AmazonLightsailRequest
{
private DateTime? _endTime;
private RelationalDatabaseMetricName _metricName;
private int? _period;
private string _relationalDatabaseName;
private DateTime? _startTime;
private List _statistics = new List();
private MetricUnit _unit;
///
/// Gets and sets the property EndTime.
///
/// The end of the time interval from which to get metric data.
///
///
///
/// Constraints:
///
/// -
///
/// Specified in Coordinated Universal Time (UTC).
///
///
-
///
/// Specified in the Unix time format.
///
///
///
/// For example, if you wish to use an end time of October 1, 2018, at 8 PM UTC, then
/// you input
1538424000
as the end time.
///
///
///
[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 MetricName.
///
/// The metric for which you want to return information.
///
///
///
/// Valid relational database metric names are listed below, along with the most useful
/// statistics
to include in your request, and the published unit
/// value. All relational database metric data is available in 1-minute (60 seconds) granularity.
///
/// -
///
///
CPUUtilization
- The percentage of CPU utilization currently
/// in use on the database.
///
///
///
/// Statistics
: The most useful statistics are Maximum
and
/// Average
.
///
///
///
/// Unit
: The published unit is Percent
.
///
/// -
///
///
DatabaseConnections
- The number of database connections in
/// use.
///
///
///
/// Statistics
: The most useful statistics are Maximum
and
/// Sum
.
///
///
///
/// Unit
: The published unit is Count
.
///
/// -
///
///
DiskQueueDepth
- The number of outstanding IOs (read/write
/// requests) that are waiting to access the disk.
///
///
///
/// Statistics
: The most useful statistic is Sum
.
///
///
///
/// Unit
: The published unit is Count
.
///
/// -
///
///
FreeStorageSpace
- The amount of available storage space.
///
///
///
/// Statistics
: The most useful statistic is Sum
.
///
///
///
/// Unit
: The published unit is Bytes
.
///
/// -
///
///
NetworkReceiveThroughput
- The incoming (Receive) network traffic
/// on the database, including both customer database traffic and AWS traffic used for
/// monitoring and replication.
///
///
///
/// Statistics
: The most useful statistic is Average
.
///
///
///
/// Unit
: The published unit is Bytes/Second
.
///
/// -
///
///
NetworkTransmitThroughput
- The outgoing (Transmit) network
/// traffic on the database, including both customer database traffic and AWS traffic
/// used for monitoring and replication.
///
///
///
/// Statistics
: The most useful statistic is Average
.
///
///
///
/// Unit
: The published unit is Bytes/Second
.
///
///
///
[AWSProperty(Required=true)]
public RelationalDatabaseMetricName MetricName
{
get { return this._metricName; }
set { this._metricName = value; }
}
// Check to see if MetricName property is set
internal bool IsSetMetricName()
{
return this._metricName != null;
}
///
/// Gets and sets the property Period.
///
/// The granularity, in seconds, of the returned data points.
///
///
///
/// All relational database metric data is available in 1-minute (60 seconds) granularity.
///
///
[AWSProperty(Required=true, Min=60, Max=86400)]
public int Period
{
get { return this._period.GetValueOrDefault(); }
set { this._period = value; }
}
// Check to see if Period property is set
internal bool IsSetPeriod()
{
return this._period.HasValue;
}
///
/// Gets and sets the property RelationalDatabaseName.
///
/// The name of your database from which to get metric data.
///
///
[AWSProperty(Required=true)]
public string RelationalDatabaseName
{
get { return this._relationalDatabaseName; }
set { this._relationalDatabaseName = value; }
}
// Check to see if RelationalDatabaseName property is set
internal bool IsSetRelationalDatabaseName()
{
return this._relationalDatabaseName != null;
}
///
/// Gets and sets the property StartTime.
///
/// The start of the time interval from which to get metric data.
///
///
///
/// Constraints:
///
/// -
///
/// Specified in Coordinated Universal Time (UTC).
///
///
-
///
/// Specified in the Unix time format.
///
///
///
/// For example, if you wish to use a start time of October 1, 2018, at 8 PM UTC, then
/// you input
1538424000
as the start time.
///
///
///
[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;
}
///
/// Gets and sets the property Statistics.
///
/// The statistic for the metric.
///
///
///
/// The following statistics are available:
///
/// -
///
///
Minimum
- The lowest value observed during the specified period. Use
/// this value to determine low volumes of activity for your application.
///
/// -
///
///
Maximum
- The highest value observed during the specified period. Use
/// this value to determine high volumes of activity for your application.
///
/// -
///
///
Sum
- All values submitted for the matching metric added together. You
/// can use this statistic to determine the total volume of a metric.
///
/// -
///
///
Average
- The value of Sum / SampleCount during the specified period.
/// By comparing this statistic with the Minimum and Maximum values, you can determine
/// the full scope of a metric and how close the average use is to the Minimum and Maximum
/// values. This comparison helps you to know when to increase or decrease your resources.
///
/// -
///
///
SampleCount
- The count, or number, of data points used for the statistical
/// calculation.
///
///
///
[AWSProperty(Required=true)]
public List Statistics
{
get { return this._statistics; }
set { this._statistics = value; }
}
// Check to see if Statistics property is set
internal bool IsSetStatistics()
{
return this._statistics != null && this._statistics.Count > 0;
}
///
/// Gets and sets the property Unit.
///
/// The unit for the metric data request. Valid units depend on the metric data being
/// requested. For the valid units with each available metric, see the metricName
/// parameter.
///
///
[AWSProperty(Required=true)]
public MetricUnit Unit
{
get { return this._unit; }
set { this._unit = value; }
}
// Check to see if Unit property is set
internal bool IsSetUnit()
{
return this._unit != null;
}
}
}