Als ich put_function_event_invoke_config von boto3 verwendet habe,
import botocore
import boto3
client = boto3.client('lambda')
response = client.put_function_event_invoke_config(
FunctionName=FunctionName,
MaximumRetryAttempts=0,
)
Der folgende Fehler tritt auf
AttributeError: 'Lambda' object has no attribute 'put_function_event_invoke_config'
Wenn übersetzt
AttributeError: Das 'Lambda'-Objekt hat nicht das Attribut'put_function_event_invoke_config'.
Und das.
Ich habe Lambda Folgendes hinzugefügt und die Versionen von boto3 und botocore bestätigt.
print('botocore vertion is {0}'.format(botocore.__version__))
print('boto3 vertion is {0}'.format(boto3.__version__))
Das ist das Ergebnis
botocore vertion is 1.12.253
boto3 vertion is 1.14.57
Ich habe die aktuelle Version unten überprüft ... Releases · boto/boto3 · GitHub Releases · boto/botocore · GitHub
Botocore scheint mehr als ein halbes Jahr alt zu sein.
Sie können es gemäß dem folgenden Artikel aktualisieren.
[[AWS] Verwendung von Boto in Lambda und Verwendung des neuesten Boto](https://bbh.bz/2019/11/10/how-to-use-latest-ver-boto-at-lambda/#boto -3)
Im Fall von Serverless Framework kann es aktualisiert werden, indem das Plug-In "Serverless-Python-Anforderungen" eingefügt und "boto3" und "Botocore" zu "request.txt" hinzugefügt werden.
Die folgenden Artikel sind hilfreich. [Tipps] Bereitstellen von Lambda Layer mit dem neuesten Boto3, das mit Serverless Framework installiert wurde
Durch die Aktualisierung von Botocore wurde der Fehler behoben.