Учитывая aws-лямбду, как я могу изменить правило облачного наблюдения, связанное с ним, используя boto3? - PullRequest
0 голосов
/ 12 февраля 2019

Я видел документы , но не могу найти, как изменить запланированное событие.Вот пример на serverless.yml:

schedule_customer_processing:
    handler: fetch-downloadable-client-data/adyen/schedule_customer_processing.schedule
    events:
     - schedule: rate(15 minutes)

Используя boto3, как я могу программно изменить скорость расписания?

1 Ответ

0 голосов
/ 12 февраля 2019

Взятый из этого примера в моем блоге

REGULAR_SCHEDULE = 'rate(20 minutes)'
WEEKEND_SHEDULE = 'rate(1 hour)'
RULE_NAME = 'My Rule'

def reschedule_event():
    """
    Cambia la planificación de la lambda, para que descanse los findes :D
    """
    sched = boto3.client('events')
    current = sched.describe_rule(Name=RULE_NAME)
    if is_weekend() and 'minutes' in current['ScheduleExpression']:
        sched.put_rule(
            Name=RULE_NAME,
            ScheduleExpression=WEEKEND_SCHEDULE,
        )
    if not is_weekend and 'hour' in current['ScheduleExpression']:
        sched.put_rule(
            Name=RULE_NAME,
            ScheduleExpression=REGULAR_SCHEDULE,
        )

Вызов shed.put_rule позволит вам изменить расписание событий.

...