Veröffentlichen von benutzerdefinierten Metrikdaten in CloudWatch - AWS SDK for Java 2.x

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Veröffentlichen von benutzerdefinierten Metrikdaten in CloudWatch

Eine Reihe von AWS Services veröffentlicht ihre eigenen Metriken in Namespaces, die mit „“ beginnenAWS, können Sie auch benutzerdefinierte Metrikdaten mit Ihrem eigenen Namespace veröffentlichen (solange sie nicht mit „ beginnenAWS).

Veröffentlichen benutzerdefinierter Metrikdaten

Um Ihre eigenen Metrikdaten zu veröffentlichen, rufen Sie die -putMetricDataMethode CloudWatchClientdes mit einem aufPutMetricDataRequest. muss den benutzerdefinierten Namespace PutMetricDataRequest enthalten, der für die Daten verwendet werden soll, sowie Informationen über den Datenpunkt selbst in einem MetricDatum Objekt.

Anmerkung

Sie können keinen Namespace angeben, der mit „AWS“ beginnt. Namespaces, die mit AWS " beginnen, sind für die Verwendung durch -Amazon Web ServicesProdukte reserviert.

Importe

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;

Code

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

Sehen Sie sich das vollständige Beispiel auf an GitHub.

Weitere Informationen