Los ficheros de registro o logs, permiten almacenar información sobre las distintas acciones que realiza la aplicación. Estos ficheros permiten realizar un seguimiento detallado de lo que ocurre en el sistema.
Java incorpora la librería java.util.logging
que permite utilizar la clase logger
para llevar un control de todos los eventos que ocurren a lo largo de la ejecución de la aplicación
Para trabajar con ficheros de registro en Java debemos realizar los siguientes pasos:
- Importamos la librería:
import java.util.logging.*;
- Buscar o crear el logger que queremos utilizar.
Logger logger = Logger.getLogger("MyLog");
- Una vez definido el logger debemos asociarlo a un fichero log:
FileHandler fh = new FileHandler("c:\\MyLogFile.log", true);
dondeMyLogFile.log
es el fichero donde se guardan el registro de la aplicación. Y la variabletrue
indica que los registros se añadan a los ya existentes. Si establecefalse
, el fichero se reinicia. - Establecer si queremos visualizar los mensajes de log por pantalla. En caso de no querer ver los mensajes por pantalla lo indicamos de la siguiente forma:
logger.setUseParentHandlers(false);
- Establecer el formato del fichero. Los tipos de formato pueden ser:
- Fichero de texto simple (
SimpleFormatter
).
SimpleFormatter formatter = new SimpleFormatter();
fh.setFormatter(formatter);
- Fichero en formato XML (
XMLFormatter
).XMLFormatter formatter = new XMLFormatter();
- Fichero de texto simple (
- Establezco el nivel de seguridad de las actividades que quiero registrar.
Niveles de seguridad de los registros Nivel Importancia SEVERE 7 (Máxima) WARNING 6 INFO 5 CONFIG 4 FINE 3 FINER 2 FINEST 1 (Mínima)
Por ejemplo, si deseo registrar sólo los registros más graves ejecutamos
logger.setLevel(Level.SEVERE);
Además, de los niveles anteriores, si queremos registrar todos los eventos utilizaremos:
logger.setLevel(Level.ALL);
Y si no queremos reegistrar ningún evento, ejecutaremos:
logger.setLevel(Level.OFF);
Una vez inicializado correctamente el logger
, el siguiente paso es ir registrando en la aplicación los diferentes registros. Por ejemplo, para añadir un registro de nivel de importancia medio (WARNING) lo creamos de la siguiente forma:
logger.log(Level.WARNING,"Mi primer log");