Quelle est la meilleure façon d'enrouler des fonctions d'une manière qui gère un ping à partir d'une minuterie CloudWatch? Par exemple, prendre la fonction lambda ci-dessous:Comment passer des valeurs à une fonction Lambda dans CloudWatch?
export const fn = (event, context, callback) => {
const { year, make, model, } = event.queryStringParameters
return otherFn({ year, make, model, })
.then(res => response(callback, res))
.catch(err => console.log(err))
}
Si je ping la fonction, il erreur car il n'y a pas queryStringParameters sur la demande de CloudWatch. Techniquement, cela fera toujours le travail de garder la fonction Lambda au chaud (ce qui est mon objectif), mais je ne veux pas avoir une liste inutile d'erreurs.
je remarquai que CloudWatch vous permet d'inclure des entrées (vraisemblablement) sont passés à une fonction Lambda:
Quelle est la façon la plus intelligente pour envelopper la fonction ci-dessus pour qu'il puisse accepter un ping? Idéalement, il ressemblerait à ceci:
export const fn = (event, context, callback) => {
if (event.ping) return ping(callback) // the ping function is an import to stay DRY
const { year, make, model, } = event.queryStringParameters
return otherFn({ year, make, model, })
.then(res => response(callback, res))
.catch(err => console.log(err))
}
Là où je passerais une JSON qui me permet de modifier l'événement, comme:
{ "ping": true }
Je l'ai lu dans la documentation pour les entrées, mais il est pas du tout clair pour moi ce que les différents types d'entrée signifient ou comment les utiliser ...
Ceci est en fait une réponse à la question. Les modérateurs peuvent-ils le marquer? –