Ich möchte den Fehler „pg module not found“ in meinen AWS Secrets Manager-Lambda-Funktionsprotokollen beheben, wenn AWS Lambda Geheimnisse nicht rotieren kann.
Kurzbeschreibung
Wenn die Lambda-Funktion automatisch von Python 3.7 auf eine neuere Version aktualisiert wird, erhältst du möglicherweise den Fehler „pg module not found“. Neuere Versionen, wie Python 3.9, unterstützen die erforderlichen Module möglicherweise nicht. Informationen zu unterstützten Modulen und Bibliotheken in allen Python-Versionen in Lambda findest du unter Unterstützte Laufzeiten.
Lösung
Die Python-Version der Lambda-Funktion überprüfen
Führe die folgenden Schritte aus:
-
Öffne die Lambda-Konsole.
-
Wähle im Navigationsbereich Funktionen und wähle dann den Namen des Lambdas aus, das nicht rotierte.
-
Wähle die Registerkarte Code.
-
Notiere dir in den Laufzeit-Einstellungen die Python-Version.
-
Wähle Aktionen, dann Exportfunktion und dann Bereitstellungspaket herunterladen.
-
Führe den folgenden Linux-Befehl find aus dem Verzeichnis der unkomprimierten .zip-Datei aus:
find ./ -name “*cpython-*-x86_64-linux-gnu.so”
-
Vergewissere dich, dass die Version der Python-Laufzeit im Namen der .so-Datei enthalten ist.
Zum Beispiel**_cffi_backend.cpython-37m-x86_64-linux-gnu.so**.
Hinweis: Wenn du Python 3.7 .so-Dateien findest, aber die Lambda-Laufzeit zeigt eine neuere Version an, dies bestätigt einen Versionskonflikt. Du musst diese Diskrepanz durch den Aktualisierungsprozess der CloudFormation-Vorlage beheben.
Aktualisieren der AWS CloudFormation-Vorlage
Gehe wie folgt vor, um den Lambda-Funktionsfehler zu beheben:
- Aktualisiere den Stack-Vorlage, mit der du die Lambda-Funktion erstellt hast.
- Füge die Laufzeit-Eigenschaft dem HostedRotationLambda-Objekt in AWS::SecretsManager::RotationSchedule HostedRotationLambda hinzu.
- Stelle den CloudFormation-Stack erneut bereit, um die Änderungen zu übernehmen.
CloudFormation ändert die Lambda-Rotationsfunktion zurück auf Python 3.7.
Hinweis: Für Python 3.7 muss der Laufzeit-Schlüsselwert python3.7 sein.
Ähnliche Informationen
Eine bestehende Rotationsfunktion von Python 3.7 auf 3.9 aktualisieren