Autor Tema: Script PHP para contar envíos de la plantilla  (Leído 6519 veces)

0 Usuarios y 1 Visitante están viendo este tema.

Desconectado Telares

  • Hero Member
  • *****
  • Mensajes: 573
    • Ver Perfil
  • Estación: Matueca ESCYL2400000024820A
Script PHP para contar envíos de la plantilla
« en: 05 de Junio del 2017, 20:17:56 pm »
Gracias jmviper y manolodos. Lo del IR ya lo tenía presente, pero como no acabo de llegar al​ máximo de 4,8 no sé realmente cuántos envíos pierdo al día. No sé cómo se consulta el log del​ PHP, pero lo buscaré. Pienso que estaría bien tener en los datos de cada estación una especie de contador con los envíos aceptados. Lo del log es tan farragoso como intentar modificar datos en Weewx.
« Última modificación: 07 de Junio del 2017, 19:56:29 pm por jmviper »

Desconectado jmviper

  • Investigación
  • Hero Member
  • ******
  • Mensajes: 3.609
  • "Vortex Complex"
    • Ver Perfil
    • www.meteoarchena.es
  • Estación: Archena - ESMUR3000000030600B
Script PHP para contar envíos de la plantilla
« Respuesta #1 en: 05 de Junio del 2017, 22:30:13 pm »
Bueno recuerdo que tuvimos un hilo con lo de subir la plantilla que te daba problemas:

http://forum.meteoclimatic.net/index.php/topic,1313.45.html

En él pusimos como "remedio" ya que no soy ningún experto en Linux que ejecutara el script PHP en vez del bash.

Lo que puedes hacer es en el crontab en la línea de subida de la plantilla añadirle que te escriba el log.

Creo que se quedaría la línea así:

Código: [Seleccionar]
9-59/5 * * * *  php /root/meteoclimatic/meteoclimatic_http.php.old >> /var/log/meteoclimatic.log
Y ya tendrías el log para consultarlo en /var/log/meteoclimatic.log

Haz la prueba a ver si funciona  ;)

saludos
« Última modificación: 07 de Junio del 2017, 19:59:58 pm por jmviper »


Archena, Valle de Ricote (Murcia). 120 msnm. 19.428 hab.
Davis Vantage Pro2 Plus

www.meteoarchena.es

Desconectado Telares

  • Hero Member
  • *****
  • Mensajes: 573
    • Ver Perfil
  • Estación: Matueca ESCYL2400000024820A
Script PHP para contar envíos de la plantilla
« Respuesta #2 en: 07 de Junio del 2017, 07:29:54 am »
Gracias jmviper, para no ser experto en Linux te apañas muy bien. Ya me hace el log y me salen  estos datos cada 5 minutos, por lo que deduzco que son los envíos aceptados:

-- 07/06/2017 05:14:02 --
HTTP/1.1 202 Accepted
Date: Wed, 07 Jun 2017 05:14:02 GMT
Server: Apache/2.4.10 (Debian)
X-Error: 202 Accepted
X-DigestKey:
Content-Length: 69
Content-Type: text/plain;charset=UTF-8
Connection: close

Entonces habría que revisar uno a uno, supongo, para ir contando los no aceptados.
« Última modificación: 07 de Junio del 2017, 20:00:11 pm por jmviper »

Desconectado jmviper

  • Investigación
  • Hero Member
  • ******
  • Mensajes: 3.609
  • "Vortex Complex"
    • Ver Perfil
    • www.meteoarchena.es
  • Estación: Archena - ESMUR3000000030600B
Script PHP para contar envíos de la plantilla
« Respuesta #3 en: 07 de Junio del 2017, 08:07:47 am »
Ok

Pero se me ocurre una cosa para no sea "tan farragoso" consultar el log ...

Cuando puedas adjunta el log aquí y prepararé un pequeño script PHP para que cuente los envíos aceptados de los últimos 30 días.

El log mayormente tiene la finalidad de crearse para ver "errores" en este caso en los envíos. Un log de 30 días cada 5 minutos tendría muchos envíos y se haría muy grande con el paso de mucho tiempo (un año por ejemplo).

Lo dicho, adjunta el log y ya trastearé con él. Mi intención es que el script PHP que pondrás a ejecutarse también en el crontab cada x tiempo vaya "recortando" el log al último o últimos días (se podrá poner la cantidad de días) y a la vez vaya escribiendo en otro log los últimos 30 días con los envíos aceptados para poder ver fácilmente cuántos se han enviado exitosamente al día.

Saludos
« Última modificación: 07 de Junio del 2017, 20:00:23 pm por jmviper »


Archena, Valle de Ricote (Murcia). 120 msnm. 19.428 hab.
Davis Vantage Pro2 Plus

www.meteoarchena.es

Desconectado Telares

  • Hero Member
  • *****
  • Mensajes: 573
    • Ver Perfil
  • Estación: Matueca ESCYL2400000024820A
Script PHP para contar envíos de la plantilla
« Respuesta #4 en: 07 de Junio del 2017, 14:39:52 pm »
Pues muchísimas gracias, eso estaría muy bien.

« Última modificación: 07 de Junio del 2017, 20:00:40 pm por jmviper »

Desconectado jmviper

  • Investigación
  • Hero Member
  • ******
  • Mensajes: 3.609
  • "Vortex Complex"
    • Ver Perfil
    • www.meteoarchena.es
  • Estación: Archena - ESMUR3000000030600B
Script PHP para contar envíos de la plantilla
« Respuesta #5 en: 07 de Junio del 2017, 19:53:01 pm »
Bueno tras la primera toma de contacto con el log veo que la plantilla se envía cada 5 minutos y es aceptada pero en verdad sólo vale la última que lee meteoclimatic.

Puesto que contar todas las plantillas enviadas cada 5 minutos y ya que sólo vale la última enviada antes de que meteoclimatic lea la plantilla (no es como subirla y leerla el robot por URL) vamos a hacer unos cambios.

Vas a poner el crontab que ejecute el script cada 15 minutos en vez de cada 5:

Código: [Seleccionar]
9-59/15 * * * *  php /root/meteoclimatic/meteoclimatic_http.php.old >> /var/log/meteoclimatic.log
Borra el log de meteoclimatic con sudo rm /var/log/meteoclimatic.log

Mañana en que ya se habrán enviado bastantes envíos lo vuelves a adjuntar.
« Última modificación: 07 de Junio del 2017, 20:00:48 pm por jmviper »


Archena, Valle de Ricote (Murcia). 120 msnm. 19.428 hab.
Davis Vantage Pro2 Plus

www.meteoarchena.es

Desconectado Telares

  • Hero Member
  • *****
  • Mensajes: 573
    • Ver Perfil
  • Estación: Matueca ESCYL2400000024820A
Re:Script PHP para contar envíos de la plantilla
« Respuesta #6 en: 08 de Junio del 2017, 15:05:12 pm »
Ahí lo tienes.

Desconectado jmviper

  • Investigación
  • Hero Member
  • ******
  • Mensajes: 3.609
  • "Vortex Complex"
    • Ver Perfil
    • www.meteoarchena.es
  • Estación: Archena - ESMUR3000000030600B
Re:Script PHP para contar envíos de la plantilla
« Respuesta #7 en: 08 de Junio del 2017, 22:55:55 pm »
Ok de momento ya he hecho que cuente los envíos exitosos. Falta trastear con las fechas etc etc. Espero tenerlo para el fin de semana.

Por cierto... cada cuánto te genera weewx la plantilla de meteoclimatic ?? Lo suyo sería cada minuto si lo tienes cada 5 y te explico el porqué... la utilidad de envío de meteoclimatic pone la hora y fecha del sistema en el momento del envío sobrescribiendo la original que lleva la plantilla (puesta por weewx). Por lo tanto si la plantilla está rellenada por weewx a las 22:55 por ejemplo y es enviada por la utilidad a las 22:59 o a las 23:04 pone esa hora que no corresponde exactamente con la hora de ese dato rellenado por weewx.

Yo pondría cada minuto generándose la plantilla y así se envía la más actualizada.

También creo que es conveniente tras hacer pruebas que en el crontab pongas:


Código: [Seleccionar]
14-59/15 * * * *  php /root/meteoclimatic/meteoclimatic_http.php.old >> /var/log/meteoclimatic.log
Con eso subirás en los minutos 14, 29, 44 y 59 de cada hora quedándose grabados los datos últimos del día a las 23:59.


Archena, Valle de Ricote (Murcia). 120 msnm. 19.428 hab.
Davis Vantage Pro2 Plus

www.meteoarchena.es

Desconectado Telares

  • Hero Member
  • *****
  • Mensajes: 573
    • Ver Perfil
  • Estación: Matueca ESCYL2400000024820A
Re:Script PHP para contar envíos de la plantilla
« Respuesta #8 en: 10 de Junio del 2017, 12:08:18 pm »
Hola, ya cambié el crontab. Con respecto al periodo de actualización no soy capaz de cambiarlo. He puesto en weewx.conf:

[StdArchive]

    # If the station hardware supports data logging then the archive interval
    # will be downloaded from the station. Otherwise, specify it (in seconds).
    archive_interval = 60

con 60 en vez de 300, pero sigue haciéndolo cada 5 minutos. No sé si lo estoy haciendo bien.
Gracias.

Desconectado jmviper

  • Investigación
  • Hero Member
  • ******
  • Mensajes: 3.609
  • "Vortex Complex"
    • Ver Perfil
    • www.meteoarchena.es
  • Estación: Archena - ESMUR3000000030600B
Re:Script PHP para contar envíos de la plantilla
« Respuesta #9 en: 10 de Junio del 2017, 15:36:13 pm »
Ok tranquilo, no pasa nada.

Lo importante es que genere y envíe las plantillas.  4-5 minutos no es nada grave. A ver si entre hoy y mañana dejo el script terminado o casi.


Archena, Valle de Ricote (Murcia). 120 msnm. 19.428 hab.
Davis Vantage Pro2 Plus

www.meteoarchena.es

Desconectado jmviper

  • Investigación
  • Hero Member
  • ******
  • Mensajes: 3.609
  • "Vortex Complex"
    • Ver Perfil
    • www.meteoarchena.es
  • Estación: Archena - ESMUR3000000030600B
Re:Script PHP para contar envíos de la plantilla
« Respuesta #10 en: 11 de Junio del 2017, 10:41:41 am »
Primera prueba.

Te adjunto el archivo PHP para de momento contar envíos válidos y no válidos o erróneos.

Es la primera toma de contacto para ver que los cuenta correctamente.

Lo pones donde tú quieras y lo ejecutas con php contarenvios.php


Archena, Valle de Ricote (Murcia). 120 msnm. 19.428 hab.
Davis Vantage Pro2 Plus

www.meteoarchena.es

Desconectado Telares

  • Hero Member
  • *****
  • Mensajes: 573
    • Ver Perfil
  • Estación: Matueca ESCYL2400000024820A
Re:Script PHP para contar envíos de la plantilla
« Respuesta #11 en: 11 de Junio del 2017, 10:52:45 am »
Me sale así, es lo esperable?


pi@raspberrypi:~ $ sudo php contarenvios.php
7/06/2017   buenos: 22       malos o no enviados: 74
8/06/2017   buenos: 96       malos o no enviados: 0
9/06/2017   buenos: 96       malos o no enviados: 0
0/06/2017   buenos: 96       malos o no enviados: 0
1/06/2017   buenos: 35       malos o no enviados: 61

Desconectado jmviper

  • Investigación
  • Hero Member
  • ******
  • Mensajes: 3.609
  • "Vortex Complex"
    • Ver Perfil
    • www.meteoarchena.es
  • Estación: Archena - ESMUR3000000030600B
Re:Script PHP para contar envíos de la plantilla
« Respuesta #12 en: 11 de Junio del 2017, 12:01:09 pm »
Sí... de momento van bien... excepto en la primera cifra de las fechas del día 10 y el 11 .... no sé si es porque has copiado y pegado mal u otra cosa

96 envíos es el número máximo de envíos que se pueden realizar al día. En el día 7 empezaste a generar el log por lo que no están todos y el día de hoy te contará los que llevas. Ya veré de en el día actual calcular los envíos que se deberían de llevar y ponerlo mejor.

Adjunta otra vez el meteoclimatic.log que tienes ahora que ya tiene muchos más días que con el que estoy probando. Voy a ver si puedo truncar el log a 30 días que son los que realmente interesan. Se verá cuando el log llegue a los 30 días de datos e irá quedándose en esos últimos 30 días siempre.


Archena, Valle de Ricote (Murcia). 120 msnm. 19.428 hab.
Davis Vantage Pro2 Plus

www.meteoarchena.es

Desconectado Telares

  • Hero Member
  • *****
  • Mensajes: 573
    • Ver Perfil
  • Estación: Matueca ESCYL2400000024820A
Re:Script PHP para contar envíos de la plantilla
« Respuesta #13 en: 11 de Junio del 2017, 12:33:31 pm »
Lo de las decenas en la fecha sale así, no lo he capado yo al copiar. Te paso el log recientito. Estoy que no quepo en mí de alegría. Muchísimas gracias.

Desconectado jmviper

  • Investigación
  • Hero Member
  • ******
  • Mensajes: 3.609
  • "Vortex Complex"
    • Ver Perfil
    • www.meteoarchena.es
  • Estación: Archena - ESMUR3000000030600B
Re:Script PHP para contar envíos de la plantilla
« Respuesta #14 en: 11 de Junio del 2017, 19:15:05 pm »
Mejoras en este último:

Solucionado lo de la fechas, ya salen enteras y en el día actual sólo contará los envíos que se lleven realizados. Si ves algún fallo o algo raro lo dices y sobre todo cuelga el log si ves fallos en los envíos pues parece que hasta el momento son todos exitosos jejejeje... puede que se escapen condiciones por lo que hay que verlo bien.


Archena, Valle de Ricote (Murcia). 120 msnm. 19.428 hab.
Davis Vantage Pro2 Plus

www.meteoarchena.es