Как лучше всего обернуть функции так, чтобы они обрабатывали пинг от таймера 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))
}
Если я пропингую функцию, произойдет ошибка, потому что в запросе CloudWatch нет queryStringParameters. Технически, это по-прежнему будет поддерживать функцию Lambda в тепле (что и является моей целью), но я не хочу иметь излишне длинный список ошибок.
Я заметил, что CloudWatch позволяет включать входные данные, которые (предположительно) передаются в функцию Lambda:
Какой самый разумный способ обернуть указанную выше функцию, чтобы она могла принимать пинг? В идеале это выглядело бы так:
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))
}
Где я бы передал некоторый JSON, который позволяет мне изменить событие, например:
{ "ping": true }
Я прочитал документацию по входам, но мне совсем не ясно, что означают различные типы входных данных или как их использовать ...