

AWS App Runner wird ab dem 30. April 2026 nicht mehr für Neukunden geöffnet sein. Wenn Sie App Runner verwenden möchten, melden Sie sich vor diesem Datum an. Bestandskunden können den Service weiterhin wie gewohnt nutzen. Weitere Informationen finden Sie unter [Änderung der AWS App Runner Verfügbarkeit](https://docs.aws.amazon.com/apprunner/latest/dg/apprunner-availability-change.html).

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.

# Tracing für Ihre App Runner-Anwendung mit X-Ray
<a name="monitor-xray"></a>

AWS X-Ray ist ein Dienst, der Daten über Anfragen sammelt, die Ihre Anwendung bearbeitet, und Tools bereitstellt, mit denen Sie diese Daten anzeigen, filtern und Einblicke in sie gewinnen können, um Probleme und Optimierungsmöglichkeiten zu identifizieren. Zu jeder verfolgten Anfrage an Ihre Anwendung können Sie detaillierte Informationen nicht nur über die Anfrage und Antwort abrufen, sondern auch über Aufrufe, die Ihre Anwendung an nachgelagerte AWS Ressourcen, Microservices, Datenbanken und das HTTP-Web sendet. APIs

X-Ray verwendet Trace-Daten aus den AWS Ressourcen, die Ihre Cloud-Anwendungen unterstützen, um ein detailliertes Service-Diagramm zu erstellen. Das Servicediagramm zeigt den Client, Ihren Frontend-Service und die Backend-Services, die Ihr Frontend-Services für die Verarbeitung von Anforderungen und Persistenzdaten aufruft. Sie können das Servicediagramms zur Ermittlung von Engpässen, Latenzspitzen und anderen Problemen verwenden, die Sie zur Verbesserung der Leistung Ihrer Anwendungen beheben können.

Weitere Informationen zu X-Ray finden Sie im [Entwicklerhandbuch für AWS X-Ray](https://docs.aws.amazon.com/xray/latest/devguide/).

![\[Ein Beispiel für eine X-Ray-Servicekarte für einen App Runner-Dienst\]](http://docs.aws.amazon.com/de_de/apprunner/latest/dg/images/xray-example.png)


## Instrumentieren Sie Ihre Anwendung für die Rückverfolgung
<a name="monitor-xray.instrument"></a>

Instrumentieren Sie Ihre App Runner-Dienstanwendung für die Ablaufverfolgung mithilfe [OpenTelemetry](https://github.com/open-telemetry)einer portablen Telemetriespezifikation. Derzeit unterstützt App Runner [AWS Distro for OpenTelemetry](https://aws-otel.github.io/docs/introduction) (ADOT), eine OpenTelemetry Implementierung, die Telemetriedaten mithilfe von Diensten sammelt und präsentiert. AWS X-Ray implementiert die Tracing-Komponente.

*Abhängig vom spezifischen ADOT-SDK, das Sie in Ihrer Anwendung verwenden, unterstützt ADOT bis zu zwei Instrumentierungsansätze: *automatisch* und manuell.* Weitere Informationen zur Instrumentierung mit Ihrem SDK finden Sie in der [ADOT-Dokumentation](https://aws-otel.github.io/docs/introduction). Wählen Sie im Navigationsbereich Ihr SDK aus.

### Runtime-Setup
<a name="monitor-xray.instrument.setup"></a>

 Im Folgenden finden Sie allgemeine Anweisungen zur Runtime-Setup, mit denen Sie Ihre App Runner-Dienstanwendung für die Ablaufverfolgung instrumentieren können. 

**So richten Sie die Ablaufverfolgung für Ihre Laufzeit ein**

1.  Folgen Sie den Anweisungen für Ihre Laufzeit in [AWS Distro for OpenTelemetry](https://aws-otel.github.io/docs/introduction) (ADOT), um Ihre Anwendung zu instrumentieren. 

1.  Installieren Sie die erforderlichen `OTEL` Abhängigkeiten im `build` Abschnitt der `apprunner.yaml` Datei, wenn Sie das Quellcode-Repository verwenden, oder im Dockerfile, wenn Sie ein Container-Image verwenden. 

1.  Richten Sie Ihre Umgebungsvariablen in der `apprunner.yaml` Datei ein, wenn Sie das Quellcode-Repository verwenden, oder im Dockerfile, wenn Sie ein Container-Image verwenden.   
**Example Umgebungsvariablen**  
**Anmerkung**  
Das folgende Beispiel listet die wichtigen Umgebungsvariablen auf, die der `apprunner.yaml` Datei hinzugefügt werden sollen. Fügen Sie diese Umgebungsvariablen zu Ihrem Dockerfile hinzu, wenn Sie ein Container-Image verwenden. Jede Laufzeit kann jedoch ihre eigenen Eigenheiten haben, und Sie müssen der folgenden Liste möglicherweise weitere Umgebungsvariablen hinzufügen. *Weitere Informationen zu Ihren runtime-spezifischen Anweisungen und Beispiele zur Einrichtung Ihrer Anwendung für Ihre Runtime finden Sie unter [AWS Distribution for OpenTelemetry](https://aws-otel.github.io/docs/introduction) und Go to your runtime unter Getting Started.* 

   ```
   env:
       - name: OTEL_PROPAGATORS
         value: xray
       - name: OTEL_METRICS_EXPORTER
         value: none
       - name: OTEL_EXPORTER_OTLP_ENDPOINT
         value: http://localhost:4317  
       - name: OTEL_RESOURCE_ATTRIBUTES
         value: 'service.name=example_app'
   ```
**Anmerkung**  
 `OTEL_METRICS_EXPORTER=none`ist eine wichtige Umgebungsvariable für App Runner, da der App Runner Otel Collector keine Metrikprotokollierung akzeptiert. Er akzeptiert nur die Nachverfolgung von Metriken. 

### Beispiel für die Einrichtung einer Laufzeit
<a name="monitor-xray.instrument.example"></a>

Das folgende Beispiel zeigt die automatische Instrumentierung Ihrer Anwendung mit dem [ADOT Python SDK](https://aws-otel.github.io/docs/getting-started/python-sdk). Das SDK erzeugt automatisch Spans mit Telemetriedaten, die die Werte beschreiben, die von den Python-Frameworks in Ihrer Anwendung verwendet werden, ohne eine einzige Zeile Python-Code hinzuzufügen. Sie müssen nur ein paar Zeilen in zwei Quelldateien hinzufügen oder ändern.

Fügen Sie zunächst einige Abhängigkeiten hinzu, wie im folgenden Beispiel gezeigt.

**Example requirements.txt**  

```
opentelemetry-distro[otlp]>=0.24b0
opentelemetry-sdk-extension-aws~=2.0
opentelemetry-propagator-aws-xray~=1.0
```

Instrumentieren Sie dann Ihre Anwendung. Die Art und Weise, wie Sie dies tun, hängt von Ihrer Service-Quelle ab — Quellbild oder Quellcode.

------
#### [ Source image ]

Wenn es sich bei Ihrer Servicequelle um ein Image handelt, können Sie das Dockerfile, das die Erstellung Ihres Container-Images und die Ausführung der Anwendung im Image steuert, direkt instrumentieren. Das folgende Beispiel zeigt ein instrumentiertes Dockerfile für eine Python-Anwendung. Hinzufügungen zur Instrumentierung sind fett hervorgehoben.

**Example Dockerfile**  

```
FROM public.ecr.aws/amazonlinux/amazonlinux:latest
RUN yum install python3.7 -y && curl -O https://bootstrap.pypa.io/get-pip.py && python3 get-pip.py && yum update -y
COPY . /app
WORKDIR /app
RUN pip3 install -r requirements.txt
RUN opentelemetry-bootstrap --action=install
ENV OTEL_PYTHON_DISABLED_INSTRUMENTATIONS=urllib3
ENV OTEL_METRICS_EXPORTER=none              
ENV OTEL_RESOURCE_ATTRIBUTES='service.name=example_app'
CMD OTEL_PROPAGATORS=xray OTEL_PYTHON_ID_GENERATOR=xray opentelemetry-instrument python3 app.py
EXPOSE 8080
```

------
#### [ Source code repository ]

Wenn Ihre Dienstquelle ein Repository ist, das Ihre Anwendungsquelle enthält, instrumentieren Sie Ihr Image indirekt mithilfe der Einstellungen der App Runner-Konfigurationsdatei. Diese Einstellungen steuern das Dockerfile, das App Runner generiert und verwendet, um das Image für Ihre Anwendung zu erstellen. Das folgende Beispiel zeigt eine instrumentierte App Runner-Konfigurationsdatei für eine Python-Anwendung. Hinzufügungen zur Instrumentierung sind fett hervorgehoben.

**Example apprunner.yaml**  

```
version: 1.0
runtime: python3 
build:
  commands:
    build:
      - pip install -r requirements.txt
      - opentelemetry-bootstrap --action=install
run: 
  command: opentelemetry-instrument python app.py
  network: 
    port: 8080 
  env:
    - name: OTEL_PROPAGATORS
      value: xray
    - name: OTEL_METRICS_EXPORTER
      value: none
    - name: OTEL_PYTHON_ID_GENERATOR
      value: xray  
    - name: OTEL_PYTHON_DISABLED_INSTRUMENTATIONS 
      value: urllib3
    - name: OTEL_RESOURCE_ATTRIBUTES
      value: 'service.name=example_app'
```

------

## X-Ray-Berechtigungen zu Ihrer App Runner-Dienstinstanzrolle hinzufügen
<a name="monitor-xray.role"></a>

Um X-Ray Tracing mit Ihrem App Runner-Dienst verwenden zu können, müssen Sie den Instanzen des Dienstes Berechtigungen für die Interaktion mit dem X-Ray-Dienst erteilen. Dazu ordnen Sie Ihrem Service eine Instanzrolle zu und fügen eine verwaltete Richtlinie mit X-Ray-Berechtigungen hinzu. Weitere Informationen zu einer App Runner-Instanzrolle finden Sie unter[Instance-Rolle](security_iam_service-with-iam.md#security_iam_service-with-iam-roles-service.instance). Fügen Sie die `AWSXRayDaemonWriteAccess` verwaltete Richtlinie zu Ihrer Instanzrolle hinzu und weisen Sie sie bei der Erstellung Ihrem Service zu.

## X-Ray-Tracing für Ihren App Runner-Dienst aktivieren
<a name="monitor-xray.config"></a>

Wenn Sie [einen Dienst erstellen](manage-create.md), deaktiviert App Runner die Ablaufverfolgung standardmäßig. Sie können X-Ray Tracing für Ihren Service als Teil der Konfiguration von Observability aktivieren. Weitere Informationen finden Sie unter [Beobachtbarkeit verwalten](manage-configure-observability.md#manage-configure-observability.manage).

Wenn Sie die App Runner-API oder die verwenden AWS CLI, enthält das [TraceConfiguration](https://docs.aws.amazon.com/apprunner/latest/api/API_TraceConfiguration.html)Objekt innerhalb des [ObservabilityConfiguration](https://docs.aws.amazon.com/apprunner/latest/api/API_ObservabilityConfiguration.html)Ressourcenobjekts Tracing-Einstellungen. Um die Ablaufverfolgung weiterhin zu deaktivieren, geben Sie kein `TraceConfiguration` Objekt an.

Stellen Sie sowohl bei der Konsole als auch bei der API sicher, dass Sie Ihre im vorherigen Abschnitt beschriebene Instanzrolle Ihrem App Runner-Dienst zuordnen.

## Sehen Sie sich die X-Ray-Tracing-Daten für Ihren App Runner-Dienst an
<a name="monitor-xray.view"></a>

Wählen Sie auf der Registerkarte **Observability** der [Service-Dashboard-Seite](console.md#console.dashboard) in der App Runner-Konsole die Option **Service Map anzeigen** aus, um zur CloudWatch Amazon-Konsole zu navigieren.

![\[App Runner-Service-Dashboard-Seite mit dem Tab „Observability“\]](http://docs.aws.amazon.com/de_de/apprunner/latest/dg/images/service-dashboad-observability.png)


Verwenden Sie die CloudWatch Amazon-Konsole, um Service-Maps und Traces für Anfragen anzuzeigen, die Ihre Anwendung bearbeitet. Service Maps zeigen Informationen wie die Latenz von Anfragen und Interaktionen mit anderen Anwendungen und AWS Diensten. Mit den benutzerdefinierten Anmerkungen, die Sie Ihrem Code hinzufügen, können Sie ganz einfach nach Spuren suchen. Weitere Informationen finden Sie unter [Verwendung ServiceLens zur Überwachung des Zustands Ihrer Anwendungen](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/ServiceLens.html) im * CloudWatch Amazon-Benutzerhandbuch*.