Amazon CloudWatch Internet Monitor

2023/08/01 - Amazon CloudWatch Internet Monitor - 5 updated api methods

Changes  This release adds a new feature for Amazon CloudWatch Internet Monitor that enables customers to set custom thresholds, for performance and availability drops, for impact limited to a single city-network to trigger creation of a health event.

CreateMonitor (updated) Link ¶
Changes (request)
{'HealthEventsConfig': {'AvailabilityLocalHealthEventsConfig': {'HealthScoreThreshold': 'double',
                                                                'MinTrafficImpact': 'double',
                                                                'Status': 'ENABLED '
                                                                          '| '
                                                                          'DISABLED'},
                        'PerformanceLocalHealthEventsConfig': {'HealthScoreThreshold': 'double',
                                                               'MinTrafficImpact': 'double',
                                                               'Status': 'ENABLED '
                                                                         '| '
                                                                         'DISABLED'}}}

Creates a monitor in Amazon CloudWatch Internet Monitor. A monitor is built based on information from the application resources that you add: VPCs, Network Load Balancers (NLBs), Amazon CloudFront distributions, and Amazon WorkSpaces directories. Internet Monitor then publishes internet measurements from Amazon Web Services that are specific to the city-networks . That is, the locations and ASNs (typically internet service providers or ISPs), where clients access your application. For more information, see Using Amazon CloudWatch Internet Monitor in the Amazon CloudWatch User Guide .

When you create a monitor, you choose the percentage of traffic that you want to monitor. You can also set a maximum limit for the number of city-networks where client traffic is monitored, that caps the total traffic that Internet Monitor monitors. A city-network maximum is the limit of city-networks, but you only pay for the number of city-networks that are actually monitored. You can update your monitor at any time to change the percentage of traffic to monitor or the city-networks maximum. For more information, see Choosing a city-network maximum value in the Amazon CloudWatch User Guide .

See also: AWS API Documentation

Request Syntax

client.create_monitor(
    MonitorName='string',
    Resources=[
        'string',
    ],
    ClientToken='string',
    Tags={
        'string': 'string'
    },
    MaxCityNetworksToMonitor=123,
    InternetMeasurementsLogDelivery={
        'S3Config': {
            'BucketName': 'string',
            'BucketPrefix': 'string',
            'LogDeliveryStatus': 'ENABLED'|'DISABLED'
        }
    },
    TrafficPercentageToMonitor=123,
    HealthEventsConfig={
        'AvailabilityScoreThreshold': 123.0,
        'PerformanceScoreThreshold': 123.0,
        'AvailabilityLocalHealthEventsConfig': {
            'Status': 'ENABLED'|'DISABLED',
            'HealthScoreThreshold': 123.0,
            'MinTrafficImpact': 123.0
        },
        'PerformanceLocalHealthEventsConfig': {
            'Status': 'ENABLED'|'DISABLED',
            'HealthScoreThreshold': 123.0,
            'MinTrafficImpact': 123.0
        }
    }
)
type MonitorName

string

param MonitorName

[REQUIRED]

The name of the monitor.

type Resources

list

param Resources

The resources to include in a monitor, which you provide as a set of Amazon Resource Names (ARNs). Resources can be VPCs, NLBs, Amazon CloudFront distributions, or Amazon WorkSpaces directories.

You can add a combination of VPCs and CloudFront distributions, or you can add WorkSpaces directories, or you can add NLBs. You can't add NLBs or WorkSpaces directories together with any other resources.

Note

If you add only Amazon VPC resources, at least one VPC must have an Internet Gateway attached to it, to make sure that it has internet connectivity.

  • (string) --

type ClientToken

string

param ClientToken

A unique, case-sensitive string of up to 64 ASCII characters that you specify to make an idempotent API request. Don't reuse the same client token for other API requests.

This field is autopopulated if not provided.

type Tags

dict

param Tags

The tags for a monitor. You can add a maximum of 50 tags in Internet Monitor.

  • (string) --

    • (string) --

type MaxCityNetworksToMonitor

integer

param MaxCityNetworksToMonitor

The maximum number of city-networks to monitor for your resources. A city-network is the location (city) where clients access your application resources from and the ASN or network provider, such as an internet service provider (ISP), that clients access the resources through. Setting this limit can help control billing costs.

To learn more, see Choosing a city-network maximum value in the Amazon CloudWatch Internet Monitor section of the CloudWatch User Guide .

type InternetMeasurementsLogDelivery

dict

param InternetMeasurementsLogDelivery

Publish internet measurements for Internet Monitor to an Amazon S3 bucket in addition to CloudWatch Logs.

  • S3Config (dict) --

    The configuration information for publishing Internet Monitor internet measurements to Amazon S3. The configuration includes the bucket name and (optionally) prefix for the S3 bucket to store the measurements, and the delivery status. The delivery status is ENABLED or DISABLED , depending on whether you choose to deliver internet measurements to S3 logs.

    • BucketName (string) --

      The Amazon S3 bucket name.

    • BucketPrefix (string) --

      The Amazon S3 bucket prefix.

    • LogDeliveryStatus (string) --

      The status of publishing Internet Monitor internet measurements to an Amazon S3 bucket.

type TrafficPercentageToMonitor

integer

param TrafficPercentageToMonitor

The percentage of the internet-facing traffic for your application that you want to monitor with this monitor. If you set a city-networks maximum, that limit overrides the traffic percentage that you set.

To learn more, see Choosing an application traffic percentage to monitor in the Amazon CloudWatch Internet Monitor section of the CloudWatch User Guide .

type HealthEventsConfig

dict

param HealthEventsConfig

Defines the threshold percentages and other configuration information for when Amazon CloudWatch Internet Monitor creates a health event. Internet Monitor creates a health event when an internet issue that affects your application end users has a health score percentage that is at or below a specific threshold, and, sometimes, when other criteria are met.

If you don't set a health event threshold, the default value is 95%.

For more information, see Change health event thresholds in the Internet Monitor section of the CloudWatch User Guide .

  • AvailabilityScoreThreshold (float) --

    The health event threshold percentage set for availability scores.

  • PerformanceScoreThreshold (float) --

    The health event threshold percentage set for performance scores.

  • AvailabilityLocalHealthEventsConfig (dict) --

    The configuration that determines the threshold and other conditions for when Internet Monitor creates a health event for a local availability issue.

    • Status (string) --

      The status of whether Internet Monitor creates a health event based on a threshold percentage set for a local health score. The status can be ENABLED or DISABLED .

    • HealthScoreThreshold (float) --

      The health event threshold percentage set for a local health score.

    • MinTrafficImpact (float) --

      The minimum percentage of overall traffic for an application that must be impacted by an issue before Internet Monitor creates an event when a threshold is crossed for a local health score.

  • PerformanceLocalHealthEventsConfig (dict) --

    The configuration that determines the threshold and other conditions for when Internet Monitor creates a health event for a local performance issue.

    • Status (string) --

      The status of whether Internet Monitor creates a health event based on a threshold percentage set for a local health score. The status can be ENABLED or DISABLED .

    • HealthScoreThreshold (float) --

      The health event threshold percentage set for a local health score.

    • MinTrafficImpact (float) --

      The minimum percentage of overall traffic for an application that must be impacted by an issue before Internet Monitor creates an event when a threshold is crossed for a local health score.

rtype

dict

returns

Response Syntax

{
    'Arn': 'string',
    'Status': 'PENDING'|'ACTIVE'|'INACTIVE'|'ERROR'
}

Response Structure

  • (dict) --

    • Arn (string) --

      The Amazon Resource Name (ARN) of the monitor.

    • Status (string) --

      The status of a monitor.

GetHealthEvent (updated) Link ¶
Changes (response)
{'ImpactType': {'LOCAL_PERFORMANCE', 'LOCAL_AVAILABILITY'}}

Gets information the Amazon CloudWatch Internet Monitor has created and stored about a health event for a specified monitor. This information includes the impacted locations, and all the information related to the event, by location.

The information returned includes the impact on performance, availability, and round-trip time, information about the network providers (ASNs), the event type, and so on.

Information rolled up at the global traffic level is also returned, including the impact type and total traffic impact.

See also: AWS API Documentation

Request Syntax

client.get_health_event(
    MonitorName='string',
    EventId='string'
)
type MonitorName

string

param MonitorName

[REQUIRED]

The name of the monitor.

type EventId

string

param EventId

[REQUIRED]

The internally generated identifier of a health event. Because EventID contains the forward slash (“/”) character, you must URL-encode the EventID field in the request URL.

rtype

dict

returns

Response Syntax

{
    'EventArn': 'string',
    'EventId': 'string',
    'StartedAt': datetime(2015, 1, 1),
    'EndedAt': datetime(2015, 1, 1),
    'CreatedAt': datetime(2015, 1, 1),
    'LastUpdatedAt': datetime(2015, 1, 1),
    'ImpactedLocations': [
        {
            'ASName': 'string',
            'ASNumber': 123,
            'Country': 'string',
            'Subdivision': 'string',
            'Metro': 'string',
            'City': 'string',
            'Latitude': 123.0,
            'Longitude': 123.0,
            'CountryCode': 'string',
            'SubdivisionCode': 'string',
            'ServiceLocation': 'string',
            'Status': 'ACTIVE'|'RESOLVED',
            'CausedBy': {
                'Networks': [
                    {
                        'ASName': 'string',
                        'ASNumber': 123
                    },
                ],
                'AsPath': [
                    {
                        'ASName': 'string',
                        'ASNumber': 123
                    },
                ],
                'NetworkEventType': 'AWS'|'Internet'
            },
            'InternetHealth': {
                'Availability': {
                    'ExperienceScore': 123.0,
                    'PercentOfTotalTrafficImpacted': 123.0,
                    'PercentOfClientLocationImpacted': 123.0
                },
                'Performance': {
                    'ExperienceScore': 123.0,
                    'PercentOfTotalTrafficImpacted': 123.0,
                    'PercentOfClientLocationImpacted': 123.0,
                    'RoundTripTime': {
                        'P50': 123.0,
                        'P90': 123.0,
                        'P95': 123.0
                    }
                }
            }
        },
    ],
    'Status': 'ACTIVE'|'RESOLVED',
    'PercentOfTotalTrafficImpacted': 123.0,
    'ImpactType': 'AVAILABILITY'|'PERFORMANCE'|'LOCAL_AVAILABILITY'|'LOCAL_PERFORMANCE',
    'HealthScoreThreshold': 123.0
}

Response Structure

  • (dict) --

    • EventArn (string) --

      The Amazon Resource Name (ARN) of the event.

    • EventId (string) --

      The internally generated identifier of a health event.

    • StartedAt (datetime) --

      The time when a health event started.

    • EndedAt (datetime) --

      The time when a health event was resolved. If the health event is still active, the end time is not set.

    • CreatedAt (datetime) --

      The time when a health event was created.

    • LastUpdatedAt (datetime) --

      The time when a health event was last updated or recalculated.

    • ImpactedLocations (list) --

      The locations affected by a health event.

      • (dict) --

        Information about a location impacted by a health event in Amazon CloudWatch Internet Monitor.

        Geographic regions are hierarchically categorized into country, subdivision, metro and city geographic granularities. The geographic region is identified based on the IP address used at the client locations.

        • ASName (string) --

          The name of the network at an impacted location.

        • ASNumber (integer) --

          The Autonomous System Number (ASN) of the network at an impacted location.

        • Country (string) --

          The name of the country where the health event is located.

        • Subdivision (string) --

          The subdivision location where the health event is located. The subdivision usually maps to states in most countries (including the United States). For United Kingdom, it maps to a country (England, Scotland, Wales) or province (Northern Ireland).

        • Metro (string) --

          The metro area where the health event is located.

          Metro indicates a metropolitan region in the United States, such as the region around New York City. In non-US countries, this is a second-level subdivision. For example, in the United Kingdom, it could be a county, a London borough, a unitary authority, council area, and so on.

        • City (string) --

          The name of the city where the health event is located.

        • Latitude (float) --

          The latitude where the health event is located.

        • Longitude (float) --

          The longitude where the health event is located.

        • CountryCode (string) --

          The country code where the health event is located. The ISO 3166-2 codes for the country is provided, when available.

        • SubdivisionCode (string) --

          The subdivision code where the health event is located. The ISO 3166-2 codes for country subdivisions is provided, when available.

        • ServiceLocation (string) --

          The service location where the health event is located.

        • Status (string) --

          The status of the health event at an impacted location.

        • CausedBy (dict) --

          The cause of the impairment. There are two types of network impairments: Amazon Web Services network issues or internet issues. Internet issues are typically a problem with a network provider, like an internet service provider (ISP).

          • Networks (list) --

            The networks that could be impacted by a network impairment event.

            • (dict) --

              An internet service provider (ISP) or network in Amazon CloudWatch Internet Monitor.

              • ASName (string) --

                The internet provider name or network name.

              • ASNumber (integer) --

                The Autonomous System Number (ASN) of the internet provider or network.

          • AsPath (list) --

            The combination of the Autonomous System Number (ASN) of the network and the name of the network.

            • (dict) --

              An internet service provider (ISP) or network in Amazon CloudWatch Internet Monitor.

              • ASName (string) --

                The internet provider name or network name.

              • ASNumber (integer) --

                The Autonomous System Number (ASN) of the internet provider or network.

          • NetworkEventType (string) --

            Type of network impairment.

        • InternetHealth (dict) --

          The calculated health at a specific location.

          • Availability (dict) --

            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 .

            • ExperienceScore (float) --

              Experience scores, or health scores are calculated for different geographic and network provider combinations (that is, different granularities) and also summed 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 .

            • PercentOfTotalTrafficImpacted (float) --

              The impact on total traffic that a health event has, in increased latency or reduced availability. This is the percentage of how much latency has increased or availability has decreased during the event, compared to what is typical for traffic from this client location to the Amazon Web Services location using this client network.

              For information about how Internet Monitor calculates impact, see How Internet Monitor works in the Amazon CloudWatch Internet Monitor section of the Amazon CloudWatch User Guide.

            • PercentOfClientLocationImpacted (float) --

              The percentage of impact caused by a health event for client location traffic globally.

              For information about how Internet Monitor calculates impact, see Inside Internet Monitor in the Amazon CloudWatch Internet Monitor section of the Amazon CloudWatch User Guide.

          • Performance (dict) --

            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 .

            • ExperienceScore (float) --

              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 .

            • PercentOfTotalTrafficImpacted (float) --

              The impact on total traffic that a health event has, in increased latency or reduced availability. This is the percentage of how much latency has increased or availability has decreased during the event, compared to what is typical for traffic from this client location to the Amazon Web Services location using this 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 .

            • PercentOfClientLocationImpacted (float) --

              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 .

            • RoundTripTime (dict) --

              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 .

              • P50 (float) --

                RTT at the 50th percentile (p50).

              • P90 (float) --

                RTT at the 90th percentile (p90).

              • P95 (float) --

                RTT at the 95th percentile (p95).

    • Status (string) --

      The status of a health event.

    • PercentOfTotalTrafficImpacted (float) --

      The impact on total traffic that a health event has, in increased latency or reduced availability. This is the percentage of how much latency has increased or availability has decreased during the event, compared to what is typical for traffic from this client location to the Amazon Web Services location using this client network.

    • ImpactType (string) --

      The type of impairment of a specific health event.

    • HealthScoreThreshold (float) --

      The threshold percentage for a health score that determines, along with other configuration information, when Internet Monitor creates a health event when there's an internet issue that affects your application end users.

GetMonitor (updated) Link ¶
Changes (response)
{'HealthEventsConfig': {'AvailabilityLocalHealthEventsConfig': {'HealthScoreThreshold': 'double',
                                                                'MinTrafficImpact': 'double',
                                                                'Status': 'ENABLED '
                                                                          '| '
                                                                          'DISABLED'},
                        'PerformanceLocalHealthEventsConfig': {'HealthScoreThreshold': 'double',
                                                               'MinTrafficImpact': 'double',
                                                               'Status': 'ENABLED '
                                                                         '| '
                                                                         'DISABLED'}}}

Gets information about a monitor in Amazon CloudWatch Internet Monitor based on a monitor name. The information returned includes the Amazon Resource Name (ARN), create time, modified time, resources included in the monitor, and status information.

See also: AWS API Documentation

Request Syntax

client.get_monitor(
    MonitorName='string'
)
type MonitorName

string

param MonitorName

[REQUIRED]

The name of the monitor.

rtype

dict

returns

Response Syntax

{
    'MonitorName': 'string',
    'MonitorArn': 'string',
    'Resources': [
        'string',
    ],
    'Status': 'PENDING'|'ACTIVE'|'INACTIVE'|'ERROR',
    'CreatedAt': datetime(2015, 1, 1),
    'ModifiedAt': datetime(2015, 1, 1),
    'ProcessingStatus': 'OK'|'INACTIVE'|'COLLECTING_DATA'|'INSUFFICIENT_DATA'|'FAULT_SERVICE'|'FAULT_ACCESS_CLOUDWATCH',
    'ProcessingStatusInfo': 'string',
    'Tags': {
        'string': 'string'
    },
    'MaxCityNetworksToMonitor': 123,
    'InternetMeasurementsLogDelivery': {
        'S3Config': {
            'BucketName': 'string',
            'BucketPrefix': 'string',
            'LogDeliveryStatus': 'ENABLED'|'DISABLED'
        }
    },
    'TrafficPercentageToMonitor': 123,
    'HealthEventsConfig': {
        'AvailabilityScoreThreshold': 123.0,
        'PerformanceScoreThreshold': 123.0,
        'AvailabilityLocalHealthEventsConfig': {
            'Status': 'ENABLED'|'DISABLED',
            'HealthScoreThreshold': 123.0,
            'MinTrafficImpact': 123.0
        },
        'PerformanceLocalHealthEventsConfig': {
            'Status': 'ENABLED'|'DISABLED',
            'HealthScoreThreshold': 123.0,
            'MinTrafficImpact': 123.0
        }
    }
}

Response Structure

  • (dict) --

    • MonitorName (string) --

      The name of the monitor.

    • MonitorArn (string) --

      The Amazon Resource Name (ARN) of the monitor.

    • Resources (list) --

      The resources monitored by the monitor. Resources are listed by their Amazon Resource Names (ARNs).

      • (string) --

    • Status (string) --

      The status of the monitor.

    • CreatedAt (datetime) --

      The time when the monitor was created.

    • ModifiedAt (datetime) --

      The last time that the monitor was modified.

    • ProcessingStatus (string) --

      The health of the data processing for the monitor.

    • ProcessingStatusInfo (string) --

      Additional information about the health of the data processing for the monitor.

    • Tags (dict) --

      The tags that have been added to monitor.

      • (string) --

        • (string) --

    • MaxCityNetworksToMonitor (integer) --

      The maximum number of city-networks to monitor for your resources. A city-network is the location (city) where clients access your application resources from and the ASN or network provider, such as an internet service provider (ISP), that clients access the resources through. This limit can help control billing costs.

      To learn more, see Choosing a city-network maximum value in the Amazon CloudWatch Internet Monitor section of the CloudWatch User Guide .

    • InternetMeasurementsLogDelivery (dict) --

      Publish internet measurements for Internet Monitor to another location, such as an Amazon S3 bucket. The measurements are also published to Amazon CloudWatch Logs.

      • S3Config (dict) --

        The configuration information for publishing Internet Monitor internet measurements to Amazon S3. The configuration includes the bucket name and (optionally) prefix for the S3 bucket to store the measurements, and the delivery status. The delivery status is ENABLED or DISABLED , depending on whether you choose to deliver internet measurements to S3 logs.

        • BucketName (string) --

          The Amazon S3 bucket name.

        • BucketPrefix (string) --

          The Amazon S3 bucket prefix.

        • LogDeliveryStatus (string) --

          The status of publishing Internet Monitor internet measurements to an Amazon S3 bucket.

    • TrafficPercentageToMonitor (integer) --

      The percentage of the internet-facing traffic for your application to monitor with this monitor. If you set a city-networks maximum, that limit overrides the traffic percentage that you set.

      To learn more, see Choosing an application traffic percentage to monitor in the Amazon CloudWatch Internet Monitor section of the CloudWatch User Guide .

    • HealthEventsConfig (dict) --

      The list of health event threshold configurations. The threshold percentage for a health score determines, along with other configuration information, when Internet Monitor creates a health event when there's an internet issue that affects your application end users.

      For more information, see Change health event thresholds in the Internet Monitor section of the CloudWatch User Guide .

      • AvailabilityScoreThreshold (float) --

        The health event threshold percentage set for availability scores.

      • PerformanceScoreThreshold (float) --

        The health event threshold percentage set for performance scores.

      • AvailabilityLocalHealthEventsConfig (dict) --

        The configuration that determines the threshold and other conditions for when Internet Monitor creates a health event for a local availability issue.

        • Status (string) --

          The status of whether Internet Monitor creates a health event based on a threshold percentage set for a local health score. The status can be ENABLED or DISABLED .

        • HealthScoreThreshold (float) --

          The health event threshold percentage set for a local health score.

        • MinTrafficImpact (float) --

          The minimum percentage of overall traffic for an application that must be impacted by an issue before Internet Monitor creates an event when a threshold is crossed for a local health score.

      • PerformanceLocalHealthEventsConfig (dict) --

        The configuration that determines the threshold and other conditions for when Internet Monitor creates a health event for a local performance issue.

        • Status (string) --

          The status of whether Internet Monitor creates a health event based on a threshold percentage set for a local health score. The status can be ENABLED or DISABLED .

        • HealthScoreThreshold (float) --

          The health event threshold percentage set for a local health score.

        • MinTrafficImpact (float) --

          The minimum percentage of overall traffic for an application that must be impacted by an issue before Internet Monitor creates an event when a threshold is crossed for a local health score.

ListHealthEvents (updated) Link ¶
Changes (response)
{'HealthEvents': {'ImpactType': {'LOCAL_PERFORMANCE', 'LOCAL_AVAILABILITY'}}}

Lists all health events for a monitor in Amazon CloudWatch Internet Monitor. Returns information for health events including the event start and end time and the status.

Note

Health events that have start times during the time frame that is requested are not included in the list of health events.

See also: AWS API Documentation

Request Syntax

client.list_health_events(
    MonitorName='string',
    StartTime=datetime(2015, 1, 1),
    EndTime=datetime(2015, 1, 1),
    NextToken='string',
    MaxResults=123,
    EventStatus='ACTIVE'|'RESOLVED'
)
type MonitorName

string

param MonitorName

[REQUIRED]

The name of the monitor.

type StartTime

datetime

param StartTime

The time when a health event started.

type EndTime

datetime

param EndTime

The time when a health event ended. If the health event is still ongoing, then the end time is not set.

type NextToken

string

param NextToken

The token for the next set of results. You receive this token from a previous call.

type MaxResults

integer

param MaxResults

The number of health event objects that you want to return with this call.

type EventStatus

string

param EventStatus

The status of a health event.

rtype

dict

returns

Response Syntax

{
    'HealthEvents': [
        {
            'EventArn': 'string',
            'EventId': 'string',
            'StartedAt': datetime(2015, 1, 1),
            'EndedAt': datetime(2015, 1, 1),
            'CreatedAt': datetime(2015, 1, 1),
            'LastUpdatedAt': datetime(2015, 1, 1),
            'ImpactedLocations': [
                {
                    'ASName': 'string',
                    'ASNumber': 123,
                    'Country': 'string',
                    'Subdivision': 'string',
                    'Metro': 'string',
                    'City': 'string',
                    'Latitude': 123.0,
                    'Longitude': 123.0,
                    'CountryCode': 'string',
                    'SubdivisionCode': 'string',
                    'ServiceLocation': 'string',
                    'Status': 'ACTIVE'|'RESOLVED',
                    'CausedBy': {
                        'Networks': [
                            {
                                'ASName': 'string',
                                'ASNumber': 123
                            },
                        ],
                        'AsPath': [
                            {
                                'ASName': 'string',
                                'ASNumber': 123
                            },
                        ],
                        'NetworkEventType': 'AWS'|'Internet'
                    },
                    'InternetHealth': {
                        'Availability': {
                            'ExperienceScore': 123.0,
                            'PercentOfTotalTrafficImpacted': 123.0,
                            'PercentOfClientLocationImpacted': 123.0
                        },
                        'Performance': {
                            'ExperienceScore': 123.0,
                            'PercentOfTotalTrafficImpacted': 123.0,
                            'PercentOfClientLocationImpacted': 123.0,
                            'RoundTripTime': {
                                'P50': 123.0,
                                'P90': 123.0,
                                'P95': 123.0
                            }
                        }
                    }
                },
            ],
            'Status': 'ACTIVE'|'RESOLVED',
            'PercentOfTotalTrafficImpacted': 123.0,
            'ImpactType': 'AVAILABILITY'|'PERFORMANCE'|'LOCAL_AVAILABILITY'|'LOCAL_PERFORMANCE',
            'HealthScoreThreshold': 123.0
        },
    ],
    'NextToken': 'string'
}

Response Structure

  • (dict) --

    • HealthEvents (list) --

      A list of health events.

      • (dict) --

        Information about a health event created in a monitor in Amazon CloudWatch Internet Monitor.

        • EventArn (string) --

          The Amazon Resource Name (ARN) of the event.

        • EventId (string) --

          The internally generated identifier of a specific network traffic impairment health event.

        • StartedAt (datetime) --

          When a health event started.

        • EndedAt (datetime) --

          The time when a health event ended. If the health event is still active, then the end time is not set.

        • CreatedAt (datetime) --

          When the health event was created.

        • LastUpdatedAt (datetime) --

          When the health event was last updated.

        • ImpactedLocations (list) --

          The locations impacted by the health event.

          • (dict) --

            Information about a location impacted by a health event in Amazon CloudWatch Internet Monitor.

            Geographic regions are hierarchically categorized into country, subdivision, metro and city geographic granularities. The geographic region is identified based on the IP address used at the client locations.

            • ASName (string) --

              The name of the network at an impacted location.

            • ASNumber (integer) --

              The Autonomous System Number (ASN) of the network at an impacted location.

            • Country (string) --

              The name of the country where the health event is located.

            • Subdivision (string) --

              The subdivision location where the health event is located. The subdivision usually maps to states in most countries (including the United States). For United Kingdom, it maps to a country (England, Scotland, Wales) or province (Northern Ireland).

            • Metro (string) --

              The metro area where the health event is located.

              Metro indicates a metropolitan region in the United States, such as the region around New York City. In non-US countries, this is a second-level subdivision. For example, in the United Kingdom, it could be a county, a London borough, a unitary authority, council area, and so on.

            • City (string) --

              The name of the city where the health event is located.

            • Latitude (float) --

              The latitude where the health event is located.

            • Longitude (float) --

              The longitude where the health event is located.

            • CountryCode (string) --

              The country code where the health event is located. The ISO 3166-2 codes for the country is provided, when available.

            • SubdivisionCode (string) --

              The subdivision code where the health event is located. The ISO 3166-2 codes for country subdivisions is provided, when available.

            • ServiceLocation (string) --

              The service location where the health event is located.

            • Status (string) --

              The status of the health event at an impacted location.

            • CausedBy (dict) --

              The cause of the impairment. There are two types of network impairments: Amazon Web Services network issues or internet issues. Internet issues are typically a problem with a network provider, like an internet service provider (ISP).

              • Networks (list) --

                The networks that could be impacted by a network impairment event.

                • (dict) --

                  An internet service provider (ISP) or network in Amazon CloudWatch Internet Monitor.

                  • ASName (string) --

                    The internet provider name or network name.

                  • ASNumber (integer) --

                    The Autonomous System Number (ASN) of the internet provider or network.

              • AsPath (list) --

                The combination of the Autonomous System Number (ASN) of the network and the name of the network.

                • (dict) --

                  An internet service provider (ISP) or network in Amazon CloudWatch Internet Monitor.

                  • ASName (string) --

                    The internet provider name or network name.

                  • ASNumber (integer) --

                    The Autonomous System Number (ASN) of the internet provider or network.

              • NetworkEventType (string) --

                Type of network impairment.

            • InternetHealth (dict) --

              The calculated health at a specific location.

              • Availability (dict) --

                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 .

                • ExperienceScore (float) --

                  Experience scores, or health scores are calculated for different geographic and network provider combinations (that is, different granularities) and also summed 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 .

                • PercentOfTotalTrafficImpacted (float) --

                  The impact on total traffic that a health event has, in increased latency or reduced availability. This is the percentage of how much latency has increased or availability has decreased during the event, compared to what is typical for traffic from this client location to the Amazon Web Services location using this client network.

                  For information about how Internet Monitor calculates impact, see How Internet Monitor works in the Amazon CloudWatch Internet Monitor section of the Amazon CloudWatch User Guide.

                • PercentOfClientLocationImpacted (float) --

                  The percentage of impact caused by a health event for client location traffic globally.

                  For information about how Internet Monitor calculates impact, see Inside Internet Monitor in the Amazon CloudWatch Internet Monitor section of the Amazon CloudWatch User Guide.

              • Performance (dict) --

                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 .

                • ExperienceScore (float) --

                  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 .

                • PercentOfTotalTrafficImpacted (float) --

                  The impact on total traffic that a health event has, in increased latency or reduced availability. This is the percentage of how much latency has increased or availability has decreased during the event, compared to what is typical for traffic from this client location to the Amazon Web Services location using this 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 .

                • PercentOfClientLocationImpacted (float) --

                  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 .

                • RoundTripTime (dict) --

                  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 .

                  • P50 (float) --

                    RTT at the 50th percentile (p50).

                  • P90 (float) --

                    RTT at the 90th percentile (p90).

                  • P95 (float) --

                    RTT at the 95th percentile (p95).

        • Status (string) --

          Health event list member.

        • PercentOfTotalTrafficImpacted (float) --

          The impact on total traffic that a health event has, in increased latency or reduced availability. This is the percentage of how much latency has increased or availability has decreased during the event, compared to what is typical for traffic from this client location to the Amazon Web Services location using this client network.

        • ImpactType (string) --

          The type of impairment for a health event.

        • HealthScoreThreshold (float) --

          The value of the threshold percentage for performance or availability that was configured when Amazon CloudWatch Internet Monitor created the health event.

    • NextToken (string) --

      The token for the next set of results. You receive this token from a previous call.

UpdateMonitor (updated) Link ¶
Changes (request)
{'HealthEventsConfig': {'AvailabilityLocalHealthEventsConfig': {'HealthScoreThreshold': 'double',
                                                                'MinTrafficImpact': 'double',
                                                                'Status': 'ENABLED '
                                                                          '| '
                                                                          'DISABLED'},
                        'PerformanceLocalHealthEventsConfig': {'HealthScoreThreshold': 'double',
                                                               'MinTrafficImpact': 'double',
                                                               'Status': 'ENABLED '
                                                                         '| '
                                                                         'DISABLED'}}}

Updates a monitor. You can update a monitor to change the percentage of traffic to monitor or the maximum number of city-networks (locations and ASNs), to add or remove resources, or to change the status of the monitor. Note that you can't change the name of a monitor.

The city-network maximum that you choose is the limit, but you only pay for the number of city-networks that are actually monitored. For more information, see Choosing a city-network maximum value in the Amazon CloudWatch User Guide .

See also: AWS API Documentation

Request Syntax

client.update_monitor(
    MonitorName='string',
    ResourcesToAdd=[
        'string',
    ],
    ResourcesToRemove=[
        'string',
    ],
    Status='PENDING'|'ACTIVE'|'INACTIVE'|'ERROR',
    ClientToken='string',
    MaxCityNetworksToMonitor=123,
    InternetMeasurementsLogDelivery={
        'S3Config': {
            'BucketName': 'string',
            'BucketPrefix': 'string',
            'LogDeliveryStatus': 'ENABLED'|'DISABLED'
        }
    },
    TrafficPercentageToMonitor=123,
    HealthEventsConfig={
        'AvailabilityScoreThreshold': 123.0,
        'PerformanceScoreThreshold': 123.0,
        'AvailabilityLocalHealthEventsConfig': {
            'Status': 'ENABLED'|'DISABLED',
            'HealthScoreThreshold': 123.0,
            'MinTrafficImpact': 123.0
        },
        'PerformanceLocalHealthEventsConfig': {
            'Status': 'ENABLED'|'DISABLED',
            'HealthScoreThreshold': 123.0,
            'MinTrafficImpact': 123.0
        }
    }
)
type MonitorName

string

param MonitorName

[REQUIRED]

The name of the monitor.

type ResourcesToAdd

list

param ResourcesToAdd

The resources to include in a monitor, which you provide as a set of Amazon Resource Names (ARNs). Resources can be VPCs, NLBs, Amazon CloudFront distributions, or Amazon WorkSpaces directories.

You can add a combination of VPCs and CloudFront distributions, or you can add WorkSpaces directories, or you can add NLBs. You can't add NLBs or WorkSpaces directories together with any other resources.

Note

If you add only Amazon Virtual Private Clouds resources, at least one VPC must have an Internet Gateway attached to it, to make sure that it has internet connectivity.

  • (string) --

type ResourcesToRemove

list

param ResourcesToRemove

The resources to remove from a monitor, which you provide as a set of Amazon Resource Names (ARNs).

  • (string) --

type Status

string

param Status

The status for a monitor. The accepted values for Status with the UpdateMonitor API call are the following: ACTIVE and INACTIVE . The following values are not accepted: PENDING , and ERROR .

type ClientToken

string

param ClientToken

A unique, case-sensitive string of up to 64 ASCII characters that you specify to make an idempotent API request. You should not reuse the same client token for other API requests.

This field is autopopulated if not provided.

type MaxCityNetworksToMonitor

integer

param MaxCityNetworksToMonitor

The maximum number of city-networks to monitor for your application. A city-network is the location (city) where clients access your application resources from and the ASN or network provider, such as an internet service provider (ISP), that clients access the resources through. Setting this limit can help control billing costs.

type InternetMeasurementsLogDelivery

dict

param InternetMeasurementsLogDelivery

Publish internet measurements for Internet Monitor to another location, such as an Amazon S3 bucket. The measurements are also published to Amazon CloudWatch Logs.

  • S3Config (dict) --

    The configuration information for publishing Internet Monitor internet measurements to Amazon S3. The configuration includes the bucket name and (optionally) prefix for the S3 bucket to store the measurements, and the delivery status. The delivery status is ENABLED or DISABLED , depending on whether you choose to deliver internet measurements to S3 logs.

    • BucketName (string) --

      The Amazon S3 bucket name.

    • BucketPrefix (string) --

      The Amazon S3 bucket prefix.

    • LogDeliveryStatus (string) --

      The status of publishing Internet Monitor internet measurements to an Amazon S3 bucket.

type TrafficPercentageToMonitor

integer

param TrafficPercentageToMonitor

The percentage of the internet-facing traffic for your application that you want to monitor with this monitor. If you set a city-networks maximum, that limit overrides the traffic percentage that you set.

To learn more, see Choosing an application traffic percentage to monitor in the Amazon CloudWatch Internet Monitor section of the CloudWatch User Guide .

type HealthEventsConfig

dict

param HealthEventsConfig

The list of health score thresholds. A threshold percentage for health scores, along with other configuration information, determines when Internet Monitor creates a health event when there's an internet issue that affects your application end users.

For more information, see Change health event thresholds in the Internet Monitor section of the CloudWatch User Guide .

  • AvailabilityScoreThreshold (float) --

    The health event threshold percentage set for availability scores.

  • PerformanceScoreThreshold (float) --

    The health event threshold percentage set for performance scores.

  • AvailabilityLocalHealthEventsConfig (dict) --

    The configuration that determines the threshold and other conditions for when Internet Monitor creates a health event for a local availability issue.

    • Status (string) --

      The status of whether Internet Monitor creates a health event based on a threshold percentage set for a local health score. The status can be ENABLED or DISABLED .

    • HealthScoreThreshold (float) --

      The health event threshold percentage set for a local health score.

    • MinTrafficImpact (float) --

      The minimum percentage of overall traffic for an application that must be impacted by an issue before Internet Monitor creates an event when a threshold is crossed for a local health score.

  • PerformanceLocalHealthEventsConfig (dict) --

    The configuration that determines the threshold and other conditions for when Internet Monitor creates a health event for a local performance issue.

    • Status (string) --

      The status of whether Internet Monitor creates a health event based on a threshold percentage set for a local health score. The status can be ENABLED or DISABLED .

    • HealthScoreThreshold (float) --

      The health event threshold percentage set for a local health score.

    • MinTrafficImpact (float) --

      The minimum percentage of overall traffic for an application that must be impacted by an issue before Internet Monitor creates an event when a threshold is crossed for a local health score.

rtype

dict

returns

Response Syntax

{
    'MonitorArn': 'string',
    'Status': 'PENDING'|'ACTIVE'|'INACTIVE'|'ERROR'
}

Response Structure

  • (dict) --

    • MonitorArn (string) --

      The Amazon Resource Name (ARN) of the monitor.

    • Status (string) --

      The status of a monitor.