Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.
Los siguientes ejemplos de código de Java muestran cómo inicializar un AWS Health cliente y recuperar información sobre eventos y entidades.
Paso 1: Inicializar las credenciales
Se requieren credenciales válidas para comunicarse con. AWS Health API Puede usar el par de claves de cualquier IAM usuario asociado a la AWS cuenta.
Crea e inicializa una AWSCredentialsinstancia:
AWSCredentials credentials = null;
try {
credentials = new ProfileCredentialsProvider("default").getCredentials();
} catch (Exception e) {
throw new AmazonClientException(
"Cannot load the credentials from the credential profiles file. "
+ "Please make sure that your credentials file is at the correct "
+ "location (/home/username/.aws/credentials), and is in valid format.", e);
}
Paso 2: inicializar un cliente AWS Health API
Utilice el objeto credentials inicializado en el paso anterior para crear un cliente de AWS Health :
import com.amazonaws.services.health.AWSHealthClient;
AWSHealth awsHealthClient = new AWSHealthClient(credentials);
Paso 3: Utilice AWS Health API las operaciones para obtener información sobre el evento
DescribeEvents
import com.amazonaws.services.health.model.DescribeEventsRequest;
import com.amazonaws.services.health.model.DescribeEventsResult;
import com.amazonaws.services.health.model.Event;
import com.amazonaws.services.health.model.EventFilter;
DescribeEventsRequest request = new DescribeEventsRequest();
EventFilter filter = new EventFilter();
// Filter on any field from the supported AWS Health EventFilter model.
// Here is an example for Region us-east-1 events from the EC2 service.
filter.setServices(singletonList("EC2"));
filter.setRegions(singletonList("us-east-1"));
request.setFilter(filter);
DescribeEventsResult response = awsHealthClient.describeEvents(request);
List<Event> resultEvents = response.getEvents();
Event currentEvent = null;
for (Event event : resultEvents) {
// Display result event data; here is a subset.
System.out.println(event.getArn());
System.out.println(event.getService());
System.out.println(event.getRegion());
System.out.println(event.getAvailabilityZone());
System.out.println(event.getStartTime());
System.out.println(event.getEndTime());
}
DescribeEventAggregates
import com.amazonaws.services.health.model.DescribeEventAggregatesRequest;
import com.amazonaws.services.health.model.DescribeEventAggregatesResult;
import com.amazonaws.services.health.model.EventAggregate;
import com.amazonaws.services.health.model.EventFilter;
DescribeEventAggregatesRequest request = new DescribeEventAggregatesRequest();
// set the aggregation field
request.setAggregateField("eventTypeCategory");
// filter more on result if needed
EventFilter filter = new EventFilter();
filter.setRegions(singleton("us-east-1"));
request.setFilter(filter);
DescribeEventAggregatesResult response = awsHealthClient.describeEventAggregates(request);
// print event count for each eventTypeCategory
for (EventAggregate aggregate: response.getEventAggregates()) {
System.out.println("Event Category:" + aggregate.getAggregateValue());
System.out.println("Event Count:" + aggregate.getCount());
}
DescribeEventDetails
import com.amazonaws.services.health.model.DescribeEventDetailsRequest;
import com.amazonaws.services.health.model.DescribeEventDetailsResult;
import com.amazonaws.services.health.model.Event;
import com.amazonaws.services.health.model.EventDetails;
DescribeEventDetailsRequest describeEventDetailsRequest = new DescribeEventDetailsRequest();
// set event ARN and local value
describeEventDetailsRequest.setEventArns(singletonList("arn:aws:health:us-east-1::event/service
/eventTypeCode
/eventId
"));
describeEventDetailsRequest.setLocale("en-US");
filter.setEventArns
DescribeEventDetailsResult describeEventDetailsResult = awsHealthClient.describeEventDetails(request);
EventDetails eventDetail = describeEventDetailsResult.getSuccessfulSet().get(0);
// check event-related fields
Event event = eventDetail.getEvent();
System.out.println(event.getService());
System.out.println(event.getRegion());
System.out.println(event.getAvailabilityZone());
System.out.println(event.getStartTime());
System.out.println(event.getEndTime());
// print out event description
System.out.println(eventDetail.getEventDescription().getLatestDescription());
DescribeAffectedEntities
import com.amazonaws.services.health.model.AffectedEntity;
import com.amazonaws.services.health.model.DateTimeRange;
import com.amazonaws.services.health.model.DescribeAffectedEntitiesRequest;
import com.amdescribeEventDetailsRequestazonaws.services.health.model.DescribeAffectedEntitiesResult;
DescribeAffectedEntitiesRequest request = new DescribeAffectedEntitiesRequest();
EntityFilter filter = new EntityFilter();
filter.setEventArns(singletonList("arn:aws:health:us-east-1::event/service
/eventTypeCode
/eventId
"));
DescribeAffectedEntitiesResult response = awsHealthClient.describeAffectedEntities(request);
for (AffectedEntity affectedEntity: response.getEntities()) {
System.out.println(affectedEntity.getEntityValue());
System.out.println(affectedEntity.getAwsAccountId());
System.out.println(affectedEntity.getEntityArn());
}
DescribeEntityAggregates
import com.amazonaws.services.health.model.DescribeEntityAggregatesRequest;
import com.amazonaws.services.health.model.DescribeEntityAggregatesResult;
import com.amazonaws.services.health.model.EntityAggregate;
DescribeEntityAggregatesRequest request = new DescribeEntityAggregatesRequest();
request.setEventArns(singletonList("arn:aws:health:us-east-1::event/service
/eventTypeCode
/eventId
"));
DescribeEntityAggregatesResult response = awsHealthClient.describeEntityAggregates(request);
for (EntityAggregate entityAggregate : response.getEntityAggregates()) {
System.out.println(entityAggregate.getEventArn());
System.out.println(entityAggregate.getCount());
}