/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include 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
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