[Python-es] Lectura de archivos planos tipo logsurfer

Jordi Funollet jordi.f en ati.es
Lun Mar 28 11:48:03 CEST 2011


On 03/27/2011 10:33 PM, Carlos Herrera Polo wrote:
> 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...

Carlos,

no sé si tienes tus razones para implementar esta herramienta o 
simplemente no has encontrado nada adecuado. Si es la segunda opción, 
aquí van un par de herramientas.

El propio 'syslog-ng' te permite pasar los mensajes que quieras a un 
programa externo (en tu caso cualquiera que te permita enviar mail) 
mediante el driver 'program()'.

 
http://www.balabit.com/sites/default/files/documents/syslog-ng-v3.0-guide-admin-en.html/reference_destination_program.html

logwatch: diariamente revisa todos los logs y manda un resumen.

logcheck: cada hora revisa los logs añadidos, ignora los patrones que se 
le indiquen y manda por mail el resto.


-- 
##############################
### Jordi Funollet
### http://www.terraquis.net


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