Mie Jul 25, 2007 3:24 pm
|
 |
monoswim
Vive para Perl en Español

|
Registrado: 18 Nov 2003
Mensajes: 716
Ubicación: Buenos Aires
|
|
| Lectura continua de un log con syslogd |
|
|
Hola gente, navegando encontré un script:
http://www.c-note.dk/viewcv/trunk/block_idiots_ssh.pl?root=scripts&view=co
que con el Sys::Syslog hace esto:
| Perl: | openlog ('block_idiots_ssh', 'cons.pid', 'security');
open(SYSFIFO, "< " . $pipe) or die $ 1;
syslog ('info', "Starting");
until ( $time_to_die ) {
my $line = <SYSFIFO>;
}
close(SYSFIFO );
closelog (); |
Ese until es un bucle infinito (es un deamon) y va leyendo constantemente el log... se supone que en cada línea nueva que se escriba en el log lo va capturando en $line y con esto no tiene que ir leyendo varias veces el mismo log como si lo usáramos como un archivo normal...
¿Es correcto esto? ¿Alguien sabe si es bueno hacerlo o tiene alguna contra? Porque el log no se cierra hasta que muera el deamon, pueden pasar meses :S
En Internet encontré muy poca información al respecto...
La idea es leer los logs para hacer un seguimiento del uso que los usuarios del sistema hacen sobre algunos servicios puntuales...
Saludos |
|
|
|

Mie Jul 25, 2007 5:29 pm
|
 |
explorer
Moderador

|
Registrado: 24 Jul 2005
Mensajes: 4092
Ubicación: Valladolid, España
|
|
|
|
|
Sí, es correcto. Se está conectando a un pipe abierto por Syslog. Es como un fichero que está en disco que siempre está generando contenido.
En este foro hay ejemplos de otras soluciones, como el File::Tail (Lectura continua de archivo).
De todas formas, para lo que lo quieres, te vale con el programa logcheck (disponible en su Linux más cercano) (también comentado en un par de hilos de este foro). |
|
Jue Jul 26, 2007 9:32 am
|
 |
monoswim
Vive para Perl en Español

|
Registrado: 18 Nov 2003
Mensajes: 716
Ubicación: Buenos Aires
|
|
|
|
|
Voy a averiguar más sobre el logcheck, el tema es que quiero realizar distintas acciones dependiendo de como den los checkeos...
Saludos
PD: Gracias como siempre !!! |
|
Powered by phpBB © 2001, 2005 phpBB Group
|