/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include Internet health includes measurements calculated by Amazon CloudWatch
* Internet Monitor about the performance and availability for your application on
* the internet. 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.See Also:
AWS
* API Reference
Availability in Internet Monitor represents the estimated percentage of * traffic that is not seeing an availability drop. For example, an availability * score of 99% for an end user and service location pair is equivalent to 1% of * the traffic experiencing an availability 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.
*/ inline const AvailabilityMeasurement& GetAvailability() const{ return m_availability; } /** *Availability in Internet Monitor represents the estimated percentage of * traffic that is not seeing an availability drop. For example, an availability * score of 99% for an end user and service location pair is equivalent to 1% of * the traffic experiencing an availability 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.
*/ inline bool AvailabilityHasBeenSet() const { return m_availabilityHasBeenSet; } /** *Availability in Internet Monitor represents the estimated percentage of * traffic that is not seeing an availability drop. For example, an availability * score of 99% for an end user and service location pair is equivalent to 1% of * the traffic experiencing an availability 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.
*/ inline void SetAvailability(const AvailabilityMeasurement& value) { m_availabilityHasBeenSet = true; m_availability = value; } /** *Availability in Internet Monitor represents the estimated percentage of * traffic that is not seeing an availability drop. For example, an availability * score of 99% for an end user and service location pair is equivalent to 1% of * the traffic experiencing an availability 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.
*/ inline void SetAvailability(AvailabilityMeasurement&& value) { m_availabilityHasBeenSet = true; m_availability = std::move(value); } /** *Availability in Internet Monitor represents the estimated percentage of * traffic that is not seeing an availability drop. For example, an availability * score of 99% for an end user and service location pair is equivalent to 1% of * the traffic experiencing an availability 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.
*/ inline InternetHealth& WithAvailability(const AvailabilityMeasurement& value) { SetAvailability(value); return *this;} /** *Availability in Internet Monitor represents the estimated percentage of * traffic that is not seeing an availability drop. For example, an availability * score of 99% for an end user and service location pair is equivalent to 1% of * the traffic experiencing an availability 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.
*/ inline InternetHealth& WithAvailability(AvailabilityMeasurement&& value) { SetAvailability(std::move(value)); return *this;} /** *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.
*/ inline const PerformanceMeasurement& GetPerformance() const{ return m_performance; } /** *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.
*/ inline bool PerformanceHasBeenSet() const { return m_performanceHasBeenSet; } /** *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.
*/ inline void SetPerformance(const PerformanceMeasurement& value) { m_performanceHasBeenSet = true; m_performance = value; } /** *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.
*/ inline void SetPerformance(PerformanceMeasurement&& value) { m_performanceHasBeenSet = true; m_performance = std::move(value); } /** *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.
*/ inline InternetHealth& WithPerformance(const PerformanceMeasurement& value) { SetPerformance(value); return *this;} /** *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.
*/ inline InternetHealth& WithPerformance(PerformanceMeasurement&& value) { SetPerformance(std::move(value)); return *this;} private: AvailabilityMeasurement m_availability; bool m_availabilityHasBeenSet = false; PerformanceMeasurement m_performance; bool m_performanceHasBeenSet = false; }; } // namespace Model } // namespace InternetMonitor } // namespace Aws