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

Measurements about the performance for your application on the internet * calculated by Amazon CloudWatch Internet Monitor. Amazon Web Services has * substantial historical data about internet performance and availability between * Amazon Web Services services and different network providers and geographies. By * applying statistical analysis to the data, Internet Monitor can detect when the * performance and availability for your application has dropped, compared to an * estimated baseline that's already calculated. To make it easier to see those * drops, we report that information to you in the form of health scores: a * performance score and an availability score.

Performance in Internet * Monitor represents the estimated percentage of traffic that is not seeing a * performance drop. For example, a performance score of 99% for an end user and * service location pair is equivalent to 1% of the traffic experiencing a * performance drop for that pair.

For more information, see How * Internet Monitor calculates performance and availability scores in the * Amazon CloudWatch Internet Monitor section of the CloudWatch User * Guide.

See Also:

AWS * API Reference

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

Experience scores, or health scores, are calculated for different geographic * and network provider combinations (that is, different granularities) and also * totaled into global scores. If you view performance or availability scores * without filtering for any specific geography or service provider, Amazon * CloudWatch Internet Monitor provides global health scores.

The Amazon * CloudWatch Internet Monitor chapter in the CloudWatch User Guide includes * detailed information about how Internet Monitor calculates health scores, * including performance and availability scores, and when it creates and resolves * health events. For more information, see How * Amazon Web Services calculates performance and availability scores in the * Amazon CloudWatch Internet Monitor section of the CloudWatch User * Guide.

*/ inline double GetExperienceScore() const{ return m_experienceScore; } /** *

Experience scores, or health scores, are calculated for different geographic * and network provider combinations (that is, different granularities) and also * totaled into global scores. If you view performance or availability scores * without filtering for any specific geography or service provider, Amazon * CloudWatch Internet Monitor provides global health scores.

The Amazon * CloudWatch Internet Monitor chapter in the CloudWatch User Guide includes * detailed information about how Internet Monitor calculates health scores, * including performance and availability scores, and when it creates and resolves * health events. For more information, see How * Amazon Web Services calculates performance and availability scores in the * Amazon CloudWatch Internet Monitor section of the CloudWatch User * Guide.

*/ inline bool ExperienceScoreHasBeenSet() const { return m_experienceScoreHasBeenSet; } /** *

Experience scores, or health scores, are calculated for different geographic * and network provider combinations (that is, different granularities) and also * totaled into global scores. If you view performance or availability scores * without filtering for any specific geography or service provider, Amazon * CloudWatch Internet Monitor provides global health scores.

The Amazon * CloudWatch Internet Monitor chapter in the CloudWatch User Guide includes * detailed information about how Internet Monitor calculates health scores, * including performance and availability scores, and when it creates and resolves * health events. For more information, see How * Amazon Web Services calculates performance and availability scores in the * Amazon CloudWatch Internet Monitor section of the CloudWatch User * Guide.

*/ inline void SetExperienceScore(double value) { m_experienceScoreHasBeenSet = true; m_experienceScore = value; } /** *

Experience scores, or health scores, are calculated for different geographic * and network provider combinations (that is, different granularities) and also * totaled into global scores. If you view performance or availability scores * without filtering for any specific geography or service provider, Amazon * CloudWatch Internet Monitor provides global health scores.

The Amazon * CloudWatch Internet Monitor chapter in the CloudWatch User Guide includes * detailed information about how Internet Monitor calculates health scores, * including performance and availability scores, and when it creates and resolves * health events. For more information, see How * Amazon Web Services calculates performance and availability scores in the * Amazon CloudWatch Internet Monitor section of the CloudWatch User * Guide.

*/ inline PerformanceMeasurement& WithExperienceScore(double value) { SetExperienceScore(value); return *this;} /** *

How much performance impact was caused by a health event for total traffic * globally. For performance, this is the percentage of how much latency increased * during the event compared to typical performance for your application traffic * globally.

For more information, see When * Amazon Web Services creates and resolves health events in the Amazon * CloudWatch Internet Monitor section of the CloudWatch User Guide.

*/ inline double GetPercentOfTotalTrafficImpacted() const{ return m_percentOfTotalTrafficImpacted; } /** *

How much performance impact was caused by a health event for total traffic * globally. For performance, this is the percentage of how much latency increased * during the event compared to typical performance for your application traffic * globally.

For more information, see When * Amazon Web Services creates and resolves health events in the Amazon * CloudWatch Internet Monitor section of the CloudWatch User Guide.

*/ inline bool PercentOfTotalTrafficImpactedHasBeenSet() const { return m_percentOfTotalTrafficImpactedHasBeenSet; } /** *

How much performance impact was caused by a health event for total traffic * globally. For performance, this is the percentage of how much latency increased * during the event compared to typical performance for your application traffic * globally.

For more information, see When * Amazon Web Services creates and resolves health events in the Amazon * CloudWatch Internet Monitor section of the CloudWatch User Guide.

*/ inline void SetPercentOfTotalTrafficImpacted(double value) { m_percentOfTotalTrafficImpactedHasBeenSet = true; m_percentOfTotalTrafficImpacted = value; } /** *

How much performance impact was caused by a health event for total traffic * globally. For performance, this is the percentage of how much latency increased * during the event compared to typical performance for your application traffic * globally.

For more information, see When * Amazon Web Services creates and resolves health events in the Amazon * CloudWatch Internet Monitor section of the CloudWatch User Guide.

*/ inline PerformanceMeasurement& WithPercentOfTotalTrafficImpacted(double value) { SetPercentOfTotalTrafficImpacted(value); return *this;} /** *

How much performance impact was caused by a health event at a client * location. For performance, this is the percentage of how much latency increased * during the event compared to typical performance for traffic, from this client * location to an Amazon Web Services location, using a specific client network. *

For more information, see When * Amazon Web Services creates and resolves health events in the Amazon * CloudWatch Internet Monitor section of the CloudWatch User Guide.

*/ inline double GetPercentOfClientLocationImpacted() const{ return m_percentOfClientLocationImpacted; } /** *

How much performance impact was caused by a health event at a client * location. For performance, this is the percentage of how much latency increased * during the event compared to typical performance for traffic, from this client * location to an Amazon Web Services location, using a specific client network. *

For more information, see When * Amazon Web Services creates and resolves health events in the Amazon * CloudWatch Internet Monitor section of the CloudWatch User Guide.

*/ inline bool PercentOfClientLocationImpactedHasBeenSet() const { return m_percentOfClientLocationImpactedHasBeenSet; } /** *

How much performance impact was caused by a health event at a client * location. For performance, this is the percentage of how much latency increased * during the event compared to typical performance for traffic, from this client * location to an Amazon Web Services location, using a specific client network. *

For more information, see When * Amazon Web Services creates and resolves health events in the Amazon * CloudWatch Internet Monitor section of the CloudWatch User Guide.

*/ inline void SetPercentOfClientLocationImpacted(double value) { m_percentOfClientLocationImpactedHasBeenSet = true; m_percentOfClientLocationImpacted = value; } /** *

How much performance impact was caused by a health event at a client * location. For performance, this is the percentage of how much latency increased * during the event compared to typical performance for traffic, from this client * location to an Amazon Web Services location, using a specific client network. *

For more information, see When * Amazon Web Services creates and resolves health events in the Amazon * CloudWatch Internet Monitor section of the CloudWatch User Guide.

*/ inline PerformanceMeasurement& WithPercentOfClientLocationImpacted(double value) { SetPercentOfClientLocationImpacted(value); return *this;} /** *

This is the percentage of how much round-trip time increased during the event * compared to typical round-trip time for your application for traffic.

*

For more information, see When * Amazon Web Services creates and resolves health events in the Amazon * CloudWatch Internet Monitor section of the CloudWatch User Guide.

*/ inline const RoundTripTime& GetRoundTripTime() const{ return m_roundTripTime; } /** *

This is the percentage of how much round-trip time increased during the event * compared to typical round-trip time for your application for traffic.

*

For more information, see When * Amazon Web Services creates and resolves health events in the Amazon * CloudWatch Internet Monitor section of the CloudWatch User Guide.

*/ inline bool RoundTripTimeHasBeenSet() const { return m_roundTripTimeHasBeenSet; } /** *

This is the percentage of how much round-trip time increased during the event * compared to typical round-trip time for your application for traffic.

*

For more information, see When * Amazon Web Services creates and resolves health events in the Amazon * CloudWatch Internet Monitor section of the CloudWatch User Guide.

*/ inline void SetRoundTripTime(const RoundTripTime& value) { m_roundTripTimeHasBeenSet = true; m_roundTripTime = value; } /** *

This is the percentage of how much round-trip time increased during the event * compared to typical round-trip time for your application for traffic.

*

For more information, see When * Amazon Web Services creates and resolves health events in the Amazon * CloudWatch Internet Monitor section of the CloudWatch User Guide.

*/ inline void SetRoundTripTime(RoundTripTime&& value) { m_roundTripTimeHasBeenSet = true; m_roundTripTime = std::move(value); } /** *

This is the percentage of how much round-trip time increased during the event * compared to typical round-trip time for your application for traffic.

*

For more information, see When * Amazon Web Services creates and resolves health events in the Amazon * CloudWatch Internet Monitor section of the CloudWatch User Guide.

*/ inline PerformanceMeasurement& WithRoundTripTime(const RoundTripTime& value) { SetRoundTripTime(value); return *this;} /** *

This is the percentage of how much round-trip time increased during the event * compared to typical round-trip time for your application for traffic.

*

For more information, see When * Amazon Web Services creates and resolves health events in the Amazon * CloudWatch Internet Monitor section of the CloudWatch User Guide.

*/ inline PerformanceMeasurement& WithRoundTripTime(RoundTripTime&& value) { SetRoundTripTime(std::move(value)); return *this;} private: double m_experienceScore; bool m_experienceScoreHasBeenSet = false; double m_percentOfTotalTrafficImpacted; bool m_percentOfTotalTrafficImpactedHasBeenSet = false; double m_percentOfClientLocationImpacted; bool m_percentOfClientLocationImpactedHasBeenSet = false; RoundTripTime m_roundTripTime; bool m_roundTripTimeHasBeenSet = false; }; } // namespace Model } // namespace InternetMonitor } // namespace Aws