/** * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * SPDX-License-Identifier: Apache-2.0. */ #pragma once #include #include #include #include #include #include #include #include #include #include #include #include #include #include namespace Aws { namespace Utils { namespace Json { class JsonValue; class JsonView; } // namespace Json } // namespace Utils namespace DevOpsGuru { namespace Model { /** *

Information about an anomaly. This object is returned by * ListAnomalies.

See Also:

AWS * API Reference

*/ class ProactiveAnomaly { public: AWS_DEVOPSGURU_API ProactiveAnomaly(); AWS_DEVOPSGURU_API ProactiveAnomaly(Aws::Utils::Json::JsonView jsonValue); AWS_DEVOPSGURU_API ProactiveAnomaly& operator=(Aws::Utils::Json::JsonView jsonValue); AWS_DEVOPSGURU_API Aws::Utils::Json::JsonValue Jsonize() const; /** *

The ID of a proactive anomaly.

*/ inline const Aws::String& GetId() const{ return m_id; } /** *

The ID of a proactive anomaly.

*/ inline bool IdHasBeenSet() const { return m_idHasBeenSet; } /** *

The ID of a proactive anomaly.

*/ inline void SetId(const Aws::String& value) { m_idHasBeenSet = true; m_id = value; } /** *

The ID of a proactive anomaly.

*/ inline void SetId(Aws::String&& value) { m_idHasBeenSet = true; m_id = std::move(value); } /** *

The ID of a proactive anomaly.

*/ inline void SetId(const char* value) { m_idHasBeenSet = true; m_id.assign(value); } /** *

The ID of a proactive anomaly.

*/ inline ProactiveAnomaly& WithId(const Aws::String& value) { SetId(value); return *this;} /** *

The ID of a proactive anomaly.

*/ inline ProactiveAnomaly& WithId(Aws::String&& value) { SetId(std::move(value)); return *this;} /** *

The ID of a proactive anomaly.

*/ inline ProactiveAnomaly& WithId(const char* value) { SetId(value); return *this;} /** *

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.

*/ inline const AnomalySeverity& GetSeverity() const{ return m_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.

*/ inline bool SeverityHasBeenSet() const { return m_severityHasBeenSet; } /** *

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.

*/ inline void SetSeverity(const AnomalySeverity& value) { m_severityHasBeenSet = true; m_severity = value; } /** *

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.

*/ inline void SetSeverity(AnomalySeverity&& value) { m_severityHasBeenSet = true; m_severity = std::move(value); } /** *

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.

*/ inline ProactiveAnomaly& WithSeverity(const AnomalySeverity& value) { SetSeverity(value); return *this;} /** *

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.

*/ inline ProactiveAnomaly& WithSeverity(AnomalySeverity&& value) { SetSeverity(std::move(value)); return *this;} /** *

The status of a proactive anomaly.

*/ inline const AnomalyStatus& GetStatus() const{ return m_status; } /** *

The status of a proactive anomaly.

*/ inline bool StatusHasBeenSet() const { return m_statusHasBeenSet; } /** *

The status of a proactive anomaly.

*/ inline void SetStatus(const AnomalyStatus& value) { m_statusHasBeenSet = true; m_status = value; } /** *

The status of a proactive anomaly.

*/ inline void SetStatus(AnomalyStatus&& value) { m_statusHasBeenSet = true; m_status = std::move(value); } /** *

The status of a proactive anomaly.

*/ inline ProactiveAnomaly& WithStatus(const AnomalyStatus& value) { SetStatus(value); return *this;} /** *

The status of a proactive anomaly.

*/ inline ProactiveAnomaly& WithStatus(AnomalyStatus&& value) { SetStatus(std::move(value)); return *this;} /** *

The time of the anomaly's most recent update.

*/ inline const Aws::Utils::DateTime& GetUpdateTime() const{ return m_updateTime; } /** *

The time of the anomaly's most recent update.

*/ inline bool UpdateTimeHasBeenSet() const { return m_updateTimeHasBeenSet; } /** *

The time of the anomaly's most recent update.

*/ inline void SetUpdateTime(const Aws::Utils::DateTime& value) { m_updateTimeHasBeenSet = true; m_updateTime = value; } /** *

The time of the anomaly's most recent update.

*/ inline void SetUpdateTime(Aws::Utils::DateTime&& value) { m_updateTimeHasBeenSet = true; m_updateTime = std::move(value); } /** *

The time of the anomaly's most recent update.

*/ inline ProactiveAnomaly& WithUpdateTime(const Aws::Utils::DateTime& value) { SetUpdateTime(value); return *this;} /** *

The time of the anomaly's most recent update.

*/ inline ProactiveAnomaly& WithUpdateTime(Aws::Utils::DateTime&& value) { SetUpdateTime(std::move(value)); return *this;} inline const AnomalyTimeRange& GetAnomalyTimeRange() const{ return m_anomalyTimeRange; } inline bool AnomalyTimeRangeHasBeenSet() const { return m_anomalyTimeRangeHasBeenSet; } inline void SetAnomalyTimeRange(const AnomalyTimeRange& value) { m_anomalyTimeRangeHasBeenSet = true; m_anomalyTimeRange = value; } inline void SetAnomalyTimeRange(AnomalyTimeRange&& value) { m_anomalyTimeRangeHasBeenSet = true; m_anomalyTimeRange = std::move(value); } inline ProactiveAnomaly& WithAnomalyTimeRange(const AnomalyTimeRange& value) { SetAnomalyTimeRange(value); return *this;} inline ProactiveAnomaly& WithAnomalyTimeRange(AnomalyTimeRange&& value) { SetAnomalyTimeRange(std::move(value)); return *this;} /** *

An AnomalyReportedTimeRange object that specifies the time * range between when the anomaly is opened and the time when it is closed.

*/ inline const AnomalyReportedTimeRange& GetAnomalyReportedTimeRange() const{ return m_anomalyReportedTimeRange; } /** *

An AnomalyReportedTimeRange object that specifies the time * range between when the anomaly is opened and the time when it is closed.

*/ inline bool AnomalyReportedTimeRangeHasBeenSet() const { return m_anomalyReportedTimeRangeHasBeenSet; } /** *

An AnomalyReportedTimeRange object that specifies the time * range between when the anomaly is opened and the time when it is closed.

*/ inline void SetAnomalyReportedTimeRange(const AnomalyReportedTimeRange& value) { m_anomalyReportedTimeRangeHasBeenSet = true; m_anomalyReportedTimeRange = value; } /** *

An AnomalyReportedTimeRange object that specifies the time * range between when the anomaly is opened and the time when it is closed.

*/ inline void SetAnomalyReportedTimeRange(AnomalyReportedTimeRange&& value) { m_anomalyReportedTimeRangeHasBeenSet = true; m_anomalyReportedTimeRange = std::move(value); } /** *

An AnomalyReportedTimeRange object that specifies the time * range between when the anomaly is opened and the time when it is closed.

*/ inline ProactiveAnomaly& WithAnomalyReportedTimeRange(const AnomalyReportedTimeRange& value) { SetAnomalyReportedTimeRange(value); return *this;} /** *

An AnomalyReportedTimeRange object that specifies the time * range between when the anomaly is opened and the time when it is closed.

*/ inline ProactiveAnomaly& WithAnomalyReportedTimeRange(AnomalyReportedTimeRange&& value) { SetAnomalyReportedTimeRange(std::move(value)); return *this;} inline const PredictionTimeRange& GetPredictionTimeRange() const{ return m_predictionTimeRange; } inline bool PredictionTimeRangeHasBeenSet() const { return m_predictionTimeRangeHasBeenSet; } inline void SetPredictionTimeRange(const PredictionTimeRange& value) { m_predictionTimeRangeHasBeenSet = true; m_predictionTimeRange = value; } inline void SetPredictionTimeRange(PredictionTimeRange&& value) { m_predictionTimeRangeHasBeenSet = true; m_predictionTimeRange = std::move(value); } inline ProactiveAnomaly& WithPredictionTimeRange(const PredictionTimeRange& value) { SetPredictionTimeRange(value); return *this;} inline ProactiveAnomaly& WithPredictionTimeRange(PredictionTimeRange&& value) { SetPredictionTimeRange(std::move(value)); return *this;} /** *

Details about the source of the analyzed operational data that triggered the * anomaly. The one supported source is Amazon CloudWatch metrics.

*/ inline const AnomalySourceDetails& GetSourceDetails() const{ return m_sourceDetails; } /** *

Details about the source of the analyzed operational data that triggered the * anomaly. The one supported source is Amazon CloudWatch metrics.

*/ inline bool SourceDetailsHasBeenSet() const { return m_sourceDetailsHasBeenSet; } /** *

Details about the source of the analyzed operational data that triggered the * anomaly. The one supported source is Amazon CloudWatch metrics.

*/ inline void SetSourceDetails(const AnomalySourceDetails& value) { m_sourceDetailsHasBeenSet = true; m_sourceDetails = value; } /** *

Details about the source of the analyzed operational data that triggered the * anomaly. The one supported source is Amazon CloudWatch metrics.

*/ inline void SetSourceDetails(AnomalySourceDetails&& value) { m_sourceDetailsHasBeenSet = true; m_sourceDetails = std::move(value); } /** *

Details about the source of the analyzed operational data that triggered the * anomaly. The one supported source is Amazon CloudWatch metrics.

*/ inline ProactiveAnomaly& WithSourceDetails(const AnomalySourceDetails& value) { SetSourceDetails(value); return *this;} /** *

Details about the source of the analyzed operational data that triggered the * anomaly. The one supported source is Amazon CloudWatch metrics.

*/ inline ProactiveAnomaly& WithSourceDetails(AnomalySourceDetails&& value) { SetSourceDetails(std::move(value)); return *this;} /** *

The ID of the insight that contains this anomaly. An insight is composed of * related anomalies.

*/ inline const Aws::String& GetAssociatedInsightId() const{ return m_associatedInsightId; } /** *

The ID of the insight that contains this anomaly. An insight is composed of * related anomalies.

*/ inline bool AssociatedInsightIdHasBeenSet() const { return m_associatedInsightIdHasBeenSet; } /** *

The ID of the insight that contains this anomaly. An insight is composed of * related anomalies.

*/ inline void SetAssociatedInsightId(const Aws::String& value) { m_associatedInsightIdHasBeenSet = true; m_associatedInsightId = value; } /** *

The ID of the insight that contains this anomaly. An insight is composed of * related anomalies.

*/ inline void SetAssociatedInsightId(Aws::String&& value) { m_associatedInsightIdHasBeenSet = true; m_associatedInsightId = std::move(value); } /** *

The ID of the insight that contains this anomaly. An insight is composed of * related anomalies.

*/ inline void SetAssociatedInsightId(const char* value) { m_associatedInsightIdHasBeenSet = true; m_associatedInsightId.assign(value); } /** *

The ID of the insight that contains this anomaly. An insight is composed of * related anomalies.

*/ inline ProactiveAnomaly& WithAssociatedInsightId(const Aws::String& value) { SetAssociatedInsightId(value); return *this;} /** *

The ID of the insight that contains this anomaly. An insight is composed of * related anomalies.

*/ inline ProactiveAnomaly& WithAssociatedInsightId(Aws::String&& value) { SetAssociatedInsightId(std::move(value)); return *this;} /** *

The ID of the insight that contains this anomaly. An insight is composed of * related anomalies.

*/ inline ProactiveAnomaly& WithAssociatedInsightId(const char* value) { SetAssociatedInsightId(value); return *this;} inline const ResourceCollection& GetResourceCollection() const{ return m_resourceCollection; } inline bool ResourceCollectionHasBeenSet() const { return m_resourceCollectionHasBeenSet; } inline void SetResourceCollection(const ResourceCollection& value) { m_resourceCollectionHasBeenSet = true; m_resourceCollection = value; } inline void SetResourceCollection(ResourceCollection&& value) { m_resourceCollectionHasBeenSet = true; m_resourceCollection = std::move(value); } inline ProactiveAnomaly& WithResourceCollection(const ResourceCollection& value) { SetResourceCollection(value); return *this;} inline ProactiveAnomaly& WithResourceCollection(ResourceCollection&& value) { SetResourceCollection(std::move(value)); return *this;} /** *

A threshold that was exceeded by behavior in analyzed resources. Exceeding * this threshold is related to the anomalous behavior that generated this anomaly. *

*/ inline double GetLimit() const{ return m_limit; } /** *

A threshold that was exceeded by behavior in analyzed resources. Exceeding * this threshold is related to the anomalous behavior that generated this anomaly. *

*/ inline bool LimitHasBeenSet() const { return m_limitHasBeenSet; } /** *

A threshold that was exceeded by behavior in analyzed resources. Exceeding * this threshold is related to the anomalous behavior that generated this anomaly. *

*/ inline void SetLimit(double value) { m_limitHasBeenSet = true; m_limit = value; } /** *

A threshold that was exceeded by behavior in analyzed resources. Exceeding * this threshold is related to the anomalous behavior that generated this anomaly. *

*/ inline ProactiveAnomaly& WithLimit(double value) { SetLimit(value); return *this;} /** *

The metadata for the anomaly.

*/ inline const AnomalySourceMetadata& GetSourceMetadata() const{ return m_sourceMetadata; } /** *

The metadata for the anomaly.

*/ inline bool SourceMetadataHasBeenSet() const { return m_sourceMetadataHasBeenSet; } /** *

The metadata for the anomaly.

*/ inline void SetSourceMetadata(const AnomalySourceMetadata& value) { m_sourceMetadataHasBeenSet = true; m_sourceMetadata = value; } /** *

The metadata for the anomaly.

*/ inline void SetSourceMetadata(AnomalySourceMetadata&& value) { m_sourceMetadataHasBeenSet = true; m_sourceMetadata = std::move(value); } /** *

The metadata for the anomaly.

*/ inline ProactiveAnomaly& WithSourceMetadata(const AnomalySourceMetadata& value) { SetSourceMetadata(value); return *this;} /** *

The metadata for the anomaly.

*/ inline ProactiveAnomaly& WithSourceMetadata(AnomalySourceMetadata&& value) { SetSourceMetadata(std::move(value)); return *this;} /** *

Information about a resource in which DevOps Guru detected anomalous * behavior.

*/ inline const Aws::Vector& GetAnomalyResources() const{ return m_anomalyResources; } /** *

Information about a resource in which DevOps Guru detected anomalous * behavior.

*/ inline bool AnomalyResourcesHasBeenSet() const { return m_anomalyResourcesHasBeenSet; } /** *

Information about a resource in which DevOps Guru detected anomalous * behavior.

*/ inline void SetAnomalyResources(const Aws::Vector& value) { m_anomalyResourcesHasBeenSet = true; m_anomalyResources = value; } /** *

Information about a resource in which DevOps Guru detected anomalous * behavior.

*/ inline void SetAnomalyResources(Aws::Vector&& value) { m_anomalyResourcesHasBeenSet = true; m_anomalyResources = std::move(value); } /** *

Information about a resource in which DevOps Guru detected anomalous * behavior.

*/ inline ProactiveAnomaly& WithAnomalyResources(const Aws::Vector& value) { SetAnomalyResources(value); return *this;} /** *

Information about a resource in which DevOps Guru detected anomalous * behavior.

*/ inline ProactiveAnomaly& WithAnomalyResources(Aws::Vector&& value) { SetAnomalyResources(std::move(value)); return *this;} /** *

Information about a resource in which DevOps Guru detected anomalous * behavior.

*/ inline ProactiveAnomaly& AddAnomalyResources(const AnomalyResource& value) { m_anomalyResourcesHasBeenSet = true; m_anomalyResources.push_back(value); return *this; } /** *

Information about a resource in which DevOps Guru detected anomalous * behavior.

*/ inline ProactiveAnomaly& AddAnomalyResources(AnomalyResource&& value) { m_anomalyResourcesHasBeenSet = true; m_anomalyResources.push_back(std::move(value)); return *this; } /** *

A description of the proactive anomaly.

*/ inline const Aws::String& GetDescription() const{ return m_description; } /** *

A description of the proactive anomaly.

*/ inline bool DescriptionHasBeenSet() const { return m_descriptionHasBeenSet; } /** *

A description of the proactive anomaly.

*/ inline void SetDescription(const Aws::String& value) { m_descriptionHasBeenSet = true; m_description = value; } /** *

A description of the proactive anomaly.

*/ inline void SetDescription(Aws::String&& value) { m_descriptionHasBeenSet = true; m_description = std::move(value); } /** *

A description of the proactive anomaly.

*/ inline void SetDescription(const char* value) { m_descriptionHasBeenSet = true; m_description.assign(value); } /** *

A description of the proactive anomaly.

*/ inline ProactiveAnomaly& WithDescription(const Aws::String& value) { SetDescription(value); return *this;} /** *

A description of the proactive anomaly.

*/ inline ProactiveAnomaly& WithDescription(Aws::String&& value) { SetDescription(std::move(value)); return *this;} /** *

A description of the proactive anomaly.

*/ inline ProactiveAnomaly& WithDescription(const char* value) { SetDescription(value); return *this;} private: Aws::String m_id; bool m_idHasBeenSet = false; AnomalySeverity m_severity; bool m_severityHasBeenSet = false; AnomalyStatus m_status; bool m_statusHasBeenSet = false; Aws::Utils::DateTime m_updateTime; bool m_updateTimeHasBeenSet = false; AnomalyTimeRange m_anomalyTimeRange; bool m_anomalyTimeRangeHasBeenSet = false; AnomalyReportedTimeRange m_anomalyReportedTimeRange; bool m_anomalyReportedTimeRangeHasBeenSet = false; PredictionTimeRange m_predictionTimeRange; bool m_predictionTimeRangeHasBeenSet = false; AnomalySourceDetails m_sourceDetails; bool m_sourceDetailsHasBeenSet = false; Aws::String m_associatedInsightId; bool m_associatedInsightIdHasBeenSet = false; ResourceCollection m_resourceCollection; bool m_resourceCollectionHasBeenSet = false; double m_limit; bool m_limitHasBeenSet = false; AnomalySourceMetadata m_sourceMetadata; bool m_sourceMetadataHasBeenSet = false; Aws::Vector m_anomalyResources; bool m_anomalyResourcesHasBeenSet = false; Aws::String m_description; bool m_descriptionHasBeenSet = false; }; } // namespace Model } // namespace DevOpsGuru } // namespace Aws