in

Registrador de Java – Javatpoint

java logger

En Java, Inicio sesión es una característica importante que ayuda a los desarrolladores a rastrear los errores. Java es el lenguaje de programación que viene con el Inicio sesión Acercarse. Proporciona un API de registro que se introdujo en la versión Java 1.4. Proporciona la capacidad de capturar el archivo de registro. En esta sección, vamos a profundizar en el API de Java Logger. Además, cubriremos nivel de registro, componentes, controladores o anexos de registro, formateadores o diseños de registro, clase Java Logger,

¿Qué es iniciar sesión en Java?

En Java, Inicio sesión es una API que brinda la capacidad de rastrear los errores de las aplicaciones. Cuando una aplicación genera la llamada de registro, Logger registra el evento en LogRecord. Después de eso, envía a los manejadores o anexos correspondientes. Antes de enviarlo a la consola o al archivo, los anexos formatean ese registro mediante el formateador o los diseños.

Necesidad de registro

  • Proporciona la información de seguimiento completa de la aplicación.
  • Registra la falla crítica si ocurre alguna en una aplicación.

Componentes de la tala

Los componentes de Java Logging utilizados por los desarrolladores para crear registros y pasan estos registros al destino correspondiente en el formato adecuado. Existen los siguientes tres componentes principales de la API de registro de Java:

  • Madereros
  • Controladores de registro o appender
  • Formateadores o diseños de registro

Madereros

El código utilizado por el cliente envía la solicitud de registro a los objetos Logger. Estos objetos de registrador realizan un seguimiento de un nivel de registro que le interesa, también rechazan las solicitudes de registro que están por debajo de este nivel.

En otras palabras, es responsable de capturar los registros. Después de eso, pasa los registros al appender correspondiente.

Generalmente, los objetos Loggers se denominan entidades. Las entidades separadas por el operador de punto. Por ejemplo, java.net, java.awt, etc.

El espacio de nombres lo gestiona LogManager y se representa en orden jerárquico. Debe estar alineado con el espacio de nombres del paquete. Pero no es obligatorio seguirlo exactamente. También podemos crear un registrador anónimo, pero no aparecerá en el espacio de nombres compartido.

En el espacio de nombres de registro, el registrador busca los registradores principales. Es el más cercano al antepasado existente en el espacio de nombres de registro. Recuerde que no existe un padre para el registrador raíz. Hereda los diversos atributos de su padre, tales como:

  • Niveles de registro: Si se especifica como nulo, atraviesa hacia el padre y busca el primer nivel no nulo.
  • Manejadores: un registrador registrará cualquier mensaje a los controladores del padre de forma recursiva hasta el árbol.
  • Nombres de paquetes de recursos: Si algún registrador tiene un nombre de paquete de recursos nulo, hereda cualquier nombre de paquete de recursos para su padre de forma recursiva hasta el árbol.

Controladores de registro o appender

La API de registro de Java nos permite utilizar varios controladores en un registrador de Java y los controladores procesan los registros en consecuencia. Existen cinco controladores de registro en Java:

  • StreamHandler: Escribe el mensaje de registro formateado en un OutputStream.
  • ConsoleHandler: Escribe todos los mensajes de registro formateados en la consola.
  • FileHandler: Escribe el mensaje de registro en un solo archivo o en un grupo de archivos de registro rotativos en formato XML.
  • SocketHandler: Escribe el mensaje de registro en los puertos TCP remotos.
  • MemoryHandler: Maneja los registros de registro del búfer que residen en la memoria.

En la API de registro de Java, FileHandler y ConsoleHandler son los dos controladores proporcionados por defecto. Al extender el Manipulador class o cualquier subclases (como MemoryHandler, StreamHandler, etc.), podemos crear la nuestra propia y también personalizar la clase Handler. la selección de los anexos depende de los requisitos de registro. Si no está seguro de qué apéndices utilizar, puede afectar el rendimiento de la aplicación.

Ejemplo de controlador de registro de Java personalizado

Formateadores o diseños de registro

Los formateadores o diseños de registro se utilizan para formatear los mensajes de registro y convertir datos en eventos de registro. Java SE proporciona la siguiente clase de dos formateadores estándar:

  • SimpleFormatter
  • XMLFormatter

SimpleFormatter

Genera un mensaje de texto que tiene información general. Escribe resúmenes de mensajes de registro legibles por humanos. ConsoleHandler usa la clase para imprimir el mensaje de registro en la consola. Por ejemplo, el siguiente mensaje de la consola muestra

XMLFormatter

XMLFormatter genera el mensaje de registro en formato XML. Escribe la información detallada de la estructura XML. Es el formateador predeterminado para FileHandler. Las entradas del registro tienen el siguiente aspecto:

Al extender el Formateador class, podemos personalizar y crear nuestra propia clase Formatter. Podemos usar la clase personalizada con cualquier controlador.

Si está utilizando marcos de registro, puede utilizar otros diseños como HTML, JSON, Syslog, texto sin formato, etc.

Ejemplo de clase de formateador personalizado

Niveles de registro de Java

Muestra una guía aproximada de la importancia y urgencia del mensaje de registro y también controla los detalles del registro. Cada objeto de nivel de registro tiene un valor entero. El valor más alto indica prioridades más altas. Hay un total de nueve niveles, Siete registros estándar, y dos niveles de registro especiales. Los primeros tres niveles de registro FINEST, FINER y FINE representan la información de seguimiento detallada que incluye lo que está sucediendo en la aplicación y lo que sucedió en la aplicación.

Registrador de Java

La siguiente tabla muestra el nivel y el valor que le corresponde.

S. No. Niveles de registro estándar Nivel Valor Usado para
1 MEJOR 300 Información para desarrolladores especializados
2 MÁS FINO 400 Información detallada para desarrolladores
3 MULTA 500 Información general para desarrolladores
4 CONFIG 700 Información de configuración
5 INFO 800 Información general
6 ADVERTENCIA 900 Problema potencial
7 GRAVE 1000 Representa una falla grave
8 Niveles de registro especiales APAGADO Entero.MAX_VALUE Apaga el registro
9 TODOS Entero.MIN_VALUE Captura todo

Analicemos cada nivel de registro en detalle.

  • MEJOR: Representa el mensaje de seguimiento altamente detallado.
  • MÁS FINO: Representa el mensaje de seguimiento detallado que incluye las excepciones generadas por la aplicación y los detalles de registro del método.
  • MULTA: Representa el mensaje más importante de todos ellos.
  • CONFIG: Representa la información relacionada con la configuración de la aplicación. La información puede incluir cuánto espacio en disco y memoria.
  • INFO: La información del usuario utilizada por el administrador u otras autoridades.
  • ADVERTENCIA: Ocurre debido a un error del usuario. Si un usuario ingresa las credenciales incorrectas, la aplicación muestra una advertencia.
  • GRAVE: Se produce cuando la aplicación muestra algunos errores críticos o terribles. En tales casos, la aplicación no puede continuar. El ejemplo popular de un nivel severo es la falta de memoria y la falta de disponibilidad de la base de datos.

Configuración del nivel de registro

Podemos usar la siguiente declaración para configurar el nivel de registro.

La declaración anterior establece el nivel de registro en CONFIG y proporciona la información relacionada con la configuración de la aplicación. También genera el registro desde el nivel especificado a los niveles mayores.

Supongamos que hemos especificado el nivel de registro para MULTA, entonces el registro generado será CONFIG, INFO, ADVERTENCIA, y GRAVE.

También podemos establecerlo en el archivo de configuración simplemente cambiando la configuración del Logger, como se muestra a continuación:

Registro de eventos

Para registrar eventos en Java, debe asegurarse de asignar un nivel para archivar fácilmente los eventos. Para asignar un nivel y mencionar un mensaje, podemos utilizar los métodos que se indican a continuación:

Método 1:

En la declaración anterior, hemos especificado el nivel INFO y el mensaje que se imprimirá es, Mensaje en pantalla.

Método 2:

Logger en Java registra solo eventos que están en o por encima del nivel INFO, para asegurarnos de esto, usamos el setLevel () método.

Administrador de registros de Java

En Java, LogManager es una clase que pertenece al paquete java.util.logging. Realiza un seguimiento de la configuración de registro global, crea y mantiene las instancias del registrador. También podemos usarlo para establecer su propia configuración específica de la aplicación. Incluye las siguientes dos cosas:

  • El espacio de nombres jerárquico de named Logger.
  • Un grupo de propiedades de control de registro que contiene el archivo de configuración.

El LogManager se puede recuperar mediante el método getLogManager (). Se inicializa automáticamente cuando creamos LogManager. Esta propiedad permite que las aplicaciones contenedoras (como los contenedores EJB) sustituyan su propia subclase de LogManager en lugar de la clase predeterminada.

Crear nuevo registrador en Java

Podemos crear fácilmente Logger en Java usando el getLogger () método. Encuentra un registrador si ya hay un registrador definido y devuelve el mismo registrador; de lo contrario, crea un nuevo registrador para un subsistema con nombre.

Si crea un nuevo registrador, su nivel de registro se configurará según la configuración de LogManager, también configura el LogManager y envía la salida del registro a sus controladores. Se registrará en el espacio de nombres global de LogManager.

Sintaxis:

Analiza el nombre del registrador como parámetro. El nombre del registrador debe estar separado por el operador de punto (.) Y debe basarse en el Nombre del paquete o nombre de la clase del subsistema. Por ejemplo, java.awt, java.net, etc.

Devuelve un registrador adecuado y lanza Excepción de puntero nulo si no especificamos el nombre del registrador.

Ejemplo:

Clase Java Logger

Java proporciona una clase Registrador que pertenece al paquete java.util.logging. Contiene los métodos relacionados con el registro.

  • Se utiliza para registrar mensajes para un componente de aplicación específico.
  • Cada registrador rastrea al registrador principal (el antepasado existente más cercano) en el espacio de nombres del registrador.
  • Los madereros también tienen un nivel asociado. Si el nivel es nulo, hereda el nivel de su registrador padre.
  • También tiene un nombre ResourceBundle asociado. Se utiliza para localizar mensajes de registro. Al igual que el nivel de registro, si no tiene su propio nombre ResourceBundle, hereda el nombre ResourceBundle de su padre.
  • Los mensajes de registro se reenvían al objeto Handler que está registrado. Además, el controlador reenvía el mensaje a una variedad de destinos, como archivos, sistema operativo, registros y consola, etc.
  • Todos los métodos del Logger son seguros para múltiples subprocesos.

Los…

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Lista general completa de formularios – javatpoint

u6X88UWxqDBRjWUWKaXhUe 1200 80

El kit de carga inalámbrica Go de Lenovo es como la carga Qi para su computadora portátil