Wie überprüfe ich CloudWatch-Protokolle auf Fehler, wenn ich Benutzer mit einem AWS-Lambda-Trigger in einen Benutzerpool importiere?

Letzte Aktualisierung: 24.01.2023

Ich möchte nach Fehlern suchen, die gemeldet werden, wenn ich Benutzer mit einem AWS-Lambda-Trigger für die Benutzermigration in einen Benutzerpool importiere.

Kurzbeschreibung

Mit Amazon Cognito können Sie Benutzer mit einem Lambda-Trigger für die Benutzermigration in einen Amazon Cognito-Benutzerpool importieren. Dieser Importvorgang empfängt Metadaten von Benutzern, die versuchen, sich anzumelden. Anschließend werden Benutzerprofil-Informationen aus einer externen Datenquelle oder einem anderen Benutzerpool zurückgegeben.

Informationen zu häufigen Fehlern beim Importvorgang finden Sie unter Wie behebe ich häufige Fehler im Importvorgang in Amazon Cognito?

Gehen Sie wie folgt vor, um nach häufigen Fehlern zu suchen:

  1. Finden Sie den Namen des Lambda-Triggers.
  2. Finden Sie die Cloudwatch-Protokollgruppe.
  3. Den Cloudwatch-Protokollstream verwenden.

Auflösung

Finden Sie den Namen des Lambda-Triggers

Nutzung der älteren Amazon-Cognito-Schnittstelle

  1. Öffnen Sie die Amazon-Cognito-Konsole.
  2. Wählen Sie Manage User Pools (Benutzerpools verwalten) aus.
  3. Wählen Sie Ihren Benutzerpool.
  4. Wählen Sie im Navigationsbereich unter Allgemeine Einstellungen die Option Trigger aus.
  5. Finden Sie den Abschnitt Benutzermigration und notieren Sie sich den Namen der Lambda-Funktion.

Verwendung der neuen Amazon-Cognito-Schnittstelle

  1. Öffnen Sie die Amazon-Cognito-Konsole.
  2. Wählen Sie Ihren Benutzerpool.
  3. Auf der Registerkarte Benutzerpooleigenschaften finden Sie die Informationen für die Lambda-Trigger.
  4. Notieren Sie sich den Namen der Lambda-Funktion für den Lambda-Trigger für die Benutzermigration im Abschnitt Angefügte Lambda-Funktion.

Nutzung der Lambda-Konsole

  1. Öffnen Sie die AWS-Lambda-Konsole.
  2. Suchen Sie nach dem Lambda-Trigger, den Sie für Ihren Importauftrag erstellt haben.

Beispiel für den Namen eines Lambda-Migrationstriggers:

TestingMigration

Finden Sie die CloudWatch-Protokollgruppe

  1. Öffnen Sie die CloudWatch-Konsole.
  2. Erweitern Sie im Navigationsbereich Protokolle und wählen Sie die Protokollgruppen aus.
  3. Verwenden Sie die Suchleistenfunktion der Protokollgruppen, um nach dem Namen des Lambda-Migrationstriggers zu suchen, den Sie zuvor notiert haben.

Beispiel für eine CloudWatch-Protokollgruppe:

/aws/lambda/TestingMigration

Alternativ können Sie die Lambda-Konsole auch direkt verwenden, um auf die CloudWatch-Protokollgruppen zuzugreifen.

Nutzung der Lambda-Konsole

  1. Öffnen Sie die AWS-Lambda-Konsole.
  2. Suchen Sie nach dem Lambda-Trigger, den Sie für Ihren Importauftrag erstellt haben.
  3. Wählen Sie auf der Registerkarte Monitor die Option Protokolle in CloudWatch anzeigen aus.
  4. Dadurch werden Sie automatisch zur Amazon-CloudWatch-Konsole für die CloudWatch-Protokolle des Lambda-Triggers weitergeleitet.

Finden Sie den CloudWatch-Protokollstream

  1. Wählen Sie in CloudWatch die Protokollgruppe aus, die Sie in den vorherigen Schritten für Ihren Benutzerpool gefunden haben.
  2. Wählen Sie die Registerkarte Protokollstreams und suchen Sie den Protokollstream.
  3. Wählen Sie den Protokollstream aus, um die Protokollereignisse auf den Importfehler der Lambda-Migration zu überprüfen.

Beispiel für einen CloudWatch-Protokollstream:

[Timestamp]    START RequestId: 801399c5-b60a-40b4-ae54-f7c51c29043c Version: $LATEST
[Timestamp]    [ERROR] Runtime.UserCodeSyntaxError: Syntax error in module 'lambda_function': unexpected indent (lambda_function.py, line 31) Traceback (most recent call last):   File "/var.....
[Timestamp]    END RequestId: 801399c5-b60a-40b4-ae54-f7c51c29043c

Hinweis: Basierend auf diesem Beispiel zeigt der im CloudWatch-Protokollstream gemeldete Fehler, dass im Code ein Einrückungsproblem vorliegt, das dazu führt, dass der Lambda-Trigger fehlschlägt.