

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.

# Protokolle für Edge-Funktionen
<a name="edge-functions-logs"></a>

Sie können Amazon CloudWatch Logs verwenden, um Protokolle für Ihre Edge-Funktionen, sowohl [Lambda @Edge](lambda-at-the-edge.md) als auch [CloudFront Functions](cloudfront-functions.md), abzurufen. Sie können über die CloudWatch Konsole oder die Logs-API auf die CloudWatch Protokolle zugreifen.

**Wichtig**  
Wir empfehlen Ihnen, die Protokolle zu verwenden, um die Art der Anfragen nach Ihren Inhalten zu verstehen, und nicht, um alle Anfragen vollständig zu erfassen. CloudFront liefert Edge-Funktionsprotokolle nach bestem Wissen und Gewissen. Der Protokolleintrag für eine bestimmte Anfrage wird möglicherweise viel später übermittelt, als die Anfrage tatsächlich verarbeitet wurde; in seltenen Fällen kann es auch sein, dass ein Protokolleintrag gar nicht übermittelt wird. Wenn ein Protokolleintrag nicht in den Protokollen für Edge-Funktionen enthalten ist, stimmt die Anzahl der Einträge in den Protokollen für Edge-Funktionen nicht mit deren Anzahl in den Abrechnungs- und Nutzungsberichten für AWS überein.

**Topics**
+ [Lambda@Edge-Protokolle](#lambda-at-edge-logs)
+ [CloudFront Funktionen, Protokolle](#cloudfront-function-logs)

## Lambda@Edge-Protokolle
<a name="lambda-at-edge-logs"></a>

Lambda @Edge sendet automatisch CloudWatch Funktionsprotokolle an Logs und erstellt Protokollstreams dort, AWS-Regionen wo die Funktionen aufgerufen werden. Wenn Sie eine Funktion in erstellen oder ändern AWS Lambda, können Sie entweder den Standardnamen der CloudWatch Protokollgruppe verwenden oder ihn anpassen.
+ Der Standardname der Protokollgruppe lautet `/aws/lambda/<FunctionName>`, wobei `<FunctionName>` der Name ist, den Sie beim Erstellen der Funktion angegeben haben. Beim Senden von CloudWatch Protokollen an fügt Lambda @Edge dem Funktionsnamen automatisch das `us-east-1` Präfix hinzu, sodass der Protokollgruppenname lautet`/aws/lambda/us-east-1.<FunctionName>`. Dieses Präfix entspricht dem AWS-Region Ort, an dem die Funktion erstellt wurde. Dieses Präfix bleibt Teil des Protokollgruppennamens, auch in anderen Regionen, in denen die Funktion aufgerufen wird. 
+ Wenn Sie einen benutzerdefinierten Protokollgruppennamen angeben, wie z. B. `/MyLogGroup`, fügt Lambda@Edge das Regionspräfix nicht hinzu. Der Name der Protokollgruppe bleibt in allen anderen Regionen, in denen die Funktion aufgerufen wird, derselbe.

**Anmerkung**  
Wenn Sie eine benutzerdefinierte Protokollgruppe erstellen und denselben Namen wie den standardmäßigen `/aws/lambda/<FunctionName>` angeben, fügt Lambda@Edge dem Funktionsnamen das Präfix `us-east-1` hinzu.

Neben der Anpassung des Protokollgruppennamens unterstützen Lambda@Edge-Funktionen auch JSON- und Klartext-Protokollformate sowie die Filterung auf Protokollebene. Weitere Informationen finden Sie unter [Konfigurieren erweiterter Protokollierungsoptionen für die Lambda-Funktion](https://docs.aws.amazon.com/lambda/latest/dg/monitoring-cloudwatchlogs-advanced.html) im *Entwicklerhandbuch für AWS Lambda *.

**Anmerkung**  
Lambda@Edge drosselt Protokolle basierend auf dem angeforderten Volumen und der Größe der Protokolle.

Sie müssen die CloudWatch Protokolldateien in der richtigen Region überprüfen, um Ihre Lambda @Edge -Funktionsprotokolldateien zu sehen. Um die Regionen zu sehen, in denen Ihre Lambda @Edge -Funktion ausgeführt wird, sehen Sie sich Diagramme der Metriken für die Funktion in der CloudFront Konsole an. Metriken werden für jede -Region angezeigt. Auf derselben Seite können Sie eine Region auswählen und Protokolldateien für diese anzeigen, um Probleme zu untersuchen.

Weitere Informationen zur Verwendung von CloudWatch Logs mit Lambda @Edge -Funktionen finden Sie in den folgenden Themen:
+ Weitere Informationen zum Anzeigen von Diagrammen im Bereich **Überwachung** der CloudFront Konsole finden Sie unter[Überwachen von CloudFront-Metriken mit Amazon CloudWatch](monitoring-using-cloudwatch.md).
+ Informationen zu den Berechtigungen, die zum Senden von Daten an CloudWatch Logs erforderlich sind, finden Sie unter[Einrichten von IAM-Berechtigungen und -Rollen für Lambda@Edge](lambda-edge-permissions.md).
+ Weitere Informationen zum Hinzufügen der Protokollierung zu einer Lambda@Edge-Funktion finden Sie unter [AWS Lambda -Funktionsprotokollierung in Node.js](https://docs.aws.amazon.com/lambda/latest/dg/nodejs-logging.html) oder [AWS Lambda -Funktionsprotokollierung in Python](https://docs.aws.amazon.com/lambda/latest/dg/python-logging.html) im *AWS Lambda -Entwicklerhandbuch*.
+ Informationen zu CloudWatch Logs-Kontingenten (früher als Limits bezeichnet) finden Sie unter [CloudWatch Logs-Kontingente](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/cloudwatch_limits_cwl.html) im *Amazon CloudWatch Logs-Benutzerhandbuch*.

## CloudFront Funktionen, Protokolle
<a name="cloudfront-function-logs"></a>

Wenn der Code einer CloudFront Funktion `console.log()` Anweisungen enthält, sendet CloudFront Functions diese Protokollzeilen automatisch an CloudWatch Logs. Wenn es keine `console.log()` Anweisungen gibt, wird nichts an CloudWatch Logs gesendet.

CloudFront Functions erstellt immer Log-Streams in der Region USA Ost (Nord-Virginia) (`us-east-1`), unabhängig davon, an welchem Edge-Standort die Funktion ausgeführt wurde. Der Name des Protokollstreams ist im Format `YYYY/M/D/UUID`.

Der Name der Protokollgruppe verwendet das folgende Format:
+ Für CloudFront Funktionen auf der Cache-Verhaltensebene lautet das Format `/aws/cloudfront/function/<FunctionName>`
+ Für CloudFront Funktionen auf der Verteilungsebene (Verbindungsfunktionen) lautet das Format `/aws/cloudfront/connection-function/<FunctionName>`

Das `<FunctionName>` ist der Name, den Sie der Funktion gegeben haben, als Sie sie erstellt haben.

**Example Anfragen des Betrachters**  
Im Folgenden sehen Sie ein Beispiel für eine Protokollnachricht, die an CloudWatch Logs gesendet wurde. Jede Zeile beginnt mit einer ID, die eine CloudFront Anfrage eindeutig identifiziert. Die Nachricht beginnt mit einer `START` Zeile, die die CloudFront Verteilungs-ID enthält, und endet mit einer `END` Zeile. Zwischen den Zeilen `END` und `START` befinden sich die durch `console.log()`-Anweisungen in der Funktion erzeugten Protokollzeilen.  

```
U7b4hR_RaxMADupvKAvr8_m9gsGXvioUggLV5Oyq-vmAtH8HADpjhw== START DistributionID: E3E5D42GADAXZZ
U7b4hR_RaxMADupvKAvr8_m9gsGXvioUggLV5Oyq-vmAtH8HADpjhw== Example function log output
U7b4hR_RaxMADupvKAvr8_m9gsGXvioUggLV5Oyq-vmAtH8HADpjhw== END
```

**Example Verbindungsanfragen**  
Im Folgenden sehen Sie ein Beispiel für eine Protokollnachricht, die an CloudWatch Logs gesendet wurde. Jede Zeile beginnt mit einer ID, die eine CloudFront Anfrage eindeutig identifiziert. Die Nachricht beginnt mit einer `START` Zeile, die die CloudFront Verteilungs-ID enthält, und endet mit einer `END` Zeile. Zwischen den Zeilen `END` und `START` befinden sich die durch `console.log()`-Anweisungen in der Funktion erzeugten Protokollzeilen.  

```
U7b4hR_RaxMADupvKAvr8_m9gsGXvioUggLV5Oyq-vmAtH8HADpjhw== START DistributionID: E3E5D42GADA123
U7b4hR_RaxMADupvKAvr8_m9gsGXvioUggLV5Oyq-vmAtH8HADpjhw== 1.2.3.4
U7b4hR_RaxMADupvKAvr8_m9gsGXvioUggLV5Oyq-vmAtH8HADpjhw== END
```

**Anmerkung**  
CloudFront Functions sendet CloudWatch nur Protokolle für Funktionen in der `LIVE` Phase, die als Reaktion auf Produktionsanfragen und -antworten ausgeführt werden. Wenn Sie [eine Funktion testen](test-function.md), sendet CloudFront keine Protokolle an CloudWatch. Die Testausgabe enthält Informationen über Fehler, Rechenauslastung und Funktionsprotokolle (`console.log()`Anweisungen), aber diese Informationen werden nicht an gesendet CloudWatch.

CloudFront Functions verwendet eine [dienstbezogene AWS Identity and Access Management (IAM-) Rolle](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_terms-and-concepts.html#iam-term-service-linked-role), um Protokolle an Logs in Ihrem CloudWatch Konto zu senden. Eine serviceverknüpfte Rolle ist ein spezieller Typ von IAM-Rolle, die direkt mit einem AWS-Service verknüpft ist. Mit Diensten verknüpfte Rollen sind vom Dienst vordefiniert und enthalten alle Berechtigungen, die der Dienst benötigt, um andere AWS-Services Rollen für Sie aufzurufen. CloudFront Functions verwendet die **AWSServiceRoleForCloudFrontLogger**dienstverknüpfte Rolle. Weitere Informationen zu dieser Rolle finden Sie unter [Serviceverknüpfte Rollen für Lambda@Edge](lambda-edge-permissions.md#using-service-linked-roles-lambda-edge) (Lambda@Edge verwendet dieselbe serviceverknüpfte Rolle).

Wenn eine Funktion aufgrund eines Überprüfungs- oder Ausführungsfehlers fehlschlägt, werden die Informationen in [Standardprotokollen und Echtzeit-Zugriffsprotokollen](AccessLogs.md) [protokolliert](real-time-logs.md). Genauere Informationen zum Fehler finden Sie in den Feldern `x-edge-result-type`, `x-edge-response-result-type` und `x-edge-detailed-result-type`.