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
Sie können Amazon CloudWatch Logs verwenden, um Protokolle für Ihre Edge-Funktionen, sowohl Lambda @Edge als auch CloudFront Functions, 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.
Lambda@Edge-Protokolle
Lambda @Edge sendet automatisch CloudWatch Funktionsprotokolle an Logs und erstellt Protokollstreams dort, AWS-Regionen wo die Funktionen ausgeführt werden. Der Name der Protokollgruppe ist wie folgt formatiert: Wo
ist der Namefunction-name
/aws/lambda/us-east-1.
, den Sie der Funktion gegeben haben, als Sie sie erstellt haben, und function-name
us-east-1
ist der Regionalcode für den Ort, AWS-Region an dem die Funktion erstellt wurde. Der Name der Protokollgruppe enthält immer Folgendesus-east-1
, auch für Protokollgruppen für andere Regionen, in denen Ihre Funktion ausgeführt wird.
Anmerkung
Lambda@Edge drosselt Protokolle basierend auf dem angeforderten Volumen und der Größe der Protokolle.
Sie müssen die CloudWatch Protokolldateien korrekt überprüfen, AWS-Region 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 AWS-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 im Folgenden:
-
Weitere Informationen zum Anzeigen von Diagrammen im Bereich Überwachung der CloudFront Konsole finden Sie unterÜberwachen Sie CloudFront Metriken mit Amazon CloudWatch.
-
Informationen zu den Berechtigungen, die zum Senden von Daten an CloudWatch Logs erforderlich sind, finden Sie unterIAMBerechtigungen und Rollen für Lambda @Edge einrichten.
-
Weitere Informationen zum Hinzufügen der Protokollierung zu einer Lambda@Edge-Funktion finden Sie unter AWS Lambda -Funktionsprotokollierung in Node.js oder AWS Lambda -Funktionsprotokollierung in Python im AWS Lambda -Entwicklerhandbuch.
-
Informationen zu CloudWatch Logs-Kontingenten (früher als Limits bezeichnet) finden Sie unter CloudWatch Logs-Kontingente im Amazon CloudWatch Logs-Benutzerhandbuch.
CloudFront Funktionen, Protokolle
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 der Protokollgruppe hat das Format /aws/cloudfront/function/
. Dabei ist FunctionName
der Name, den Sie der Funktion bei der Erstellung gegeben haben. Der Name des Protokollstreams ist im Format FunctionName
YYYY/M/D/
.UUID
Im Folgenden wird ein Beispiel für eine Protokollnachricht gezeigt, 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
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, 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, 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. Dienstbezogene Rollen sind vom Dienst vordefiniert und beinhalten alle Berechtigungen, die der Dienst benötigt, um andere AWS Dienste in Ihrem Namen aufzurufen. CloudFront Functions verwendet eine dienstbezogene Rolle namens. AWSServiceRoleForCloudFrontLogger Weitere Informationen zu dieser Rolle finden Sie unter Serviceverknüpfte Rollen für 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 CloudFront den Standardprotokollen und Echtzeitprotokollen protokolliert. Informationen über den Fehler werden in den Feldern x-edge-result-type
, x-edge-response-result-type
und x-edge-detailed-result-type
protokolliert.