[Python-es] Fwd: Lectura de archivos planos tipo logsurfer

Manuel Enrique González Ramírez maengora en gmail.com
Lun Mar 28 00:04:43 CEST 2011


El 27 de marzo de 2011 16:01, Alfonso de la Guarda
<alfonsodg en gmail.com>escribió:

> Hola,
>
> contenido es un objeto de tipo file, por ende puedes emplear read(),
> readlines() , etc.....
>
>
>
> Saludos,
>
> --------------------------------
> Alfonso de la Guarda
> Centro Open Source(COS)
> http://www.cos-la.net
> http://alfonsodg.net
>    Telef. 991935157
> 1024D/B23B24A4
> 5469 ED92 75A3 BBDB FD6B  58A5 54A1 851D B23B 24A4
>
>
>
> 2011/3/27 Carlos Herrera Polo <carlos.herrerapolo en gmail.com>:
> > ---------- Forwarded message ----------
> > From: Carlos Herrera Polo <carlos.herrerapolo en gmail.com>
> > Date: Sun, 27 Mar 2011 22:58:54 +0200
> > Subject: Re: Lectura de archivos planos tipo logsurfer
> > To: Alfonso de la Guarda <alfonsodg en gmail.com>
> >
> > Buena idea, no se me habia ocurrido usar tail.
> > La variable "contenido" en el ejemplo que representa ? Una lista ? Un
> > texto enorme con el resultado de tail ?
> >
> > El 27/03/11, Alfonso de la Guarda <alfonsodg en gmail.com> escribió:
> >> Hola,
> >>
> >> Pues yo emplearía (tal como lo he hecho antes) popen (aunque desde 2.6
> >> ya es un método obsoleto)
> >>
> >> import os
> >> contenido = os.popen("tail -n 50 /var/log/syslog")
> >> print contenido.read()
> >> if contenido.read() .,.....
> >>
> >> En tail cambia el 50 por la cantidad de líneas que quieras y
> >> obviamente metelo en un loop (con pausa) o como una tarea programada
> >> (cron)
>

Y si al tail le agregas un grep para buscar algo en concreto te quedará más
eficiente

contenido = os.popen("tail -n 50 /var/log/syslog | grep -i 'error_a_buscar'
")


> >>
> >>
> >> Saludos,
> >>
> >> --------------------------------
> >> Alfonso de la Guarda
> >> Centro Open Source(COS)
> >> http://www.cos-la.net
> >> http://alfonsodg.net
> >>    Telef. 991935157
> >> 1024D/B23B24A4
> >> 5469 ED92 75A3 BBDB FD6B  58A5 54A1 851D B23B 24A4
> >>
> >>
> >>
> >> 2011/3/27 Carlos Herrera Polo <carlos.herrerapolo en gmail.com>:
> >>> Ilustres, quisiera tener su opinion al respecto..
> >>>
> >>> Administro ciertos servidores linux, y consolido la informacion de los
> >>> logs de estos en un unico servidor con el servicio syslog-ng, los logs
> >>> son archivos planos que se almacenan en formato ASCII, un log por cada
> >>> servicio/servicio.
> >>> Quisiera desarrollar un programa simple que me alerte por correo de
> >>> ciertos eventos que ocurren en los logs.... Existe un programa llamado
> >>> logsurfer, escrito en C que hace esto...
> >>> Mi idea es hacer un logsurfer pero en python, pero no se como trabajar
> >>> la lectura de estos archivos planos que cada uno debe tener varios
> >>> megas de peso, y son escritos cada segundo, ustedes como lo harian ?
> >>> Porque hacer fileread por cada uno y luego irme hasta las ultimas
> >>> filas como que no seria eficiente...
> >>>
> >>> Alguien que me pueda sugerir algo por favor ?
> >>>
> >>> Muchas gracias a todos
> >>>
> >>> Saludos
> >>>
> >>> --
> >>> Enviado desde mi dispositivo móvil
> >>> _______________________________________________
> >>> Python-es mailing list
> >>> Python-es en python.org
> >>> http://mail.python.org/mailman/listinfo/python-es
> >>> FAQ: http://python-es-faq.wikidot.com/
> >>>
> >>
> >
> > --
> > Enviado desde mi dispositivo móvil
> >
> > --
> > Enviado desde mi dispositivo móvil
> > _______________________________________________
> > Python-es mailing list
> > Python-es en python.org
> > http://mail.python.org/mailman/listinfo/python-es
> > FAQ: http://python-es-faq.wikidot.com/
> >
> _______________________________________________
> Python-es mailing list
> Python-es en python.org
> http://mail.python.org/mailman/listinfo/python-es
> FAQ: http://python-es-faq.wikidot.com/
>



-- 
Manuel Enrique González Ramírez
http://maengora.blogspot.com
------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://mail.python.org/pipermail/python-es/attachments/20110327/d8c656ed/attachment.html>


Más información sobre la lista de distribución Python-es