[Python-es] Procesar archivos de SYSLOG

Carlos Herrera Polo carlos.herrerapolo en gmail.com
Lun Abr 12 21:48:39 CEST 2010


Estimados:

Pienso desarrollar un pequeño programa en python que procese un gran archivo
de texto ASCII (200Mb aprox) el cual tiene varias lineas con informacion de
URLs visitadas. Este archivo lo tengo en una PC Window$ que uso como Syslog
y el firewall almacena ahi la informacion en linea.
La idea es que pueda hacer un programa que ubique en cada linea (que
terminan siempre con <000>) un URL, y de ser asi, almacenar en una base de
datos , se me ocurre Mysql lo siguiente:

Fecha , hora, IP , y el dominio del URL, de manera que pueda luego, mediante
consultas a esa base de datos, obtener informacion agrupada sobre paginas
mas vistas, usuarios con mas trafico, etc.

Ejemplo de archivo ASCII:

2010-04-12 11:15:13    Local0.Info    192.168.1.1    FW_UNO: NetScreen
device_id=FW_REM  [Root]system-information-00769: UF-MGR: URL PERMITTED:
192.168.1.41(1619)->68.142.101.11(80)
sunmicro-6.vo.llnwd.net/u/esd6/jscdl/jre/6u17-b80/jre/jre-6u17-windows-i586-ifCATEGORY:
default REASON: BY_OTHER PROFILE: Acceso_Total (2010-04-12
11:14:36)<000>
2010-04-12 11:15:13    Local0.Notice    192.168.1.1    FW_REM: NetScreen
device_id=FW_REM  [Root]system-notification-00257(traffic):
start_time="2010-04-12 11:14:23" duration=14 policy_id=27 service=http
proto=6 src zone=Trust dst zone=Untrust action=Permit sent=1011 rcvd=1042
src=10.10.10.45 dst=204.160.104.126 src_port=1932 dst_port=80 src-xlated
ip=200.62.154.89 port=15204 dst-xlated ip=204.160.104.126 port=80
session_id=45288 reason=Close - TCP RST<000>
2010-04-12 11:15:14    Local0.Info    192.168.1.1    FW_REM: NetScreen
device_id=FW_REM  [Root]system-information-00769: UF-MGR: URL PERMITTED:
192.168.1.45(1928)->208.89.14.135(80)
sales.liveperson.net/hc/55170107/CATEGORY: default REASON: BY_OTHER
PROFILE: Acceso_Total (2010-04-12
11:14:37)<000>


Podrian por favor aconsejarme que modulos de Python deberia utilizar ? Se
que Python tiene cientos de librerias, imagino que alguna debe poder
identificar de una variable string, el URL, y luego el dominio...

Mil gracias de antemano por las sugerencias.

Saludos
------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://mail.python.org/pipermail/python-es/attachments/20100412/a3d2a95d/attachment.html>


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