As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.
Publicar dados de métrica personalizada no CloudWatch
Vários serviços da AWS publicam as próprias métricas em namespaces que começam com “AWS
”. Também é possível publicar dados de métricas personalizadas usando seu próprio namespace (contanto que não comece com “AWS
”).
Publicar dados de métrica personalizada
Para publicar seus próprios dados métricos, chame o putMetricData
método CloudWatchClient's com um PutMetricDataRequestPutMetricDataRequest
devem incluir o namespace personalizado a ser usado para os dados e informações sobre o próprio ponto de dados em um MetricDatum
nota
Você não pode especificar um namespace que começa com “AWS
”. Namespaces que começam com “AWS
” são reservados para serem usados por produtos da Amazon Web Services.
Importações
import software.amazon.awssdk.regions.Region; import software.amazon.awssdk.services.cloudwatch.CloudWatchClient; import software.amazon.awssdk.services.cloudwatch.model.Dimension; import software.amazon.awssdk.services.cloudwatch.model.MetricDatum; import software.amazon.awssdk.services.cloudwatch.model.StandardUnit; import software.amazon.awssdk.services.cloudwatch.model.PutMetricDataRequest; import software.amazon.awssdk.services.cloudwatch.model.CloudWatchException; import java.time.Instant; import java.time.ZoneOffset; import java.time.ZonedDateTime; import java.time.format.DateTimeFormatter;
Código
public static void putMetData(CloudWatchClient cw, Double dataPoint ) { try { Dimension dimension = Dimension.builder() .name("UNIQUE_PAGES") .value("URLS") .build(); // Set an Instant object String time = ZonedDateTime.now( ZoneOffset.UTC ).format( DateTimeFormatter.ISO_INSTANT ); Instant instant = Instant.parse(time); MetricDatum datum = MetricDatum.builder() .metricName("PAGES_VISITED") .unit(StandardUnit.NONE) .value(dataPoint) .timestamp(instant) .dimensions(dimension).build(); PutMetricDataRequest request = PutMetricDataRequest.builder() .namespace("SITE/TRAFFIC") .metricData(datum).build(); cw.putMetricData(request); } catch (CloudWatchException e) { System.err.println(e.awsErrorDetails().errorMessage()); System.exit(1); } System.out.printf("Successfully put data point %f", dataPoint); }
Veja o exemplo completo
Mais informações
-
Use Amazon CloudWatch métricas no Guia do Amazon CloudWatch usuário.
-
Namespaces da AWS no Guia do usuário Amazon CloudWatch.
-
PutMetricDatana Referência da Amazon CloudWatch API.