• Benvenuti su RaspberryItaly!
Benvenuto ospite! Login Login con Facebook Registrati Login with Facebook


Valutazione discussione:
  • 0 voto(i) - 0 media
  • 1
  • 2
  • 3
  • 4
  • 5

[-]
Tags
con ritardo crontab

[Risolto] Crontab con ritardo
#1
Salve a tutti l'esigenza che segue nasce dal fatto che la piattaforma ThingSpeaK non può ricevere due dati  a distanze temporali inferiori ai 15 secondi. Io ho dei sensori e vorrei mandare il loro rilievo su ThingSpeak ogni 10 minuti. Se inserisco tutti i comandi che servono a lanciare i file di rilievo dei sensori  ed inio, ogni 10 minuti ThingSpeak prende solo il primo dato in quanto l'invia tutti contemporaneamente.

Mi chiedevo se c'era un comando da inserire in crontab in modo da sfalsare di 30 secondi l'esecuzione dei comandi in crontab. In modo che quando parte il ciclo i file vengano eseguiti uno ogni 30 secondi.

Grazie

LaPa
With a little/big help from my friends Rolleyes
Risposta
#2
https://it.wikipedia.org/wiki/Crontab
oramai dovresti conoscerlo :-D
Risposta
#3
ma chiedo, se voglio che si avvii a trenta secondi posso scrivere in prima posizione (minuti) 0.5?
With a little/big help from my friends Rolleyes
Risposta
#4
Metti un sleep 30 all'inzio dello script da eseguire
Il mio software non ha mai bugs. Include soltanto funzionalità casuali.


Risposta
#5
(10/03/2017, 14:35)Gabb Ha scritto: Metti un sleep 30 all'inzio dello script da eseguire

sì, certo potrebbe essere questa la soluzione:

la sintassi dovrebbe essere

import time

time.sleep(secondi di ritardo)
With a little/big help from my friends Rolleyes
Risposta
#6
Esattamente.
Il mio software non ha mai bugs. Include soltanto funzionalità casuali.


Risposta
#7
ho provato:

crontab accetta anche frazioni di minuto quindi se "*/1.5 * * * * comando" il comando viene eseguito una volta ogni 90 secondi. Ma io non avrò un ciclo ogni minuto con partenza ritardata ma uno ogni 90 secondi.

Allora ho optato per la soluzione di Gabb:

Ho impostato un ritardo di tot secondi nel listato di Python.

Pertanto ora ho quattro comandi che inviano rilievi di sensori su ThingSpeak ogni 10 minuti ma il primo senza ritardo, il secondo con ritardo di 20 secondi, il terzo con ritardo di 40, il quarto con ritardo di 60. Così su ThingSpeak non arrivano mai dati più frequenti di 15 secondi.

Sembra andare bene.

Grazie

Saluti

LaPa
With a little/big help from my friends Rolleyes
Risposta
  


Vai al forum:


Navigazione: 3 Ospite(i)
Forum con nuovi Post
Forum senza nuovi post
Forum bloccato
Forum Redirect