View a markdown version of this page

Publica datos métricos personalizados en CloudWatch - AWS SDK for Java 2.x

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.

Publica datos métricos personalizados en CloudWatch

Algunos AWS servicios publican sus propias métricas en espacios de nombres que comienzan por AWS "». También puedes publicar datos métricos personalizados utilizando tu propio espacio de nombres (siempre y cuando no empiece por "«). AWS

Publicar datos de métricas personalizadas

Para publicar tus propios datos métricos, llama al putMetricData método s con CloudWatchClient un. PutMetricDataRequest PutMetricDataRequestDeben incluir el espacio de nombres personalizado que se utilizará para los datos e información sobre el propio punto de datos de un MetricDatum objeto.

nota

No puede especificar un espacio de nombres que comience por "AWS". Los espacios de nombres que comienzan por "AWS" están reservados para que los usen los productos. Amazon Web Services

Importaciones

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); }

Consulta el ejemplo https://github.com/awsdocs/aws-doc-sdk-examples/blob/f4eaf2b2971805cfb2b87a8e5ab408f83169432e/javav2/example_code/cloudwatch/src/main/java/com/example/cloudwatch/PutMetricData.java completo en. GitHub

Más información