Estaciones Meteoclimatic > FORUM GENERAL
Minimizar la pérdida de datos del último cuarto de hora del día
Amon-K:
En varios post ya se ha tratado el tema de la pérdida de datos (sobre todo de precipitación pero igualmente puede afectar a los demás datos) entre el último envío del día, y el primero del día siguiente.
Yo tenía configurado en crontab lo siguiente:
--- Código: ---.......
.......
#Envía datos a Meteoclimatic cada 15 minutos, empezando en el minuto 1 de cada hora
1-59/15 * * * * root /root/meteoclimatic/meteoclimatic.sh
.......
.......
--- Fin del código ---
Y la consola está configurada para guardar datos cada 5 minutos.
Todo ello según nos aconseja jantoni en su tutorial para la instalación y personalización de Weewx.
Con esta situación Linux hace un último envío cada día a las 23:46h con los datos grabados a las 23:45h y el siguiente lo hace a las 00:01h con los datos grabados a las 00:00h, el cual, por lógica, supongo que será considerado perteneciente al día siguiente.
Quiere esto decir que los datos grabados en la consola a las 23:50h y a las 23:55h constan en la consola y por tanto considerados a efectos de acumulados y de máximos y mínimos en las bases de datos de weewx, y no siendo así considerados por Meteoclimatic por no constarle, y ello puede acarrear inconsistencias.
Se me ocurrió que una solución posible a esta situación es configurar crontab de la siguiente manera:
--- Código: ---......
......
#Envía datos a Meteoclimatic cada 15 minutos, empezando en el minuto 1 de cada hora
1-57/15 * * * * root /root/meteoclimatic/meteoclimatic.sh
#Envía datos a Meteoclimatic a las 23:59 de cada dia
59 23 * * * root /root/meteoclimatic/meteoclimatic.sh
......
......
--- Fin del código ---
En esta solución se hacen los envíos cada 15 minutos y un envío extra a las 23:59h con los datos grabados a las 23:55h donde constan los acumulados, máximos y mínimos del día. Así he estado mucho tiempo pensando que de esta manera estaba enviando los datos de estos últimos minutos.
Hace unas semanas pensé que también podía probar una segunda solución, hacer envíos cada 5 minutos con lo cual a Meteoclimatic le constaría todos los datos acumulados en las bases de datos de weewx y normalmente no se producirían inconsistencias. He probado esta solución y los envíos cada 5 minutos se producen y son aceptados por Meteoclimatic, sin embargo no sé si Meteoclimatic los tiene en cuenta, porque en las sucesivas actualizaciones de mi estación solo aparecen las enviadas cada 15 minutos. Y por tanto me surge la duda: ¿Es efectiva esta solución?, y si no es efectiva tampoco lo es la primera solución.
Por último se me ocurre una tercera solución. Ajustar el último envío del día a las 23:56h con los datos grabados a las 23:55h lo cual supongo es buena solución y no me surgen dudas de su efectividad, aunque tendré que probarla. Habría que introducir en crontab lo siguiente:
--- Código: ---......
......
#Envía datos a Meteoclimatic cada 15 minutos, empezando en el minuto 11 de cada hora
11-57/15 * * * * root /root/meteoclimatic/meteoclimatic.sh
......
......
--- Fin del código ---
No obstante me gustaría aclarar las dudas planteadas anteriormente para saber cuales de estas tres soluciones son efectivas y que cada uno de los que lean este tema elija la que más le interese.
Saludos a todos.
Ubik:
Prográmalo para hacer 4 envíos empezando en el minuto 11, 26, 41 y 56, te aceptará todos los envíos y se minimizaría la posible pérdida de datos a los 5 últimos minutos.
Amon-K:
Gracias Ubik por la rapidisima respuesta.
Si, yo tambien llego al convencimiento, porque supongo algunas cosas, de que es la solución pero me quedan sin respuesta las preguntas que me han hecho llegar a esta conclusión.
¿Si hago un envio extra fuera del ritmo normal de envíos, este envío se considera por parte de Meteoclimatic?.
¿Si aumento el ritmo de envíos, estos envios son considerados por Meteoclimatic?. En caso negativo
¿Es obligado mantener un ritmo de envios con un período de 15 minutos?.
Saludos.
jantoni:
No os lieis....os lo recomiendo.
ESe margen de error va a existir siempre, aunque se envién (y se acepten) envíos cada 5 minutos.
A tus preguntas:
No
No
No
;D ;D ;D ;D ;D ;D ;D
Veamos, puedes hacer como yo. Enviar cada 5 minutos. Pero Meteoclimatic solo va a tomar 4 envíos a la hora.
Desconozco las tripas internas del software de meteoclimatic, pero la experiencia de estos años, me hace pensar que es algo parecido a esto:
- Hay dos modos de transmisión, Visual y similares, y el típico mal llamado FTP (en realidad por HTTP)
- Las estaciones pueden enviar todos los datos que quieran.....hasta 1 cada minuto
- El servidor de Meteoclimatic, una vez abierta la ventana, lee los FTP y el último dato que tenga almacenado enviado por Visual
Por tanto, si tu envío a las 23:5x es el último almacenado en el momento de abrir la ventana de datos, es el que será utilizado. En caso contrario, usará el anterior.
El problema es que no sabemos en que momento abre la ventana.
Una solución para el cron sería mandar los datos cada 5 o 15 minutos durante todo el día....y en el último cuarto de hora, mandarlo cada minuto.
Pero eso sería una tontería, porque entonces hay que cambiar la generación en el software de la estración en el mismo periodo, de lo contrario volvemos a "maximizar" la diferencia en precipitación o viento.
Sinceramente, lo mejor es lo siguiente:
- Generación en el software cada 5 minutos. Envío cada 5 minutos.
- Revisar, a diario, las diferencias entre nuestro resumen diario y el resumen de Meteoclimatic
- Corregir las posibiles diferencias diarias.
Lo contrario es pretender que todo sea automático. Y eso conlleva a que, al final, desatendemos las estaciones y sus datos, como estamos habituados a ver a diario.
jantoni:
Por cierto, este hilo estaría mejor en el foro general o en el de software de meteoclimatic, puesto que no afecta solo a weewx
Navegación
[#] Página Siguiente
Ir a la versión completa