Skip to content

get_health_event async

get_health_event(
    monitor_name: ResourceName,
    event_id: HealthEventName,
    *,
    config_overrides: Optional[AsyncInternetMonitorClientConfig] = None,
    linked_account_id: Optional[AccountId] = None,
) -> GetHealthEventOutput

Gets information that 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.

Parameters:

  • monitor_name (ResourceName) –

    The name of the monitor.

  • event_id (HealthEventName) –

    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.

  • linked_account_id (Optional[AccountId], default: None ) –

    The account ID for an account that you've set up cross-account sharing for in Amazon CloudWatch Internet Monitor. You configure cross-account sharing by using Amazon CloudWatch Observability Access Manager. For more information, see Internet Monitor cross-account observability in the Amazon CloudWatch Internet Monitor User Guide.

Raises:

Source code in docs_src/capo_internetmonitor/_services/async_internet_monitor.py
async def get_health_event(
    self,
    monitor_name: "capo_internetmonitor.types.resource_name.ResourceName",
    event_id: "capo_internetmonitor.types.health_event_name.HealthEventName",
    *,
    config_overrides: Optional[AsyncInternetMonitorClientConfig] = None,
    linked_account_id: Optional[
        "capo_internetmonitor.types.account_id.AccountId"
    ] = None,
) -> "capo_internetmonitor.types.get_health_event_output.GetHealthEventOutput":
    """<p>Gets information that 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.</p> <p>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.</p> <p>Information rolled up at the global traffic level is also returned, including the impact type and total traffic impact.</p>

    Args:
        monitor_name: <p>The name of the monitor.</p>
        event_id: <p>The internally-generated identifier of a health event. Because <code>EventID</code> contains the forward slash (“/”) character, you must URL-encode the <code>EventID</code> field in the request URL.</p>
        linked_account_id: <p>The account ID for an account that you've set up cross-account sharing for in Amazon CloudWatch Internet Monitor. You configure cross-account sharing by using Amazon CloudWatch Observability Access Manager. For more information, see <a href="https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/cwim-cross-account.html">Internet Monitor cross-account observability</a> in the Amazon CloudWatch Internet Monitor User Guide.</p>

    Raises:
        capo_internetmonitor.errors.access_denied_exception.AccessDeniedException: <p>You don't have sufficient permission to perform this action.</p>
        capo_internetmonitor.errors.internal_server_exception.InternalServerException: <p>An internal error occurred.</p>
        capo_internetmonitor.errors.throttling_exception.ThrottlingException: <p>The request was denied due to request throttling.</p>
        capo_internetmonitor.errors.validation_exception.ValidationException: <p>Invalid request.</p>
        capo_internetmonitor.errors.UnknownServiceError: The service returned an error code this client does not model.
    """

    async def _handler(
        req: "AsyncOperationRequest[capo_internetmonitor.types.get_health_event_input.GetHealthEventInput]",
    ) -> AsyncOperationResponse[
        "capo_internetmonitor.types.get_health_event_output.GetHealthEventOutput"
    ]:
        import capo_internetmonitor._operations.internet_monitor20210603.get_health_event

        (
            output,
            http_response,
        ) = await capo_internetmonitor._operations.internet_monitor20210603.get_health_event.async_get_health_event(
            req.options, req.input
        )
        return AsyncOperationResponse(output=output, response=http_response)

    interceptors_, options_ = self.operation_options(
        config_overrides, OperationLogging("GetHealthEvent")
    )
    input_: capo_internetmonitor.types.get_health_event_input.GetHealthEventInput = {
        "monitor_name": monitor_name,
        "event_id": event_id,
    }
    if linked_account_id is not None:
        input_["linked_account_id"] = linked_account_id

    response = await aexecute_pipeline(
        AsyncOperationRequest(input=input_, options=options_),
        handler=_handler,
        interceptors=list(interceptors_),
    )
    await response.response.aclose()
    return response.output