/** * 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 namespace Aws { namespace Utils { namespace Json { class JsonValue; class JsonView; } // namespace Json } // namespace Utils namespace XRay { namespace Model { /** *

X-Ray reevaluates insights periodically until they are resolved, and records * each intermediate state in an event. You can review incident events in the * Impact Timeline on the Inspect page in the X-Ray console.

See * Also:

AWS * API Reference

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

A brief description of the event.

*/ inline const Aws::String& GetSummary() const{ return m_summary; } /** *

A brief description of the event.

*/ inline bool SummaryHasBeenSet() const { return m_summaryHasBeenSet; } /** *

A brief description of the event.

*/ inline void SetSummary(const Aws::String& value) { m_summaryHasBeenSet = true; m_summary = value; } /** *

A brief description of the event.

*/ inline void SetSummary(Aws::String&& value) { m_summaryHasBeenSet = true; m_summary = std::move(value); } /** *

A brief description of the event.

*/ inline void SetSummary(const char* value) { m_summaryHasBeenSet = true; m_summary.assign(value); } /** *

A brief description of the event.

*/ inline InsightEvent& WithSummary(const Aws::String& value) { SetSummary(value); return *this;} /** *

A brief description of the event.

*/ inline InsightEvent& WithSummary(Aws::String&& value) { SetSummary(std::move(value)); return *this;} /** *

A brief description of the event.

*/ inline InsightEvent& WithSummary(const char* value) { SetSummary(value); return *this;} /** *

The time, in Unix seconds, at which the event was recorded.

*/ inline const Aws::Utils::DateTime& GetEventTime() const{ return m_eventTime; } /** *

The time, in Unix seconds, at which the event was recorded.

*/ inline bool EventTimeHasBeenSet() const { return m_eventTimeHasBeenSet; } /** *

The time, in Unix seconds, at which the event was recorded.

*/ inline void SetEventTime(const Aws::Utils::DateTime& value) { m_eventTimeHasBeenSet = true; m_eventTime = value; } /** *

The time, in Unix seconds, at which the event was recorded.

*/ inline void SetEventTime(Aws::Utils::DateTime&& value) { m_eventTimeHasBeenSet = true; m_eventTime = std::move(value); } /** *

The time, in Unix seconds, at which the event was recorded.

*/ inline InsightEvent& WithEventTime(const Aws::Utils::DateTime& value) { SetEventTime(value); return *this;} /** *

The time, in Unix seconds, at which the event was recorded.

*/ inline InsightEvent& WithEventTime(Aws::Utils::DateTime&& value) { SetEventTime(std::move(value)); return *this;} /** *

The impact statistics of the client side service. This includes the number of * requests to the client service and whether the requests were faults or okay.

*/ inline const RequestImpactStatistics& GetClientRequestImpactStatistics() const{ return m_clientRequestImpactStatistics; } /** *

The impact statistics of the client side service. This includes the number of * requests to the client service and whether the requests were faults or okay.

*/ inline bool ClientRequestImpactStatisticsHasBeenSet() const { return m_clientRequestImpactStatisticsHasBeenSet; } /** *

The impact statistics of the client side service. This includes the number of * requests to the client service and whether the requests were faults or okay.

*/ inline void SetClientRequestImpactStatistics(const RequestImpactStatistics& value) { m_clientRequestImpactStatisticsHasBeenSet = true; m_clientRequestImpactStatistics = value; } /** *

The impact statistics of the client side service. This includes the number of * requests to the client service and whether the requests were faults or okay.

*/ inline void SetClientRequestImpactStatistics(RequestImpactStatistics&& value) { m_clientRequestImpactStatisticsHasBeenSet = true; m_clientRequestImpactStatistics = std::move(value); } /** *

The impact statistics of the client side service. This includes the number of * requests to the client service and whether the requests were faults or okay.

*/ inline InsightEvent& WithClientRequestImpactStatistics(const RequestImpactStatistics& value) { SetClientRequestImpactStatistics(value); return *this;} /** *

The impact statistics of the client side service. This includes the number of * requests to the client service and whether the requests were faults or okay.

*/ inline InsightEvent& WithClientRequestImpactStatistics(RequestImpactStatistics&& value) { SetClientRequestImpactStatistics(std::move(value)); return *this;} /** *

The impact statistics of the root cause service. This includes the number of * requests to the client service and whether the requests were faults or okay.

*/ inline const RequestImpactStatistics& GetRootCauseServiceRequestImpactStatistics() const{ return m_rootCauseServiceRequestImpactStatistics; } /** *

The impact statistics of the root cause service. This includes the number of * requests to the client service and whether the requests were faults or okay.

*/ inline bool RootCauseServiceRequestImpactStatisticsHasBeenSet() const { return m_rootCauseServiceRequestImpactStatisticsHasBeenSet; } /** *

The impact statistics of the root cause service. This includes the number of * requests to the client service and whether the requests were faults or okay.

*/ inline void SetRootCauseServiceRequestImpactStatistics(const RequestImpactStatistics& value) { m_rootCauseServiceRequestImpactStatisticsHasBeenSet = true; m_rootCauseServiceRequestImpactStatistics = value; } /** *

The impact statistics of the root cause service. This includes the number of * requests to the client service and whether the requests were faults or okay.

*/ inline void SetRootCauseServiceRequestImpactStatistics(RequestImpactStatistics&& value) { m_rootCauseServiceRequestImpactStatisticsHasBeenSet = true; m_rootCauseServiceRequestImpactStatistics = std::move(value); } /** *

The impact statistics of the root cause service. This includes the number of * requests to the client service and whether the requests were faults or okay.

*/ inline InsightEvent& WithRootCauseServiceRequestImpactStatistics(const RequestImpactStatistics& value) { SetRootCauseServiceRequestImpactStatistics(value); return *this;} /** *

The impact statistics of the root cause service. This includes the number of * requests to the client service and whether the requests were faults or okay.

*/ inline InsightEvent& WithRootCauseServiceRequestImpactStatistics(RequestImpactStatistics&& value) { SetRootCauseServiceRequestImpactStatistics(std::move(value)); return *this;} /** *

The service during the event that is most impacted by the incident.

*/ inline const Aws::Vector& GetTopAnomalousServices() const{ return m_topAnomalousServices; } /** *

The service during the event that is most impacted by the incident.

*/ inline bool TopAnomalousServicesHasBeenSet() const { return m_topAnomalousServicesHasBeenSet; } /** *

The service during the event that is most impacted by the incident.

*/ inline void SetTopAnomalousServices(const Aws::Vector& value) { m_topAnomalousServicesHasBeenSet = true; m_topAnomalousServices = value; } /** *

The service during the event that is most impacted by the incident.

*/ inline void SetTopAnomalousServices(Aws::Vector&& value) { m_topAnomalousServicesHasBeenSet = true; m_topAnomalousServices = std::move(value); } /** *

The service during the event that is most impacted by the incident.

*/ inline InsightEvent& WithTopAnomalousServices(const Aws::Vector& value) { SetTopAnomalousServices(value); return *this;} /** *

The service during the event that is most impacted by the incident.

*/ inline InsightEvent& WithTopAnomalousServices(Aws::Vector&& value) { SetTopAnomalousServices(std::move(value)); return *this;} /** *

The service during the event that is most impacted by the incident.

*/ inline InsightEvent& AddTopAnomalousServices(const AnomalousService& value) { m_topAnomalousServicesHasBeenSet = true; m_topAnomalousServices.push_back(value); return *this; } /** *

The service during the event that is most impacted by the incident.

*/ inline InsightEvent& AddTopAnomalousServices(AnomalousService&& value) { m_topAnomalousServicesHasBeenSet = true; m_topAnomalousServices.push_back(std::move(value)); return *this; } private: Aws::String m_summary; bool m_summaryHasBeenSet = false; Aws::Utils::DateTime m_eventTime; bool m_eventTimeHasBeenSet = false; RequestImpactStatistics m_clientRequestImpactStatistics; bool m_clientRequestImpactStatisticsHasBeenSet = false; RequestImpactStatistics m_rootCauseServiceRequestImpactStatistics; bool m_rootCauseServiceRequestImpactStatisticsHasBeenSet = false; Aws::Vector m_topAnomalousServices; bool m_topAnomalousServicesHasBeenSet = false; }; } // namespace Model } // namespace XRay } // namespace Aws