Para instalarlo, basta con ejecutar
# yum install logwatch
.Si bien este software trae soporte de base para muchos servicios comunes como
Login
, Apache2
, SSH
,
etc; es relativamente sencillo extenderlo para dar soporte a un
servicio nuevo. La estructura básica de sus directorios y ficheros es como se muestra a continuación:
etc
| logwatch
|-- conf
|---- logfiles
| rpm-check.conf
|---- services
| rpm-check.conf
|-- scripts
|---- services
| rpm-check
Este ejemplo de configuracion, envia con el logwatch el contenido de un archivo de log.
La carpeta
/etc/logwatch
vim /etc/logwatch/
conf/logfiles/rpm-check.conf
# What actual file? Defaults to LogPath if not absolute path.... #LogFile = /var/log/asterisk/full LogFile = /var/log/controles/rpm.txt # If the archives are searched, here is one or more line # (optionally containing wildcards) that tell where they are... #If you use a "-" in naming add that as well -mgt #Archive = /var/log/asterisk/messages.* #Archive = /var/log/asterisk/full.* # Expand the repeats (actually just removes them now) *ExpandRepeats
Luego, creamos el archivovim /etc/logwatch/conf/services/rpm-check.conf
# You can put comments anywhere you want to. They are effective for the
# rest of the line.
# this is in the format of = . Whitespace at the beginning
# and end of the lines is removed. Whitespace before and after the = sign
# is removed. Everything is case *insensitive*.
# Yes = True = On = 1
# No = False = Off = 0
Title = "Chequeo de RPMs"
# Which logfile group...
LogFile = rpm-check
*RemoveHeaders
Por último, creamos el fichero vim /etc/logwatch/scripts/services/rpm-check
#!/usr/bin/perl
# Copyright header...
use strict;
use Logwatch ':all';
print "Log rpm.txt\n";
my @vec = '';
open(ARCHIVO,"</var/log/controles/rpm.txt");
#Carga el contenido de rpm.txt en el vector:@vec
@vec = <ARCHIVO>;
#Mostar el resultado
foreach $a (@vec)
{ print "$a"; }
print "\nLog PROBLEMAS.TXT\n";
my @vec = '';
open(ARCHIVO,"</var/log/controles/PROBLEMAS.TXT");
#Carga el contenido de rpm.txt en el vector:@vec
@vec = <ARCHIVO>;
#Mostar el resultado
foreach $a (@vec)
{ print "$a"; }
Para compilar y hacer que logwatch envie el correo.
/usr/share/logwatch/scripts/logwatch.pl --debug High \
o
/usr/sbin/logwatch --mailto user@example.com --format html --service secure
Con el comando mail revisamos el correo.
Eliminamos correo tipiando d2-9
donde 2 es el num de correo inicial a eliminar, y 9 es el ultimo.
Con q salimos.
No hay comentarios:
Publicar un comentario