2016-09-27 10 views
1

Versuchen, einen Cron-Job auf meinem Skygear Python Cloud-Code festlegen, aber nicht sicher, was ich in den Dekorateur eingeben soll. Ich weiß nur, dass es für Einheiten in Sekunden funktioniert, aber wie man einen Job plant, um alle 12 Stunden zu laufen? Es ist schwierig, jedes Mal die Sekunden zu berechnen.Wie wird ein Cron-Job auf SkyGear festgelegt, der alle 12 Stunden ausgeführt wird?

Mein Code so ist, ist die Funktion einer POST-Anforderung rufen:

@skygear.every('@every 43200s') 
def post_req(): 
    print ('scheduled to run every 12 hours') 
    url = myurl 
    ref = something 
    r = requests.post(myurl, data = {'token':some_token, 'ref':something}) 

Es funktioniert tatsächlich aber gibt es einige Möglichkeiten, in einem besseren Format zu schreiben?

Antwort

2

Es scheint wie skygear.every auch accepts crontab notation ... so 0 */12 * * * könnte auch den Trick tun.

Edit: Lesen des robfig/cron docs, die beste Lösung wäre eigentlich nur @every 12h

+0

Dank sein! Scheint so, als würde das funktionieren. – joyz

+2

Unter dem Haken verwendet skygear https://github.com/robfig/cron, um die Crontab-Notation zu analysieren. –

Verwandte Themen