[pyar] ejecutar metodo pasado por parametro

Javier Marcon javiermarcon en gmail.com
Jue Oct 2 12:11:06 ART 2014


Gracias, yo tengo una aplicación que corre varias tareas en paralelo
(cada una con su archivo de configuración), por ejemplo recibir datos y
cargarlos en una base de datos, habiendo por ejemplo 10 lugares que le
mandan datos para cargar a el mismo metodo de la clase. Yo lo que quiero
es poder loguear especificando un identificador del source (no de la
clase), por ejemplo el error vino cuando queria grabar los datos que me
pasó x persona, por eso cuando inicio el logger, pongo en self.data la
identificacion de que estoy logueando lo de x persona, y tengo una
instancia de logger para cada persona que me envía datos.

Gracias,

Javier.

El 02/10/14 a las 11:41, Tomas Zulberti escibió:
> Hola.
>
> El formato de loggin ya tiene la funcionalidad de poder loguear el
> nombre de la clase, numero de linea, y el nombre de la clase.
> Podes ver la lista aca:
> https://docs.python.org/2/library/logging.html#logrecord-attributes
>
> Pero viendo tu codigo no entiendo muy bien que estas intentando de hacer.
>
> Saludos,
> TZ
>
> 2014-10-02 11:37 GMT-03:00 Javier Marcon <javiermarcon en gmail.com>:
>> Hola, a un metodo de una clase le quiero pasar un parámetro que sea el
>> nombre de un método de otra calase y que me lo ejecute como el metodo de
>> la otra clase:
>>
>> import logging
>>
>> class Loguear:
>>
>>     logger = logging()
>>
>>     def __init__(self, data):
>>         self.data = data
>>
>>     def mensaje(self, nivel, *pargs, **kwargs)
>>         """logueo con la misma instancia de logging para todas las
>> instancias de logger"""
>>         if nivel not in ["info","warn","error"]
>>             nivel = "info"
>>         self.__class__.nivel(extra={'data': self.data, *pargs, **kwargs}
>>
>> la = Loguear("primer lista")
>> la.mensaje("info","linea a loguear")
>> la.mensaje("warn","El %s %s en un %s", "perro", "caminaba", "la corniza")
>> lb = Loguear("segunda lista")
>> lb.mensaje("debug","linea a loguear.")
>> lb.mensaje("warn","El %s %s en un %s", "gato", "maullaba", "solo grito")
>>
>> Alguien tiene idea de como puedo hacerlo si recurrir a if info, elif
>> warn, etc...?
>>
>> Gracias,
>>
>> Javier.
>> _______________________________________________
>> pyar mailing list pyar en python.org.ar
>> http://listas.python.org.ar/listinfo/pyar
>>
>> PyAr - Python Argentina - Sitio web: http://www.python.org.ar/
>>
>> La lista de PyAr esta Hosteada en USLA - Usuarios de Software Libre de Argentina - http://www.usla.org.ar
> _______________________________________________
> pyar mailing list pyar en python.org.ar
> http://listas.python.org.ar/listinfo/pyar
>
> PyAr - Python Argentina - Sitio web: http://www.python.org.ar/
>
> La lista de PyAr esta Hosteada en USLA - Usuarios de Software Libre de Argentina - http://www.usla.org.ar
>



More information about the pyar mailing list