Explication de Lambda pour les débutants en Python.
Une fonction au sein de la fonction Lambda que Lambda importe.
python:code(Exemple):
def lambda_handler(event, context):
Lambda utilise le paramètre d'événement pour transmettre les données d'événement au gestionnaire.
Ce paramètre est généralement un type de dictionnaire Python.
json:Données d'événement lorsque la source d'événement est CloudWatch Events(échantillon):
{
"account": "123456789012",
"region": "ap-northeast-1",
"detail": {},
"detail-type": "Scheduled Event",
"source": "aws.events",
"time": "1970-01-01T00:00:00Z",
"id": "cdc73f9d-aea9-11e3-9d5a-835b769c0d9c",
"resources": [
"arn:aws:events:ap-northeast-1:123456789012:rule/my-schedule"
]
}
Vous pouvez également utiliser les types list, str, int, float et NoneType.
Utilisez le paramètre context pour accéder aux informations d'exécution stockées dans l'objet Context de Lambda.
Ce paramètre est de type Contexte Lambda.
https://docs.aws.amazon.com/ja_jp/lambda/latest/dg/python-context-object.html
Lors de l'exécution de la fonction Lambda, l'objet Context peut obtenir les informations d'exécution suivantes:
Temps restant pour terminer la fonction Lambda
Le délai d'expiration peut être modifié en définissant la fonction Lambda
Groupe de journaux CloudWatch et flux de journaux associés à la fonction Lambda en cours d'exécution.
ID de demande AWS renvoyé au client qui a importé la fonction Lambda.
Disponible pour les demandes auprès d'AWS Support.
Si la fonction Lambda est appelée via le Mobile SDK, vous pouvez en savoir plus sur l'application mobile qui importe la fonction Lambda.
Le cas échéant, le gestionnaire peut renvoyer une valeur.
Le résultat sera renvoyé au client importateur.
Exemple de valeur de retour
return event['time']
Lambda ne renvoie rien.
fonction d'impression (sortie standard)
Écrivez des journaux dans CloudWatch Logs.
Exemple de code
print('Check complete at {}'.format(str(datetime.now())))
journalisation. * Fonction
Écrivez des journaux dans CloudWatch Logs.
Écrivez des informations supplémentaires telles que les horodatages et les niveaux de journal pour chaque entrée de journal.
Lorsqu'une exception se produit dans la fonction Lambda, Lambda reconnaît l'erreur, sérialise et renvoie les informations d'exception à JSON.
https://docs.aws.amazon.com/ja_jp/lambda/latest/dg/python-exceptions.html
python:Exemple de code:
def always_failed_handler(event, context):
raise Exception('I failed!')
json:Exemple de message d'erreur:
{
"errorMessage": "I failed!",
"stackTrace": [
[
"/var/task/lambda_function.py",
3,
"my_always_fails_handler",
"raise Exception('I failed!')"
]
],
"errorType": "Exception"
}