/*
* 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 devops-guru-2020-12-01.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.DevOpsGuru.Model
{
///
/// Information about an anomaly. This object is returned by ListAnomalies
.
///
public partial class ProactiveAnomaly
{
private AnomalyReportedTimeRange _anomalyReportedTimeRange;
private List _anomalyResources = new List();
private AnomalyTimeRange _anomalyTimeRange;
private string _associatedInsightId;
private string _description;
private string _id;
private double? _limit;
private PredictionTimeRange _predictionTimeRange;
private ResourceCollection _resourceCollection;
private AnomalySeverity _severity;
private AnomalySourceDetails _sourceDetails;
private AnomalySourceMetadata _sourceMetadata;
private AnomalyStatus _status;
private DateTime? _updateTime;
///
/// Gets and sets the property AnomalyReportedTimeRange.
///
/// An AnomalyReportedTimeRange
object that specifies the time range between
/// when the anomaly is opened and the time when it is closed.
///
///
public AnomalyReportedTimeRange AnomalyReportedTimeRange
{
get { return this._anomalyReportedTimeRange; }
set { this._anomalyReportedTimeRange = value; }
}
// Check to see if AnomalyReportedTimeRange property is set
internal bool IsSetAnomalyReportedTimeRange()
{
return this._anomalyReportedTimeRange != null;
}
///
/// Gets and sets the property AnomalyResources.
///
/// Information about a resource in which DevOps Guru detected anomalous behavior.
///
///
public List AnomalyResources
{
get { return this._anomalyResources; }
set { this._anomalyResources = value; }
}
// Check to see if AnomalyResources property is set
internal bool IsSetAnomalyResources()
{
return this._anomalyResources != null && this._anomalyResources.Count > 0;
}
///
/// Gets and sets the property AnomalyTimeRange.
///
public AnomalyTimeRange AnomalyTimeRange
{
get { return this._anomalyTimeRange; }
set { this._anomalyTimeRange = value; }
}
// Check to see if AnomalyTimeRange property is set
internal bool IsSetAnomalyTimeRange()
{
return this._anomalyTimeRange != null;
}
///
/// Gets and sets the property AssociatedInsightId.
///
/// The ID of the insight that contains this anomaly. An insight is composed of related
/// anomalies.
///
///
[AWSProperty(Min=1, Max=100)]
public string AssociatedInsightId
{
get { return this._associatedInsightId; }
set { this._associatedInsightId = value; }
}
// Check to see if AssociatedInsightId property is set
internal bool IsSetAssociatedInsightId()
{
return this._associatedInsightId != null;
}
///
/// Gets and sets the property Description.
///
/// A description of the proactive anomaly.
///
///
public string Description
{
get { return this._description; }
set { this._description = value; }
}
// Check to see if Description property is set
internal bool IsSetDescription()
{
return this._description != null;
}
///
/// Gets and sets the property Id.
///
/// The ID of a proactive anomaly.
///
///
[AWSProperty(Min=1, Max=100)]
public string Id
{
get { return this._id; }
set { this._id = value; }
}
// Check to see if Id property is set
internal bool IsSetId()
{
return this._id != null;
}
///
/// Gets and sets the property Limit.
///
/// A threshold that was exceeded by behavior in analyzed resources. Exceeding this threshold
/// is related to the anomalous behavior that generated this anomaly.
///
///
public double Limit
{
get { return this._limit.GetValueOrDefault(); }
set { this._limit = value; }
}
// Check to see if Limit property is set
internal bool IsSetLimit()
{
return this._limit.HasValue;
}
///
/// Gets and sets the property PredictionTimeRange.
///
public PredictionTimeRange PredictionTimeRange
{
get { return this._predictionTimeRange; }
set { this._predictionTimeRange = value; }
}
// Check to see if PredictionTimeRange property is set
internal bool IsSetPredictionTimeRange()
{
return this._predictionTimeRange != null;
}
///
/// Gets and sets the property ResourceCollection.
///
public ResourceCollection ResourceCollection
{
get { return this._resourceCollection; }
set { this._resourceCollection = value; }
}
// Check to see if ResourceCollection property is set
internal bool IsSetResourceCollection()
{
return this._resourceCollection != null;
}
///
/// Gets and sets the property Severity.
///
/// The severity of the anomaly. The severity of anomalies that generate an insight determine
/// that insight's severity. For more information, see Understanding
/// insight severities in the Amazon DevOps Guru User Guide.
///
///
public AnomalySeverity Severity
{
get { return this._severity; }
set { this._severity = value; }
}
// Check to see if Severity property is set
internal bool IsSetSeverity()
{
return this._severity != null;
}
///
/// Gets and sets the property SourceDetails.
///
/// Details about the source of the analyzed operational data that triggered the anomaly.
/// The one supported source is Amazon CloudWatch metrics.
///
///
public AnomalySourceDetails SourceDetails
{
get { return this._sourceDetails; }
set { this._sourceDetails = value; }
}
// Check to see if SourceDetails property is set
internal bool IsSetSourceDetails()
{
return this._sourceDetails != null;
}
///
/// Gets and sets the property SourceMetadata.
///
/// The metadata for the anomaly.
///
///
public AnomalySourceMetadata SourceMetadata
{
get { return this._sourceMetadata; }
set { this._sourceMetadata = value; }
}
// Check to see if SourceMetadata property is set
internal bool IsSetSourceMetadata()
{
return this._sourceMetadata != null;
}
///
/// Gets and sets the property Status.
///
/// The status of a proactive anomaly.
///
///
public AnomalyStatus Status
{
get { return this._status; }
set { this._status = value; }
}
// Check to see if Status property is set
internal bool IsSetStatus()
{
return this._status != null;
}
///
/// Gets and sets the property UpdateTime.
///
/// The time of the anomaly's most recent update.
///
///
public DateTime UpdateTime
{
get { return this._updateTime.GetValueOrDefault(); }
set { this._updateTime = value; }
}
// Check to see if UpdateTime property is set
internal bool IsSetUpdateTime()
{
return this._updateTime.HasValue;
}
}
}