#1 automan73 Ven 19 Giu, 2020 08:33
Buongiorno a tutti,
sono approdato a questo forum googlando alla ricerca di informazioni riguardo un problema al database di weewx che ho avuto ieri sera.
Da qualche anno ho una Davis VP2 Plus con datalogger USB collegato ad un raspberry su cui è installato weewx con skin sofaskin con cui invio i dati sul mio dominio web.
Ieri sera stavo facendo alcune variazioni sul sistema operativo (lingua e timezone tramite raspi-config) e purtroppo per qualche motivo si sono corrotti alcuni dati ed in tutti i grafici generati da weewx appariva un buco visibile nella prima immagine.
Allora ho ripristinato una immagine della memoria microSD stabile e funzionante dell'anno scorso, ho stoppato il loop di weewx ed ho sostituito il file weewx.sdb con l'ultimo archiviato in automatico la notte a mezzanotte del giorno prima: ma poi quando faccio ripartire il loop di weewx, questo giustamente aggiunge i dati mancanti più recenti prelevandoli dal logger e durante questa operazione ad un certo punto compaiono gli errori visibili nella seconda immagine ed permane il buco in tutti i grafici come nella prima immagine.
Guardando la seconda immagine la cosa strana è che:
1) l'ultimo dei dati "buoni" ed il primo dopo i dati "corrotti" a guardare il numero di indice e data/ora sembrano conseguenti.
2) guardando l'indice e la data/ora dei dati "errati", noto che dati con lo stesso indice, la stessa data/ora e la stessa timezone sono stati scaricati correttamente parecchie righe prima (nell'immagine allegata non si vedono).
Sembra quasi che nel datalogger siano presenti dei dati "doppione".
Potete darmi qualche suggerimento per risolvere il problema?
Mi scuso per la lunghezza del post e grazie per l'aiuto che vorrete darmi.
Descrizione: |
|
Dimensione: |
26.22 KB |
Visualizzato: |
File visto o scaricato 74 volta(e) |

|
Descrizione: |
|
Dimensione: |
438.28 KB |
Visualizzato: |
File visto o scaricato 93 volta(e) |

|
Ultima modifica di automan73 il Ven 19 Giu, 2020 08:43, modificato 3 volte in totale
-
-
Nuovo Utente
-
- Utente #: 3024
- Registrato: 19 Giu 2020
- Età: 51
- Messaggi: 5
-
27 Punti
- Preferenza Meteo: Indifferente
- Stazione Meteo: Davis Vantage Pro2
- Località: Prov. di AP
-
#2 andrea75 Ven 19 Giu, 2020 09:23
Ciao, intanto bevenutto.
Non so se ho capito bene tutto, e soprattutto il problema... ma hai provato a cancellare dal db tutti i dati recenti (appena fino all'ultimo prima del buco) e poi a provare a scaricarli di nuovo dal datalogger?
Ricordati che prima di riavviare weewx, e prima di scaricare i dati dal datalogger, c'è un comando da lanciare (ora sono da telefono e non ce l'ho sottomano) per rigenerare correttamente gli indici e le date del database. Ma se guardi sulla documentazione di Weewx, dove si fa riferimento alla cancellazione manuale di dati errati trovi tutto.
Se non funziona nemmeno così potrebbe essere il database corrotto, e in quel caso son rogne. Mi è capitato una volta qualche anno fa, e onestamente, nonostante mille tentativi e tanti tool provati, non sono riuscito a ripristinarlo correttamente.
____________ Facebook: lineameteo - Twitter: @lineameteo
Stazione meteo di San Mariano (PG)
Dati meteo in tempo reale
http://sanmariano.lineameteo.it
-
-
Presidente
-
- Utente #: 2
- Registrato: 31 Mar 2005
- Età: 49
- Messaggi: 45082
-
3593 Punti
- Preferenza Meteo: Freddofilo
- Stazione Meteo: LaCrosse WS2300
- Località: San Mariano (PG) - 290 mt.
-
#3 automan73 Ven 19 Giu, 2020 10:04
Ciao, no, non ho provato a cancellare dal db tutti i dati recenti (appena fino all'ultimo prima del buco) e poi a provare a scaricarli di nuovo dal datalogger.
Devo usare un tool tipo db browser per provare a fare questa operazione?
È una cosa che non ho mai fatto finora ma se non è troppo complicato posso tentare.
Riguardo la rigenerazione degli indici del database, se quando hai tempo mi puoi dare qualche informazione in più te ne sarei grato, anche se sono sicuro che il database archiviato alle 00:00 del giorno precedente che ho utilizzato è integro.
Sono autodidatta in questo campo e non vorrei fare stupidate.
-
-
Nuovo Utente
-
- Utente #: 3024
- Registrato: 19 Giu 2020
- Età: 51
- Messaggi: 5
-
27 Punti
- Preferenza Meteo: Indifferente
- Stazione Meteo: Davis Vantage Pro2
- Località: Prov. di AP
-
#4 andrea75 Ven 19 Giu, 2020 17:20
Ciao, no, non ho provato a cancellare dal db tutti i dati recenti (appena fino all'ultimo prima del buco) e poi a provare a scaricarli di nuovo dal datalogger.
Devo usare un tool tipo db browser per provare a fare questa operazione?
È una cosa che non ho mai fatto finora ma se non è troppo complicato posso tentare.
Riguardo la rigenerazione degli indici del database, se quando hai tempo mi puoi dare qualche informazione in più te ne sarei grato, anche se sono sicuro che il database archiviato alle 00:00 del giorno precedente che ho utilizzato è integro.
Sono autodidatta in questo campo e non vorrei fare stupidate.
Ci sono dei tool specifici per accedere al database, come ad esempio SQLite:
https://sqlitebrowser.org/
Oppure puoi farlo da linea di comando utilizzando come chiave di ricerca la data (format UNIX, ATTENZIONE):
https://github.com/weewx/weewx/wiki/Cleaning-up-old-'bad'-data
____________ Facebook: lineameteo - Twitter: @lineameteo
Stazione meteo di San Mariano (PG)
Dati meteo in tempo reale
http://sanmariano.lineameteo.it
-
-
Presidente
-
- Utente #: 2
- Registrato: 31 Mar 2005
- Età: 49
- Messaggi: 45082
-
3593 Punti
- Preferenza Meteo: Freddofilo
- Stazione Meteo: LaCrosse WS2300
- Località: San Mariano (PG) - 290 mt.
-
#5 automan73 Ven 19 Giu, 2020 18:41
Volendo utilizzare il tool SQLite su win, faccio una copia di backup del file weewx.sdb sul raspy, copio su una chiavetta usb l'archivio weewx.sdb dal raspy, poi sul pc apro SQlite, seleziono il file del database dalla chiavetta usb, seleziono la slide browse data, ordino l'elenco a partire dal più recente in alto, seleziono le righe che voglio selezionare e le cancello con il tasto canc, poi seleziono write changes per salvare il database modificato: i passaggi sono giusti? Devo fare altro?
-
-
Nuovo Utente
-
- Utente #: 3024
- Registrato: 19 Giu 2020
- Età: 51
- Messaggi: 5
-
27 Punti
- Preferenza Meteo: Indifferente
- Stazione Meteo: Davis Vantage Pro2
- Località: Prov. di AP
-
#6 andrea75 Ven 19 Giu, 2020 19:32
Volendo utilizzare il tool SQLite su win, faccio una copia di backup del file weewx.sdb sul raspy, copio su una chiavetta usb l'archivio weewx.sdb dal raspy, poi sul pc apro SQlite, seleziono il file del database dalla chiavetta usb, seleziono la slide browse data, ordino l'elenco a partire dal più recente in alto, seleziono le righe che voglio selezionare e le cancello con il tasto canc, poi seleziono write changes per salvare il database modificato: i passaggi sono giusti? Devo fare altro?
No, hai detto tutto tu, e quello è il procedimento più corretto.  Ti consiglio di utilizzare un convertitore UNIX per l'orario, tipo questo:
https://www.unixtimestamp.com/index.php
Quando hai copiato nuovamente il DB sul Raspberry, prima di riavviare Weewx, lancia questi due comandi:
- wee_database weewx.conf --drop-daily
- wee_database weewx.conf --rebuild-daily
E poi riavvia Weewx. In questo modo, se non ci sono altri problemi nel DB o nei dati del datalogger, dovrebbe scaricarti tutto, compreso il buco. In caso contrario... ahimè, non saprei cos'altro consigliarti.
____________ Facebook: lineameteo - Twitter: @lineameteo
Stazione meteo di San Mariano (PG)
Dati meteo in tempo reale
http://sanmariano.lineameteo.it
-
-
Presidente
-
- Utente #: 2
- Registrato: 31 Mar 2005
- Età: 49
- Messaggi: 45082
-
3593 Punti
- Preferenza Meteo: Freddofilo
- Stazione Meteo: LaCrosse WS2300
- Località: San Mariano (PG) - 290 mt.
-
#7 automan73 Sab 20 Giu, 2020 07:35
Ciao Andrea, innanzitutto ti ringrazio per l'aiuto che mi stai dando.
Purtroppo non ho risolto nonostante i tentativi, però credo di aver capito cosa è successo.
Mentre trafficavo con raspi-config devo malauguratamente aver cambiato la timezone da Europa (CEST) ad (UTC).
Questo è accaduto dopo le 17:50 del 18/06/2020 (verificato nella immagine allegata) e questo ha influito sulla data ed ora della stazione che quindi ha effettivamente memorizzato dei dati sul datalogger ma con timestamp uguale a dati che aveva già memorizzato in precedenza(da timestamp 1592471700 a 1592478600). Il loop di weewx non li ha aggiunti all'archivio perchè giustamente la data ed ora erano di questi dati erano antecedenti a quelli già presenti nel database e questo ha creato il buco visibile dalle 15:50 alle 17:55 del 18/06/2020 (dal timestamp 1592488200 a 1592495700) e verificato nelle immagini allegate nei post precedenti.
Quindi i dati attualmente mancanti nel DB sono ancora presenti nel logger ma hanno il timestamp errato, (sono i doppioni che il loop weewx non aggiunge al database in quanto già presenti).
Ora viene il difficile: c'è un qualche modo per recuperare quei dati, correggere il timestamp e reinserirli nel database?
Perdere 2h di dati alla fine non sarebbe un gran problema ma se si potessero recuperare dovrei farlo prima che vengano sovrascritti nel datalogger.
Se non si può, l'alternativa sarebbe di aggiungere al database le righe mancanti e riempire in qualche modo i campi dati.
Descrizione: |
|
Dimensione: |
401.67 KB |
Visualizzato: |
File visto o scaricato 75 volta(e) |

|
Ultima modifica di automan73 il Sab 20 Giu, 2020 07:35, modificato 1 volta in totale
-
-
Nuovo Utente
-
- Utente #: 3024
- Registrato: 19 Giu 2020
- Età: 51
- Messaggi: 5
-
27 Punti
- Preferenza Meteo: Indifferente
- Stazione Meteo: Davis Vantage Pro2
- Località: Prov. di AP
-
#8 andrea75 Sab 20 Giu, 2020 09:18
Purtroppo non saprei come modificare i dati del datalogger, anche perché non ho una Davis, ma uso Weeewx con una LaCrosse.
Capisco che rompe le scatole perderei dei dati, ma secondo me il gioco non vale la candela. Ti impazziresti troppo per risolvere un problema che alla fine è relativamente grave.
Un'altra cosa che potresti fare se proprio non ci vuoi rinunciare, è inserire i dati a mano, sempre tramite SQLite browser. Scarichi il datalogger su un altro PC, magari utilizzando Weatherlink, ti copi, o ti stampi, i dati mancanti, e li riporti manualmente di là. Però come ti ripeto è un impazzimento che non so quanto possa valer la pena farsi.
____________ Facebook: lineameteo - Twitter: @lineameteo
Stazione meteo di San Mariano (PG)
Dati meteo in tempo reale
http://sanmariano.lineameteo.it
-
-
Presidente
-
- Utente #: 2
- Registrato: 31 Mar 2005
- Età: 49
- Messaggi: 45082
-
3593 Punti
- Preferenza Meteo: Freddofilo
- Stazione Meteo: LaCrosse WS2300
- Località: San Mariano (PG) - 290 mt.
-
#9 automan73 Sab 20 Giu, 2020 10:29
Infatti, l'impazzimento per sole due ore perse non vale la pena: ho aggiunto manualmente le righe con i timestamp mancanti ed ho compilato i nuovi campi mediando gli estremi.
Ho dato i due comandi che mi avevi suggerito su weewx prima di riavviarlo e problema buchi risolto.
Nella sfortuna è comunque stata una occasione per interagire con il database di weewx, finora non mi era mai capitato.
Grazie ancora di tutto, provvederò a compilare il form per iscrivere la mia stazione.
-
-
Nuovo Utente
-
- Utente #: 3024
- Registrato: 19 Giu 2020
- Età: 51
- Messaggi: 5
-
27 Punti
- Preferenza Meteo: Indifferente
- Stazione Meteo: Davis Vantage Pro2
- Località: Prov. di AP
-
#10 andrea75 Sab 20 Giu, 2020 13:02
Infatti, l'impazzimento per sole due ore perse non vale la pena: ho aggiunto manualmente le righe con i timestamp mancanti ed ho compilato i nuovi campi mediando gli estremi.
Ho dato i due comandi che mi avevi suggerito su weewx prima di riavviarlo e problema buchi risolto.
Nella sfortuna è comunque stata una occasione per interagire con il database di weewx, finora non mi era mai capitato.
Grazie ancora di tutto, provvederò a compilare il form per iscrivere la mia stazione.
Non tutto il male viene per nuocere!  Sono contento che in qualche modo hai risolto.
Ti confermo che la tua stazione è stata da poco inserita in rete.
____________ Facebook: lineameteo - Twitter: @lineameteo
Stazione meteo di San Mariano (PG)
Dati meteo in tempo reale
http://sanmariano.lineameteo.it
-
-
Presidente
-
- Utente #: 2
- Registrato: 31 Mar 2005
- Età: 49
- Messaggi: 45082
-
3593 Punti
- Preferenza Meteo: Freddofilo
- Stazione Meteo: LaCrosse WS2300
- Località: San Mariano (PG) - 290 mt.
-
#11 Gigi600 Mar 06 Dic, 2022 16:05
Salve a tutti
Chiedo c'è una stringa da inviare tramite LX Terminal per correggere la data nella consolle ?
Mi succede che è mancato l'energia ( mini fotovoltaico con batteria ) nella stazione in una malga in montagna e al suo riavvio non scarica più i dati.
Se provvisoriamente metto un nuovo dvb scarica i dati ma poi si ferma all'ora che si è impallato.
Presumo per errata data nella consolle mi è già successo perché al riavvio del Raspberry internet non si connette subito
Posso entrarci da remoto con VNC altrimenti devo farmi 35 km e un 3/4 d'ora a piedi per cambiare l'ora
Grazie
____________ Davis 6153 Plus + WS 2300 cablata
GraphWeather Version 2.0.312b - Webcam Canon G 2
http://www.sacilemeteo.it
-
-
Novizio
-
- Utente #: 910
- Registrato: 09 Dic 2010
- Età: 64
- Messaggi: 71
-
51 Punti
- Preferenza Meteo: Freddofilo
- Stazione Meteo: LaCrosse WS2300 e Davis Vantage Pro2
- Località: Sacile -PN- F.V.G.
-
Questo argomento è stato utile?
Questo argomento è stato utile?
Condividi Argomento |
|
 |
Inserisci un link per questo argomento |
URL |
|
BBCode |
|
HTML |
|
Argomenti Simili
Argomenti Simili
Lista Permessi
|
Non puoi inserire nuovi Argomenti Non puoi rispondere ai Messaggi Non puoi modificare i tuoi Messaggi Non puoi cancellare i tuoi Messaggi Non puoi votare nei Sondaggi Non puoi allegare files Puoi scaricare gli allegati Non puoi inserire eventi calendario
|
|
|
|
|