× Benvenuti sul nostro forum su Sint Wind PI!

Postate qui domande o segnalate problemi / bug che riscontrate,

file Watchdog

More
10 years 4 months ago #2312 by alegrechi
Watchdog was created by alegrechi
Oggi (dopo un blocco) pensavo se esistesse un modo per fare il reboot automatico al raspberry in caso il sistema si blocchi.
Ho trovato una soluzione molto interessante che non conoscevo: il watchdog
E' un counter che viene implementato a livello hardware del SoC (quindi indipendente dal SO) che provvede a forzare il reboot del sistema dopo un intervallo di tempo, a meno che non riceva un segnale (feed) dall'applicazione.

In questo modo se il SO si blocca non invia più il feed al counter e dopo qualche secondo parte il reboot. :)

Mi sembra una bella soluzione da testare per aumentare l'affidabilità in caso di problemi... che ne dite?

Un po' di fonti:
binerry.de/post/28263824530/raspberry-pi-watchdog-timer
raspberrypi.werquin.com/post/44890705367...-deamon-running-with
pi.gadgetoid.com/article/who-watches-the-watcher

Please Log in to join the conversation.

More
10 years 4 months ago #2313 by meteosismi
Replied by meteosismi on topic Watchdog
Penso che sia una buona cosa, perchè anche a me si blocca ogni tanto, così a caso, e non riesco a capire il problema, ho fatto delle cose che mi hanno consigliato ma non vedo il problema, ovvero penso sia quando acquisisce dalla webcam, ma appunto quando si freeza non c'è modo di accedervi se non reboottarlo ..
Non ne capisco molto di comandi linux ma penso che questo watchdog possa risolvere i problemi, d'altronde su sistemi complessi questa opzione è attiva per garantire il continuo funzionamento.
Antonio.

Please Log in to join the conversation.

More
10 years 4 months ago #2314 by tony
Replied by tony on topic Watchdog
Monto interessante Ale .. non conoscevo l'esistenza di questo watchdog hardware della Raspberry PI.
Sint Wind PI ha un suo watchdog software ( class WatchDog in service.py ) ma ovviamente non può fare molto per blocchi del SO ; serve solo per i casi di eventuali blocchi di Sint Wind PI .

Sono ancora un pò impegnato con Open Meteo Data che vorrei terminare e metterò in coda l'uso del watchdog hardware della Raspberry PI.
Nel frattempo se qualcuno vuole implementarlo come pluging credo non siano più di 4 istruzioni molto simili a quelle del watchdog software ..... :-)

Please Log in to join the conversation.

More
10 years 4 months ago #2315 by roberto2011
Replied by roberto2011 on topic Watchdog
mooolto interessante! :)

Ciao Antonio avevi provato a fare un crontab con il reboot, per capire se era swpi che si bloccava o il raspberry???

Sensori Davis +BME280 + Raspberry b+ webCam serrasanta.fleanet.it (Eremo di Serrasanta - Gualdo Tadino - 1.340 m s.l.m.)

Please Log in to join the conversation.

More
10 years 4 months ago #2316 by tony
Replied by tony on topic Watchdog
Il problema di Antonio è strano e forse dovuto a qualche problema hardware ( scheda Rasberry , alimentazione , scheda SD ) Hai provato a cambiare scheda SD ?
Delle mie 4 schede attive 24/24 l'unico problema l'ho avuto sulla stazione di Sigillo nella quale ho dovuto sostituire la scheda SD circa un mese fa perché mal funzionante.

Please Log in to join the conversation.

More
10 years 4 months ago #2317 by roberto2011
Replied by roberto2011 on topic Watchdog
Tony non è meglio un daemon esterno a swpi.

Sensori Davis +BME280 + Raspberry b+ webCam serrasanta.fleanet.it (Eremo di Serrasanta - Gualdo Tadino - 1.340 m s.l.m.)

Please Log in to join the conversation.

More
10 years 4 months ago - 10 years 4 months ago #2318 by tony
Replied by tony on topic Watchdog
Non ho ancora approfondito il link di Ale ma a prima vista sembrerebbe anche meglio di un daemon. ... o forse intendevi un daemon per resettare il WatchDog hardware ???

Forse si ma complica un pò l'installazione. Se lo integro in swpi basterebbe per molti fare un semplice aggiornamento .. per ora approfondiamo il funzionamento poi vediamo
Last edit: 10 years 4 months ago by tony.

Please Log in to join the conversation.

More
10 years 4 months ago - 10 years 4 months ago #2319 by meteosismi
Replied by meteosismi on topic Watchdog
Roberto si blocca la webcam e rimane il led acceso, però di conseguenza il raspberry non è più raggiungibile. Adesso ho messo fswebcam e vedere cosa succede. Come alimentazione ho un alimentatore switching da 2.1 ampere e non posso misurare la tensione sui due TP perchè il raspberry è nel contenitore e difficilmente raggiungibile. Comunque sto approntando una stazioncina organizzata e con alimentazioni da 12 a 5 v con i moduli Pololu e vediamo un pò.
Antonio.

E' probabile sia anche la sd, ma non credo perchè nonostante poi spengo brutalmente levando l'alimentazione dopo parte senza errori ... adesso c'è una SD Kingston 4 gb class 4.
Last edit: 10 years 4 months ago by meteosismi.

Please Log in to join the conversation.

More
10 years 4 months ago #2320 by alegrechi
Replied by alegrechi on topic Watchdog
Con il watchdog software o un cron, se tutto il sistema si blocca (non solo swpi), non riesci a fare il reboot. (l'unica alternativa è un stacca/attacca alimentazione)

quello hardware dovrebbe incrementare un counter proprio dentro la CPU, per cui è indipendente da software dovrebbe riuscire comunque a riavviare… insomma è da provare! :)

Please Log in to join the conversation.

More
10 years 4 months ago #2321 by meteosismi
Replied by meteosismi on topic Watchdog
Bene, allora rimaniamo in trepida attesa per l'inserimento del watchdog, naturalmente rispettando i tempi di Tony, non è una questione di vita o di morte.
Grazie, Antonio.

Please Log in to join the conversation.

More
10 years 4 months ago #2324 by roberto2011
Replied by roberto2011 on topic Watchdog
Con demone esterno ecco come fare !
sudo modprobe bcm2708_wdog
echo "bcm2708_wdog" | sudo tee -a /etc/modules
sudo apt-get install watchdog
sudo update-rc.d watchdog defaults

sudo nano /etc/watchdog.conf
togliere il commento a 
#watchdog-device
#max-load-1 = 24

sudo /etc/init.d/watchdog start

Sensori Davis +BME280 + Raspberry b+ webCam serrasanta.fleanet.it (Eremo di Serrasanta - Gualdo Tadino - 1.340 m s.l.m.)
The following user(s) said Thank You: tony, alegrechi

Please Log in to join the conversation.

More
10 years 4 months ago #2325 by alegrechi
Replied by alegrechi on topic Watchdog
Ottimo roberto…. dunque il watchdog che installi è proprio il demone che provvede a "nutrire il cane"? 24 sono i secondi dopo il quale parte il reboot?

Please Log in to join the conversation.

More
10 years 4 months ago #2327 by roberto2011
Replied by roberto2011 on topic Watchdog
Reset your Pi if the load average exceeds 24 in any 1-minute span.!

Sensori Davis +BME280 + Raspberry b+ webCam serrasanta.fleanet.it (Eremo di Serrasanta - Gualdo Tadino - 1.340 m s.l.m.)

Please Log in to join the conversation.

More
10 years 4 months ago #2329 by alegrechi
Replied by alegrechi on topic Watchdog

roberto2011 wrote: Reset your Pi if the load average exceeds 24 in any 1-minute span.!

Mi torna poco… che vuol dire in questo load average? A quanto ho capito, non dovrebbe essere semplicemente un counter che decrementa in automatico a meno che non riceva in "input" qualcosa?

Please Log in to join the conversation.

More
10 years 4 months ago - 10 years 4 months ago #2335 by alegrechi
Replied by alegrechi on topic Watchdog
Ok l'ho installato anche io seguendo le istruzioni di roberto (che poi sono simili a quelle di questa guida ).
L'heart beat di default è 10 secondi.

Ho notato che il file di config ha tante opzioni interessanti che è possibile attivare, tra cui il test del ping, la temperatura cpu massima, ecc
#ping                   = 172.31.14.1
#ping                   = 172.26.1.255
#interface              = eth0
#file                   = /var/log/messages
#change                 = 1407

# Uncomment to enable test. Setting one of these values to '0' disables it.
# These values will hopefully never reboot your machine during normal use
# (if your machine is really hung, the loadavg will go much higher than 25)
max-load-1              = 24
#max-load-5             = 18
#max-load-15            = 12

# Note that this is the number of pages!
# To get the real size, check how large the pagesize is on your machine.
#min-memory             = 1

#repair-binary          = /usr/sbin/repair
#repair-timeout         =
#test-binary            =
#test-timeout           =

watchdog-device = /dev/watchdog

# Defaults compiled into the binary
#temperature-device     =
#max-temperature        = 120

# Defaults compiled into the binary
#admin                  = root
#interval               = 1
#logtick                = 1
#log-dir                = /var/log/watchdog

# This greatly decreases the chance that watchdog won't be scheduled before
# your machine is really loaded
realtime                = yes
priority                = 1

# Check if syslogd is still running by enabling the following line
#pidfile                = /var/run/syslogd.pid
Vediamo come si comporta :)
Last edit: 10 years 4 months ago by alegrechi.

Please Log in to join the conversation.

More
10 years 4 months ago #2336 by ulisse
Replied by ulisse on topic Watchdog
Mi sembra molto bello!
A me è successo che a volte si bloccasse il swpi per una chiamata non correttamente terminata (ogni tot minuti nel log c'era un messaggio tipo "waiting for hangup"), l'unico modo di far ripartire la baracca era proprio un hard reset.
Sarebbe possibile eventualmente subordinare l'invio dell'hartbeat non solo ad un blocco del sistema ma anche al reiterarsi di errori tipo quello nel sistema attivo?

Please Log in to join the conversation.

More
10 years 4 months ago #2339 by tony
Replied by tony on topic Watchdog
Si .. sicuramente si tratta di una soluzione in certi casi.
Comunque cercate di capire dove stanno i vostri problemi in quanto i secondi che scorrono qui a sinistra da Febbraio ininterrottamente dimostrano la stabilita della Raspberry e del software.

Please Log in to join the conversation.

More
10 years 4 months ago #2342 by ulisse
Replied by ulisse on topic Watchdog
Credo che il mio problema più grosso fosse quello del firmware farlocco della chiavetta telefonica, a parte le difficoltà iniziali dovute alle mie scarse doti di saldatore... :P

Please Log in to join the conversation.

  • Centauri
  • Centauri's Avatar
  • Visitor
  • Visitor
10 years 4 months ago #2347 by Centauri
Replied by Centauri on topic Watchdog
Molto, molto interessante, credo che lo implementerò.
Sono d'accordo con Tony sul fatto che non sia una soluzione, ma un work around, ma dal momento che le indagini le ho svolte tutte, male non fa e poi se viene concepito un reboot all'interno di swpi come configurazione, se ci mettiamo un cane da guardia esterno male non fa, anche per prevenire blocchi derivanti da altri servizi.

Ribadisco ottima segnalazione B)

Please Log in to join the conversation.

  • Centauri
  • Centauri's Avatar
  • Visitor
  • Visitor
10 years 4 months ago - 10 years 4 months ago #2447 by Centauri
Replied by Centauri on topic Watchdog
Eccomi qua, visto che non trovo soluzione per l' addormentamento apparente di SintWind, solo in certe condizioni e assolutamente casuali, alle volte si blocca dopo solo 18 ore, alle volte fa quattro giorni, Ho deciso di testare il sistema del watchdog; in prova per tutto oggi e pare andare.
Una volta lanciato il demone se si blocca il SintWind con il comando killswpi.sh, dopo il tempo prefissato il sistema rebotta. :)

Spiegazioni brevi:
il demone controlla che il file swpi.cfg che viene aggiornato ogni 10 minuti effettivamente sia aggiornato se così non fosse dopo 15 minuti effettua il reboot del RaspBerry

--== Vado con le spiegazioni lunghe :huh: ==--

Procedura per abilitare WatchDog hardware su RaspBerry
Seguire questi semplici passi una volta connessi con SSH sul proprio PI

scaricare pacchetto watchdog:
sudo apt-get install watchdog

attendere scaricamento pacchetti in seguito digitare:
sudo update-rc.d watchdog defaults

editare il file di configurazione:
sudo nano /etc/watchdog.conf

inserire sotto a queste righe:
#file = /var/log/messages
#change = 1407
#
file = /home/pi/swpi/swpi.cfg
change = 920


aggiungete anche:
# email if empty not send email to root address
admin =


al termine CTRL X rispondere Si al salvataggio del file di configurazione.


in caso di necessità il servizio si abilita / disabilita con questi comandi:
sudo /etc/init.d/watchdog start
oppure
sudo /etc/init.d/watchdog stop
per vederne lo status
sudo /etc/init.d/watchdog status


--== FINE DELLE SPIEGAZIONI ==--

Ho messo come indirizzo admin = (niente) altrimenti WatchDog cerca di inviare una email al utente root anche se non è configurato, quindi risulta necessario scaricare sendmail o altri programmi per l'invio della posta. (se volete farlo seguite il link in fondo a questo messaggio.

Il percorso del file è relativo al file di configurazione di swpi e 920 sono i secondi tra un ciclo e l'altro di controllo.
Il demone Watchdog esegue un controllo sul file swpi.cfg e se non è cambiato dopo 15 minuti (920 sec.) esegue un reboot del sistema.
Inizialmente avevo inserito la creazione e modifica di un file dentro a swpi.py verso la fine vicino al watchdog software poi mi sono accorto che swpi.cfg cambia dopo essere stato riletto per cui non ho creato complicazioni nel codice di Tony e ho semplicemente verificato l'aggiornamento del file in questione in un periodo di tempo superiore al ciclo di aggiornamento dei dati di SintWind.

Se volete provarlo e verificare se funziona o avete suggerimenti per migliorare questo semplice controllo, fate un fischio.

Ho preso spunto da qui:
www.domoticz.com/wiki/Setting_up_the_raspberry_pi_watchdog

Informazioni dettagliate su watchdog qui:
linux.die.net/man/8/watchdog

e sul file di configurazione:
linux.die.net/man/5/watchdog.conf

questo sul tipo di controllo "stat" che viene eseguito:
linux.die.net/man/2/stat
Last edit: 10 years 4 months ago by Centauri.

Please Log in to join the conversation.

More
10 years 4 months ago - 10 years 4 months ago #2448 by alegrechi
Replied by alegrechi on topic Watchdog
Ottima soluzione Centauri, non avevo pensato a leggere il cambiamento dello swpi.cfg.

Potrei adattare il sistema anche al mio caso. Ho infatti una installazione con rfm01 difficoltoso, a cui ho deciso di fare un reboot di swpi ogni ora (non di tutto il raspberry, ma killo e riavvio solo swpi.py) con un cron.
Immagino che potrei controllare l'aggiornamento di meteo.txt o wh1080rf.txt con il watchdog e rebootare solo se necessario.

Mi viene inoltre in mente che potremmo usare un "soft" reboot (solo di swpi) in caso di blocco di questo, e di un "hard" reboot in caso di blocco di sistema.
Last edit: 10 years 4 months ago by alegrechi.

Please Log in to join the conversation.

  • Centauri
  • Centauri's Avatar
  • Visitor
  • Visitor
10 years 4 months ago - 10 years 4 months ago #2450 by Centauri
Replied by Centauri on topic Watchdog
Ciao Alegrechi, l'idea del soft reboot è buona, avevo visto che si poteva implementare, ma all'inizio e per testare il sistema non ho messo troppe variabili per complicarmi la vita.
Tra l'altro sarebbe comodo anche una email per sapere se e quando interviene il watchdog, ma non volevo installare le librerie per il sendmail. Inoltre visto che comunque ad ogni riavvio mi arriva l'email con il cambio IP è ovvio che se si è riavviato fuori orario qualcosa è andato storto. B)

Nel mio caso come nel tuo il RaspBerry non si pianta ed è sempre raggiungibile quindi un kill solo del servizio che non gira dovrebbe essere sufficiente.

L'idea del file swpi.cfg mi è venuta casualmente, come detto avevo inserito un paio di righe dentro al codice di Tony per creare un file ad hoc e mentre controllavo il cambiamento del file mi sono accorto che cambiava anche swpi.cfg

Quindi ho scelto la strada meno complicata. Si può controllare anche il meteo.txt, ma il percorso potrebbe variare da installazione ad insitallazione e volevo fare una cosa semplice e per tutti.
A mio avviso dal momento che dentro al codice viene eseguito un chmod +x ciclicamente sui files necessari al funzionamento di Swpi, credo che sia ininfluente su quale files dei suddetti viene eseguito il controllo.

Se invece è relativo alla creazione o aggiornamento di un specifico sensore allora può avere una logica.

Tutta questa complicazione nasce dal fatto che un semplice controllo del pid da parte del demone watchdog non è implementabile nel mio caso, perchè il pid risulta attivo anche quando sintwind dorme.

Se fai delle prove tienimi aggiornato, io farò altrettanto. ;)
Last edit: 10 years 4 months ago by Centauri.

Please Log in to join the conversation.

  • Centauri
  • Centauri's Avatar
  • Visitor
  • Visitor
10 years 3 months ago - 10 years 3 months ago #2466 by Centauri
Replied by Centauri on topic Watchdog
Eccomi qua. dopo un paio di giorni finalmente il primo intervento del watchdog hardware del RaspBerry. Il software si era piantato nel solito punto e dopo qualche minuto, visto che il file swpi.cfg non cambiava grazie al chmod di sint.py è stato riavviato


Non ho eliminato il problema, ma almeno adesso non ci penso più :P :)
Last edit: 10 years 3 months ago by Centauri.

Please Log in to join the conversation.

More
10 years 3 months ago #2471 by tony
Replied by tony on topic Watchdog
Bene .. d'altronde l'informatica è un continuo workaround :-)

Please Log in to join the conversation.

More
10 years 3 months ago #2596 by mastru
Replied by mastru on topic Watchdog

tony wrote: Bene .. d'altronde l'informatica è un continuo workaround :-)


:-)

Volevo solo segnalare che riscontravo alcuni blocchi inspiegati del Raspy, fino al blocco a ripetizione ad ogni reboot. Mi sono deciso e ho sostituito la SD con una Sandisk Classe 10. Ho aggiornato il firmware ed effettuato l'update, ho reinstallato il watchdog e poi provando ad aggiornare SWPI venivo "dirottato" sulla index della procedura di configurazione Web.
Allora ho reinstallato ancora il tutto scoprendo che l'ordine corretto degli aggiornamenti deve partire sempre da SWPI e poi tutto il resto (apt-get update, apt-get upgrade, rpi-update).
Alla fine non ho installato alcun watchdog ed ora Raspy è attivo da una settimana senza alcun problema. Inoltre, mi sembra che sia diventato molto più rapido.

Se può essere utile...

Per finire, ancora complimenti a Tony e tutti i numerosi partecipanti a questo Forum che con il loro contributo stanno facendo crescere Sint Wind PI.

Please Log in to join the conversation.

More
10 years 3 months ago #2597 by oss
Replied by oss on topic Watchdog
ciao, io oggi ho reinstallato tutto e ho fatto l'aggiornamento del firmware.
ma non ho ancora dato il comando sudo upgrade...
ho paura a farlo!!!!!

Please Log in to join the conversation.

More
10 years 3 months ago #2601 by oss
Replied by oss on topic Watchdog
non capisco come mai dopo aver lanciato l'update e upgrade
mi ha cambiato firmware tornando a quello vecchio!!!
poi riprovando il rpi..nulla diceva che era aggiornato..

allora ho dato
sudo rpi-update 3626277a5915a7cfeb90d536355227570c6f8c17
e cosi sembra averlo fatto
Linux swpi 3.10.19+ #600 PREEMPT Sat Nov 16 20:34:43 GMT 2013 armv6l GNU/Linux

Please Log in to join the conversation.

  • Centauri
  • Centauri's Avatar
  • Visitor
  • Visitor
10 years 3 months ago #2794 by Centauri
Replied by Centauri on topic Watchdog
Oramai posso dire che dopo aver installato il watchdog il sistema funziona a meraviglia e udite udite; credo che non si sia mai più addormentato!
I reboot avvengono solo all'ora predefinita e via software da SintWInd.

Please Log in to join the conversation.

More
10 years 2 months ago #3112 by pierpis
Replied by pierpis on topic Watchdog
Ciao, sono rientrato dalle vacanze e mi son trovato inchiodato il Rasp, ovviamente ho anche potuto appurarlo in periodo vacanziero, ma non ho potuto far nulla.
Mi son deciso quindi di procedere la tua strada seguendo le vostre indicazioni, capisco poco di informatica e parto dall'inizio.... dove posso scaricare il pacchetto watchdog adatto al raspberry?
Questa è la prima richiesta :( penso che se siete disponibili ne seguiranno altre :(
Grazie

Sensori PCE-FWS20, DVB-T 820T2 SDR, BMP085, Raspberry Pi mod. B www.meteoportocervo.it (Abbiadori Porto Cervo - Arzachena - OT) 108 m s.l.m.)

Please Log in to join the conversation.

More
10 years 2 months ago #3113 by tony
Replied by tony on topic Watchdog
Sulla wiki c'è un tentativo di riepilogo ( www.vololiberomontecucco.it/mediawiki/in...le=Watchdog_hardware )
Segui poi i relativi link per approfondire.

Please Log in to join the conversation.

Time to create page: 1.112 seconds