2

Wie kann ich die Cron-Syntax schreiben, um ein Lambda zu planen, um alle zehn Minuten zu Beginn jeder Stunde zu laufen? Hier ist, was ich versucht habe, aber immer in Fehler ausgeführt wird:Serverless Cron Syntax für geplante Lambda

users-cron: 
    handler: functions/users.cron 
    events: 
    - schedule: 
     rate: rate(10 minutes) 
    - schedule: 
     rate: cron(0-10 0-23 ? * MON-SUN *) 

Antwort

2

Formular docs, gibt es ein sehr ähnliches Beispiel:

Invoke eine Lambda-Funktion alle 10 min Mo-Fr
cron(0/10 * ? * MON-FRI *)

Sie könnten versuchen:

users-cron: 
    handler: functions/users.cron 
    events: 
    - schedule: 
     rate: cron(0/10 * ? * * *) 
+0

Verstehen Sie den Unterschied zwischen dem Fragezeichen, und das Sternchen, *? Warum ersetzen Sie zum Beispiel nicht das,?, Mit einem Sternchen? Wird es sich nicht genauso verhalten? Wenn nicht, wie wird sich der geplante Job anders verhalten? – robertjewell

+0

Von der gleichen Verbindung: '* - Spezifiziert alle Werte','? - Kein angegebener Wert "und" Einer der Werte für den Wochentag oder den Wochentag muss ein Fragezeichen (?) Sein. " – Zanon

1

Dies ist die genaue Syntax, die meine Frage beantwortet:

users-cron: 
    handler: functions/users.cron 
    events: 
    - schedule: 
     rate: cron(0/10 0-23 ? * MON-SUN *) 
+0

Warum entfernen Sie den ersten Zeitplan nicht? Es scheint, dass, wenn Sie die 'Rate: Rate (10 Minuten) 'beibehalten, Ihre Funktion zweimal ausgeführt wird. Der Unterschied besteht darin, dass diese 10-minütige Ausführung gestartet wird, wenn die Funktion bereitgestellt wird und nicht zu Beginn der Stunde. – Zanon

+0

Auch die Verwendung von '0-23' oder' * 'für die Stunde und' MON-SUN' oder '*' für den Wochentag sind gleichwertige Syntax. Der Stern bedeutet 'Spezifiziert alle Werte'. – Zanon

+0

Sie haben Recht! Entschuldigung, das war ein Typ. Ich entfernte "Rate: Rate (10 Minuten)" – robertjewell

Verwandte Themen