/AWS1/IF_CWM=>LISTHEALTHEVENTS()¶
About ListHealthEvents¶
Lists all health events for a monitor in Amazon CloudWatch Internet Monitor. Returns information for health events including the event start and end times, and the status.
Health events that have start times during the time frame that is requested are not included in the list of health events.
Method Signature¶
METHODS /AWS1/IF_CWM~LISTHEALTHEVENTS
IMPORTING
!IV_MONITORNAME TYPE /AWS1/CWMRESOURCENAME OPTIONAL
!IV_STARTTIME TYPE /AWS1/CWMTIMESTAMP OPTIONAL
!IV_ENDTIME TYPE /AWS1/CWMTIMESTAMP OPTIONAL
!IV_NEXTTOKEN TYPE /AWS1/CWMSTRING OPTIONAL
!IV_MAXRESULTS TYPE /AWS1/CWMMAXRESULTS OPTIONAL
!IV_EVENTSTATUS TYPE /AWS1/CWMHEALTHEVENTSTATUS OPTIONAL
!IV_LINKEDACCOUNTID TYPE /AWS1/CWMACCOUNTID OPTIONAL
RETURNING
VALUE(OO_OUTPUT) TYPE REF TO /aws1/cl_cwmlisthealthevtsout
RAISING
/AWS1/CX_CWMACCESSDENIEDEX
/AWS1/CX_CWMINTERNALSERVEREX
/AWS1/CX_CWMTHROTTLINGEX
/AWS1/CX_CWMVALIDATIONEX
/AWS1/CX_CWMCLIENTEXC
/AWS1/CX_CWMSERVEREXC
/AWS1/CX_RT_TECHNICAL_GENERIC
/AWS1/CX_RT_SERVICE_GENERIC.
IMPORTING¶
Required arguments:¶
iv_monitorname TYPE /AWS1/CWMRESOURCENAME /AWS1/CWMRESOURCENAME¶
The name of the monitor.
Optional arguments:¶
iv_starttime TYPE /AWS1/CWMTIMESTAMP /AWS1/CWMTIMESTAMP¶
The time when a health event started.
iv_endtime TYPE /AWS1/CWMTIMESTAMP /AWS1/CWMTIMESTAMP¶
The time when a health event ended. If the health event is still ongoing, then the end time is not set.
iv_nexttoken TYPE /AWS1/CWMSTRING /AWS1/CWMSTRING¶
The token for the next set of results. You receive this token from a previous call.
iv_maxresults TYPE /AWS1/CWMMAXRESULTS /AWS1/CWMMAXRESULTS¶
The number of health event objects that you want to return with this call.
iv_eventstatus TYPE /AWS1/CWMHEALTHEVENTSTATUS /AWS1/CWMHEALTHEVENTSTATUS¶
The status of a health event.
iv_linkedaccountid TYPE /AWS1/CWMACCOUNTID /AWS1/CWMACCOUNTID¶
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.
RETURNING¶
oo_output TYPE REF TO /aws1/cl_cwmlisthealthevtsout /AWS1/CL_CWMLISTHEALTHEVTSOUT¶
Domain /AWS1/RT_ACCOUNT_ID Primitive Type NUMC
Examples¶
Syntax Example¶
This is an example of the syntax for calling the method. It includes every possible argument and initializes every possible value. The data provided is not necessarily semantically accurate (for example the value "string" may be provided for something that is intended to be an instance ID, or in some cases two arguments may be mutually exclusive). The syntax shows the ABAP syntax for creating the various data structures.
DATA(lo_result) = lo_client->listhealthevents(
iv_endtime = '20150101000000.0000000'
iv_eventstatus = |string|
iv_linkedaccountid = |string|
iv_maxresults = 123
iv_monitorname = |string|
iv_nexttoken = |string|
iv_starttime = '20150101000000.0000000'
).
This is an example of reading all possible response values
lo_result = lo_result.
IF lo_result IS NOT INITIAL.
LOOP AT lo_result->get_healthevents( ) into lo_row.
lo_row_1 = lo_row.
IF lo_row_1 IS NOT INITIAL.
lv_arn = lo_row_1->get_eventarn( ).
lv_healtheventname = lo_row_1->get_eventid( ).
lv_timestamp = lo_row_1->get_startedat( ).
lv_timestamp = lo_row_1->get_endedat( ).
lv_timestamp = lo_row_1->get_createdat( ).
lv_timestamp = lo_row_1->get_lastupdatedat( ).
LOOP AT lo_row_1->get_impactedlocations( ) into lo_row_2.
lo_row_3 = lo_row_2.
IF lo_row_3 IS NOT INITIAL.
lv_string = lo_row_3->get_asname( ).
lv_long = lo_row_3->get_asnumber( ).
lv_string = lo_row_3->get_country( ).
lv_string = lo_row_3->get_subdivision( ).
lv_string = lo_row_3->get_metro( ).
lv_string = lo_row_3->get_city( ).
lv_double = lo_row_3->get_latitude( ).
lv_double = lo_row_3->get_longitude( ).
lv_string = lo_row_3->get_countrycode( ).
lv_string = lo_row_3->get_subdivisioncode( ).
lv_string = lo_row_3->get_servicelocation( ).
lv_healtheventstatus = lo_row_3->get_status( ).
lo_networkimpairment = lo_row_3->get_causedby( ).
IF lo_networkimpairment IS NOT INITIAL.
LOOP AT lo_networkimpairment->get_networks( ) into lo_row_4.
lo_row_5 = lo_row_4.
IF lo_row_5 IS NOT INITIAL.
lv_string = lo_row_5->get_asname( ).
lv_long = lo_row_5->get_asnumber( ).
ENDIF.
ENDLOOP.
LOOP AT lo_networkimpairment->get_aspath( ) into lo_row_4.
lo_row_5 = lo_row_4.
IF lo_row_5 IS NOT INITIAL.
lv_string = lo_row_5->get_asname( ).
lv_long = lo_row_5->get_asnumber( ).
ENDIF.
ENDLOOP.
lv_triangulationeventtype = lo_networkimpairment->get_networkeventtype( ).
ENDIF.
lo_internethealth = lo_row_3->get_internethealth( ).
IF lo_internethealth IS NOT INITIAL.
lo_availabilitymeasurement = lo_internethealth->get_availability( ).
IF lo_availabilitymeasurement IS NOT INITIAL.
lv_double = lo_availabilitymeasurement->get_experiencescore( ).
lv_double = lo_availabilitymeasurement->get_percentoftotaltrafimpa00( ).
lv_double = lo_availabilitymeasurement->get_percentofclilocimpacted( ).
ENDIF.
lo_performancemeasurement = lo_internethealth->get_performance( ).
IF lo_performancemeasurement IS NOT INITIAL.
lv_double = lo_performancemeasurement->get_experiencescore( ).
lv_double = lo_performancemeasurement->get_percentoftotaltrafimpa00( ).
lv_double = lo_performancemeasurement->get_percentofclilocimpacted( ).
lo_roundtriptime = lo_performancemeasurement->get_roundtriptime( ).
IF lo_roundtriptime IS NOT INITIAL.
lv_double = lo_roundtriptime->get_p50( ).
lv_double = lo_roundtriptime->get_p90( ).
lv_double = lo_roundtriptime->get_p95( ).
ENDIF.
ENDIF.
ENDIF.
LOOP AT lo_row_3->get_ipv4prefixes( ) into lo_row_6.
lo_row_7 = lo_row_6.
IF lo_row_7 IS NOT INITIAL.
lv_string = lo_row_7->get_value( ).
ENDIF.
ENDLOOP.
ENDIF.
ENDLOOP.
lv_healtheventstatus = lo_row_1->get_status( ).
lv_double = lo_row_1->get_percentoftotaltrafimpa00( ).
lv_healtheventimpacttype = lo_row_1->get_impacttype( ).
lv_percentage = lo_row_1->get_healthscorethreshold( ).
ENDIF.
ENDLOOP.
lv_string = lo_result->get_nexttoken( ).
ENDIF.