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.
Testen langlebiger Lambda-Funktionen
Verwenden Sie die SDKs für Durable Execution-Tests, um Ausführungen sowohl lokal als auch in der Cloud auszuführen und zu überprüfen. Autorentests, Assertionen, den Cloud Runner, die SAM-CLI-Integration und vollständige Beispiele finden Sie unter Testen im AWS Durable Execution SDK Developer Guide.
IAM-Berechtigungen für Cloud-Tests
Wenn Sie den Cloud Runner verwenden oder sam remote invoke eine bereitgestellte dauerhafte Funktion testen, benötigt der aufrufende Principal die Erlaubnis, die Funktion aufzurufen und ihren Ausführungsverlauf zu lesen. Ordnen Sie Ihrem Testaufrufer die folgenden Berechtigungen zu:
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "lambda:InvokeFunction", "lambda:GetDurableExecution", "lambda:GetDurableExecutionHistory" ], "Resource": [ "arn:aws:lambda:region:account-id:function:function-name", "arn:aws:lambda:region:account-id:function:function-name:*" ] } ] }
Ersetzen Sie regionaccount-id, und function-name durch Ihre Werte.
Fehler beim Debuggen
Wenn Tests fehlschlagen, überprüfen Sie das Ausführungsergebnis, um zu verstehen, was schief gelaufen ist. Überprüfen Sie den Ausführungsstatus, um festzustellen, ob die Funktion erfolgreich war, fehlgeschlagen ist oder ob das Zeitlimit überschritten wurde. Lesen Sie die Fehlermeldungen, um die Fehlerursache zu verstehen.
Untersuchen Sie die einzelnen Betriebsergebnisse, um herauszufinden, wo das Verhalten von den Erwartungen abwich. Überprüfen Sie die Ergebnisse der einzelnen Schritte, um zu sehen, welche Werte erzielt wurden. Überprüfen Sie die Reihenfolge der Operationen, um zu bestätigen, dass die Operationen in der erwarteten Reihenfolge ausgeführt wurden. Zählen Sie die Operationen, um sicherzustellen, dass die richtige Anzahl von Schritten, Wartezeiten und Callbacks erstellt wurde.
Zu den häufigsten Problemen gehören nicht deterministischer Code, der bei der Wiedergabe zu unterschiedlichen Ergebnissen führt, gemeinsamer Status durch globale Variablen, der während der Wiedergabe unterbrochen wird, und fehlende Operationen aufgrund bedingter Logikfehler. Verwenden Sie Standard-Debugger und Protokollierung, um den Funktionscode Schritt für Schritt durchzugehen und den Ausführungsablauf zu verfolgen.
Sehen Sie sich bei Cloud-Tests den Ausführungsverlauf in den CloudWatch Protokollen an, um detaillierte Betriebsprotokolle einzusehen. Verwenden Sie Tracing, um den Ausführungsablauf zwischen Diensten zu verfolgen und Engpässe zu identifizieren.