El mar., 3 may. 2016 a las 17:41, David Samaniego (<dsama...@fi.uba.ar>)
escribió:

> Hola buena tarde, dispongo de un script  que realiza un una consulta smnp
> y la informacion la inserta en una tabla mysql. El tema es que necesito que
> cada consulta snmp se lo realice cada 1 segundo, ya que tiene que guardar
> los tiempos para analizarlos porteriormente.
> Lo que estaba haciendo para probar es lanzar un crontab que ejecute el
> script, pero el tiempo minino es un minuto, así que no se me ocurre como
> hacer para que cada insert lo haga en el tiempo que necesito. (Creo que
> debo hacer un bucle que itere cada 1 segundo hasta 60  y que cuando termine
> lo vuelva a ejecutar el crontab para que se vuelva a repetir.
>
> Alguna sugerencia de como puedo llevar a cabo la idea??
>
> Agradezco cualquier comentario.
>

Para darte una respuesta adecuada, se necesitaría saber qué versión de
python estás usando y en qué plataforma usas.

La solución "clásica" de usar time.sleep no es la recomendada en
aplicaciones multihilo. Es mejor usar soluciones más "responsibles" como
event.wait (suponiendo que estés usando python3).

Mi consejo en que uses threading.Timer con python2; y el módulo sched
(valores por defecto) con python3. (En la documentación de sched para
python2 te explica cómo usar Timer).

....y si puedes elegir, python3.

Por otra parte, supongo que no tienes probado lo de insertar datos cada
segundo en una tabla mysql. Si estás pensando en lanzar varios scripts para
traerte datos de distintos dispositivos, el bloqueo/desbloqueo de registros
o tabla para insertar datos podría ser un problema. Yo no juntaría en el
mismo script la extracción de datos snmp con la inserción de datos en la
base de datos.



-- 
Hyperreals *R  "Quarks, bits y otras criaturas infinitesimales":
http://ch3m4.org/blog
_______________________________________________
Python-es mailing list
Python-es@python.org
https://mail.python.org/mailman/listinfo/python-es
FAQ: http://python-es-faq.wikidot.com/

Responder a