Si vous obtenez une erreur sans attribut dans boto3, vérifiez la version

erreur boto3

Quand j'ai utilisé put_function_event_invoke_config de boto3,

import botocore
import boto3

client = boto3.client('lambda')
response = client.put_function_event_invoke_config(
    FunctionName=FunctionName,
    MaximumRetryAttempts=0,
)

L'erreur suivante se produit

AttributeError: 'Lambda' object has no attribute 'put_function_event_invoke_config'

Une fois traduit

AttributeError: L'objet'Lambda 'n'a pas l'attribut'put_function_event_invoke_config'.

Et cela.

J'ai ajouté ce qui suit à lambda et confirmé les versions de boto3 et botocore.

    print('botocore vertion is {0}'.format(botocore.__version__))
    print('boto3 vertion is {0}'.format(boto3.__version__))

C'est le résultat

botocore vertion is 1.12.253
boto3 vertion is 1.14.57

J'ai vérifié la version actuelle ci-dessous ... Releases · boto/boto3 · GitHub Releases · boto/botocore · GitHub

botocore semble avoir plus d'un an et demi.

Mettre à jour le botocore

Vous pouvez le mettre à jour selon l'article suivant.

[[AWS] Comment utiliser boto dans Lambda et comment utiliser le dernier boto](https://bbh.bz/2019/11/10/how-to-use-latest-ver-boto-at-lambda/#boto -3)

Dans le cas de Serverless Framework, il peut être mis à jour en insérant le plug-in serverless-python-requirements et en ajoutant boto3 et botocore à requirements.txt.

Les articles suivants seront utiles. [Astuces] Déployez Lambda Layer avec le dernier boto3 installé avec Serverless Framework

Solution

En mettant à jour botocore, l'erreur a été résolue.

référence

Recommended Posts

Si vous obtenez une erreur sans attribut dans boto3, vérifiez la version
Que faire si vous obtenez une erreur "Aucune version trouvée" sur pipenv
Lors d'une erreur de programmation: (1146, "La table '<nom de la table>' n'existe pas") se produit dans Django
[Python] Choses à vérifier lorsqu'une erreur de décodage Unicode apparaît dans Django
Que faire si une erreur de version se produit dans le pilote Selenium Chrome
Vérifiez si la chaîne est un nombre en python
Si vous rencontrez une "erreur de décodage Unicode" en Python
Que faire lorsque swagger-codegen est terminé avec python et Erreur d'importation: aucun module nommé n'apparaît
Que faire si vous obtenez une erreur Impossible de récupérer le lien métallique pour le référentiel avec yum
Si vous obtenez une erreur: ce port est déjà utilisé. Dans Django
Que faire si vous obtenez moins zéro en Python
Vérifiez si vous pouvez vous connecter à un port TCP en Python
Que faire si vous obtenez une erreur de remplacement obligatoire `get_config` lorsque vous essayez de model.save avec Keras
Vérifiez si l'URL existe en Python
Si vous voulez un singleton en python, considérez le module comme un singleton
J'obtiens une erreur Python No module nommée'encodings 'avec la commande aws
Vérifier s'il y a un symbole spécifique dans le fichier exécutable et ses bibliothèques dépendantes (version simplifiée)
Que faire si vous obtenez une erreur en essayant d'envoyer un message dans tasks.loop () immédiatement après le démarrage
[Python] Récupérez les fichiers dans le dossier avec Python
Quand j'obtiens une erreur de pilote chrome dans Selenium
Une solution si vous supprimez accidentellement l'interpréteur python dans / usr / local / bin /.
Vérifiez si les caractères sont similaires en Python
Dans le tutoriel Chainer, j'obtiens une erreur lors de l'importation d'un package. (moquer)
Que faire si vous obtenez l'erreur L'entrée contient NaN, l'infini ou une valeur trop grande pour dtype ('float64').
Récupérer l'appelant d'une fonction en Python
Si vous les gars dans la cuisine de portée pouvez le faire avec une marge ~ ♪
La première chose à vérifier quand un No Reverse Match se produit dans Django
Que faire si vous obtenez l'erreur RuntimeError: Python n'est pas installé en tant que framework lorsque vous essayez d'utiliser matplitlib et pylab dans Python 3.3
Si vous obtenez une longue erreur lors de la tabulation d'un shell interactif avec Anaconda
Que faire si vous recevez une erreur d'appel avec trop d'arguments d'entrée à faire et retourner dans un test de golang
Que faire quand "Aucun noyau pour le langage python trouvé" apparaît dans Hydrogen
Que faire si vous obtenez une erreur de mémoire lors de la conversion de PySparkDataFrame en PandasDataFrame
Que faire si vous obtenez une erreur lors de l'importation de matplotlib en Python (Mac)
Comment vérifier en Python si l'un des éléments d'une liste est dans une autre liste
Que faire si vous obtenez l'erreur ʻERR_FEATURE_UNAVAILABLE_ON_PLATFORM` lors de l'utilisation de ts-node-dev sous Linux
Obtenir le nom de fichier dans un dossier à l'aide de glob
Vérifiez si la colonne attendue existe dans Pandas DataFrame
S'il n'y avait pas de conteneurs DI dans le monde.
Vérifiez s'il s'agit d'Unix dans le langage de script
Déterminer si un attribut est défini dans l'objet
Vérifiez s'il s'agit d'Unix dans le langage de script
[Python] Si vous créez un fichier avec le même nom que le module à importer, une erreur d'attribut se produira.
Que faire si vous obtenez une erreur lors de l'exécution de "certbot renouveler" dans l'environnement CakePHP
[python] Comment vérifier si la clé existe dans le dictionnaire
Pourquoi l'instruction main () -if de Python est-elle attachée?
Obtenez et créez des nœuds ajoutés et mis à jour dans la nouvelle version
Obtenez le nombre d'éléments spécifiques dans la liste python
Que faire si une erreur 0xC0000005 se produit dans tf.train.start_queue_runners ()
Que faire si vous obtenez `locale.Error: unsupported locale setting` lors de l'obtention de la date du jour en Python
Comment vérifier si une valeur existe dans un type d'énumération
Comment obtenir la dernière (dernière) valeur d'une liste en Python
Que faire si vous vous fâchez contre les `` déclarations '' doivent être une liste 2D ... dans la flèche matplotlib
J'ai créé une fonction pour vérifier si le webhook est reçu dans Lambda pour le moment
Si vous êtes novice en programmation, pourquoi ne pas créer un "jeu" pour le moment? L'histoire
Notez que lorsque le système d'exploitation hôte est Linux et que la version du noyau est mise à niveau, une erreur se produit lors du lancement de l'environnement virtuel de VirtualBox.
Vérification de la version de python de résolution d'erreur
J'obtiens des erreurs "contrôle de cohérence" et "Aucun module" lors de l'importation numpy
[Blender] Script pour vérifier si celui sélectionné est un mesh
Si vous êtes bloqué dans Impossible de charger mkl_intel_thread.dll en Python sous Windows