meta data de esta página
Diferencias
Muestra las diferencias entre dos versiones de la página.
| Ambos lados, revisión anteriorRevisión previaPróxima revisión | Revisión previa | ||
| aplicaciones:servidor_de_logs [302013/05/ 17:01] – lc | aplicaciones:servidor_de_logs [182023/01/ 13:10] (actual) – editor externo 127.0.0.1 | ||
|---|---|---|---|
| Línea 1: | Línea 1: | ||
| + | {{tag> rsyslog}} | ||
| + | ====== Rsyslog ====== | ||
| + | En la instalación del servidor remoto de log’s se han usado las siguientes herramientas. | ||
| + | |||
| + | * CentOS 5.2 | ||
| + | * Rsyslog | ||
| + | * Mysql | ||
| + | * PHP | ||
| + | * Apache | ||
| + | * Phplogcon | ||
| + | |||
| + | ===== Instalación ===== | ||
| + | |||
| + | Desde la consola introducimos lo siguiente: | ||
| + | |||
| + | # yum –y install rsyslog rsyslog-mysql mysql-server php httpd php-mysql | ||
| + | |||
| + | Se instalarán automáticamente los paquetes arriba mencionados (menos el phplogcon) y además todas sus dependencias. | ||
| + | |||
| + | ===== Configuración ===== | ||
| + | |||
| + | Añadimos al sistema el usuario syslog que lo usaremos en la base de datos. | ||
| + | # useradd syslog | ||
| + | |||
| + | Empezamos por arrancar y configurar el mysql. | ||
| + | |||
| + | # chkconfig mysqld on | ||
| + | |||
| + | # service mysqld start | ||
| + | |||
| + | Añadimos una clave para el root del mysql. | ||
| + | |||
| + | # mysqladmin –u root password nueva-clave | ||
| + | |||
| + | rsyslog-mysql trae preparada una base de datos llamada syslog para crearla en mysql y meter ahí los datos que obtenemos. Para crearla hacemos lo siguiente: | ||
| + | |||
| + | # cd / | ||
| + | # mysql –p < createDB.sql | ||
| + | |||
| + | Una vez creada la base de datos nos logeamos como root en mysql y le damos permiso al usuario syslog para que pueda escribir en la base de datos. | ||
| + | |||
| + | # mysql –u root –p | ||
| + | | ||
| + | | ||
| + | | ||
| + | |||
| + | Ahora tenemos que modificar los dos ficheros de configuración del rsyslog. | ||
| + | |||
| + | / | ||
| + | |||
| + | # Log all kernel messages to the console. | ||
| + | # Módulos para la comunicación con la base de datos en mysql | ||
| + | | ||
| + | | ||
| + | | ||
| + | *.* : | ||
| + | # Logging much else clutters up the screen. | ||
| + | # | ||
| + | # Log anything (except mail) of level info or higher. | ||
| + | # Don't log private authentication messages! | ||
| + | | ||
| + | # The authpriv file has restricted access. | ||
| + | | ||
| + | # Log all the mail messages in one place. | ||
| + | | ||
| + | # Log cron stuff | ||
| + | | ||
| + | # Everybody gets emergency messages | ||
| + | | ||
| + | # Save news errors of level crit and higher in a special file. | ||
| + | | ||
| + | # Save boot messages also to boot.log | ||
| + | | ||
| + | |||
| + | |||
| + | / | ||
| + | |||
| + | # Options to syslogd | ||
| + | # -m 0 disables ' | ||
| + | # -rPortNumber Enables logging from remote machines. The listener will | ||
| + | | ||
| + | to the specified port. | ||
| + | # -x disables DNS lookups on messages recieved with -r | ||
| + | # See syslogd(8) for more details | ||
| + | | ||
| + | # Options to klogd | ||
| + | # -2 prints all kernel oops messages twice; once for klogd to decode, and | ||
| + | # | ||
| + | # -x disables all klogd processing of oops messages entirely | ||
| + | # See klogd(8) for more details | ||
| + | | ||
| + | |||
| + | El CentOS trae por defecto el syslog instalado para generar los log’s, así que antes de arrancar el rsyslog tenemos que parar y deshabilitar el syslog para que no de problemas. | ||
| + | |||
| + | # service syslog stop | ||
| + | # chkconfig syslog off | ||
| + | |||
| + | # service rsyslog start | ||
| + | # chkconfig rsyslog on | ||
| + | |||
| + | También arracamos el apache. | ||
| + | |||
| + | # service httpd start | ||
| + | # chkconfig httpd on | ||
| + | |||
| + | |||
| + | Ya tenemos el rsyslog funcionando y grabando los log’s en el mysql. | ||
| + | |||
| + | Lo siguiente será instalar el phplogcon, un frontal web que nos permitirá tener acceso de una forma cómoda a esos log’s. Vamos a instalar la version 2.4.0 ques es la última estable a fecha de hoy ( enero 2009) | ||
| + | |||
| + | |||
| + | Lo descargamos en el directorio tmp. | ||
| + | |||
| + | # cd /tmp | ||
| + | # wget http:// | ||
| + | |||
| + | Lo descomprimimos: | ||
| + | |||
| + | # tar xvzf phplogcon-2.4.0.tar.gz | ||
| + | |||
| + | Creamos una carpeta dentro de var/www para alojarlo y lo copiamos alli: | ||
| + | |||
| + | # mkdir / | ||
| + | # cp -R / | ||
| + | |||
| + | |||
| + | Nos situamos ahora en la carpeta / | ||
| + | |||
| + | # cd / | ||
| + | # copy configure.sh / | ||
| + | # ./ | ||
| + | |||
| + | Reiniciamos el apache. | ||
| + | |||
| + | # service httpd restart | ||
| + | |||
| + | |||
| + | Ahora nos vamos a un navegador e introducimos la siguiente dirección | ||
| + | |||
| + | Esto lanzará un asistente que nos guiará en la configuración del phplogcon. | ||
| + | |||
| + | ==== FAQ ==== | ||
| + | A vece son tantos lo eventos que la base de datos acaba llenando el disco. Para liberar espacio necesitamos borrar algunos logs para llo ejecutamos lo siguiente; | ||
| + | |||
| + | < | ||
| + | #mysql -u usuario -p | ||
| + | #mysql> use Syslog; | ||
| + | #mysql> DELETE FROM SystemEvents WHERE ReceivedAt < date_add(current_date, | ||
| + | #mysql> optimize table SystemEvents; | ||
| + | #mysql> exit | ||
| + | </ | ||