

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.

# Metriken senden mit OpenTelemetry
<a name="metrics-otel-send"></a>

Sie können benutzerdefinierte Metriken zur CloudWatch Verwendung des OpenTelemetry Protokolls (OTLP) veröffentlichen. Sie können oTEL SDKs (Java, Python, Go, .NET Node.js), den oTEL Collector oder einen beliebigen OTLP-compatible Client verwenden.

## CloudWatch OTLP-Endpunkt
<a name="metrics-otel-send-endpoint"></a>

Senden Sie Metriken an den CloudWatch OTLP-Endpunkt in Ihrer Region:

```
https://monitoring.{{region}}.amazonaws.com/v1/metrics
```

Die Authentifizierung verwendet die AWS Standard-Sigv4-Signatur. Der Dienstname ist`monitoring`. Weitere Informationen zum Endpunkt, zu Authentifizierungsoptionen und Grenzwerten finden Sie unter[OTLP-Endpunkte](CloudWatch-OTLPEndpoint.md).

## Schnellstart: Veröffentlichen Sie Ihre erste Metrik
<a name="metrics-otel-send-quickstart"></a>

### Option 1: oTEL Collector (für die Produktion empfohlen)
<a name="metrics-otel-send-collector"></a>

Konfigurieren Sie einen OTel Collector mit dem OTLP-HTTP-Exporter und der SigV4-Authentifizierung:

```
receivers:
  otlp:
    protocols:
      grpc:
        endpoint: 0.0.0.0:4317
      http:
        endpoint: 0.0.0.0:4318

processors:
  batch:
    send_batch_size: 200
    timeout: 10s

exporters:
  otlphttp:
    tls:
      insecure: false
    metrics_endpoint: "https://monitoring.{{us-east-1}}.amazonaws.com/v1/metrics"
    auth:
      authenticator: sigv4auth

extensions:
  sigv4auth:
    service: "monitoring"
    region: "{{us-east-1}}"

service:
  extensions: [sigv4auth]
  pipelines:
    metrics:
      receivers: [otlp]
      processors: [batch]
      exporters: [otlphttp]
```

Eine ausführliche Anleitung zur Einrichtung finden Sie unter. [Erste Schritte](CloudWatch-OTLPGettingStarted.md)

### Option 2: oTEL SDK (Python-Beispiel)
<a name="metrics-otel-send-python"></a>

```
from opentelemetry import metrics
from opentelemetry.sdk.metrics import MeterProvider
from opentelemetry.sdk.metrics.export import PeriodicExportingMetricReader
from opentelemetry.exporter.otlp.proto.http.metric_exporter import OTLPMetricExporter

# Point at the CloudWatch OTLP endpoint
exporter = OTLPMetricExporter(
    endpoint="https://monitoring.{{us-east-1}}.amazonaws.com:443/v1/metrics"
)
reader = PeriodicExportingMetricReader(exporter, export_interval_millis=60000)
provider = MeterProvider(metric_readers=[reader])
metrics.set_meter_provider(provider)

# Create and record a metric
meter = metrics.get_meter("my-app")
counter = meter.create_counter("http_requests_total", description="Total HTTP requests")
counter.add(1, {"method": "GET", "path": "/api/users", "status": "200"})
```

### Option 3: oTEL SDK (Java-Beispiel)
<a name="metrics-otel-send-java"></a>

```
import io.opentelemetry.api.metrics.Meter;
import io.opentelemetry.api.metrics.LongCounter;

Meter meter = GlobalOpenTelemetry.getMeter("my-app");
LongCounter counter = meter.counterBuilder("http_requests_total")
    .setDescription("Total HTTP requests")
    .build();

counter.add(1, Attributes.of(
    AttributeKey.stringKey("method"), "GET",
    AttributeKey.stringKey("path"), "/api/users",
    AttributeKey.stringKey("status"), "200"
));
```

## Erforderliche IAM-Berechtigungen
<a name="metrics-otel-send-iam"></a>

Für die Metriken zum Senden von Identitäten ist eine `cloudwatch:PutMetricData` Genehmigung erforderlich. Fügen Sie für die SigV4-Authentifizierung die folgende Richtlinie bei:

```
{
  "Effect": "Allow",
  "Action": [
    "cloudwatch:PutMetricData"
  ],
  "Resource": "*"
}
```

Informationen zur Bearer-Token-Authentifizierung finden Sie unter. [Einrichtung der Bearer-Token-Authentifizierung für Metrics](CloudWatch-OTLP-MetricsBearerTokenAuth.md)

## Stellen Sie sicher, dass die Metriken
<a name="metrics-otel-send-verify"></a>

Öffnen Sie die CloudWatch Konsole, navigieren Sie zu **Query Studio** und führen Sie Folgendes aus:

```
http_requests_total
```

Metriken werden in der Regel innerhalb von 1—2 Minuten nach dem Senden des ersten Datenpunkts angezeigt.

## Unterstützte Metriktypen
<a name="metrics-otel-send-types"></a>

Die folgende Tabelle beschreibt die CloudWatch unterstützten oTEL-Metriktypen und wie man sie mit PromQL abfragt.


| Metriktyp oTEL | Verhalten von PromQL | 
| --- | --- | 
| Zähler | Verwenden Sie rate() oder, um abzufragen increase() | 
| Messinstrument | Direkt abfragen (aktueller Wert) | 
| Histogramm | histogram\_quantile()Für Perzentile verwenden | 

## Best Practices
<a name="metrics-otel-send-best-practices"></a>

Folgen Sie diesen Empfehlungen, wenn Sie Metriken über OTLP senden:
+ **Verwenden Sie aussagekräftige Metriknamen** — Halten Sie sich an die Benennungskonventionen von oTEL (z. B. `http.server.request.duration` oder`http_request_duration_seconds`).
+ **Halten Sie die Label-Kardinalität angemessen** — Vermeiden Sie Anforderungs-IDs oder UUIDs als Labelwerte.
+ **Stellen Sie ein geeignetes Exportintervall** ein — 60 Sekunden sind Standard. Kürzere Intervalle erhöhen die Kosten.
+ **Ressourcenattribute verwenden** — Verwenden Sie Ressourcenattribute für statische Metadaten (Dienstname, Version, Umgebung) und nicht für Bezeichnungen pro Datenpunkt.