Registradores
Las aplicaciones y los componente de tiempo de ejecución utilizan los registradores para capturar sucesos de mensajes y de rastreo.
Cuando se producen situaciones que son importantes ya sea debido a un cambio de estado, por ejemplo, cuando un servidor termina de iniciarse, o porque se detecta un problema potencial, por ejemplo, si se ha excedido el tiempo de espera de un recurso, se escribe un mensaje en los registros cronológicos. En los escenarios de depuración se registran sucesos de rastreo, ya que el desarrollador necesita una visión clara de lo que ocurre en cada componente para entender cuál es el problema. Los sucesos registrados a menudo son los únicos sucesos disponibles cuando se detecta un problema por primera vez, y se utilizan en la recuperación y en la resolución del problema.
Los registradores se organizan de forma jerárquica. Cada registrador tiene cero o más registradores hijo.
Los registradores se pueden asociar con un paquete de recursos. Si se especifica, el registrador utiliza el paquete de recursos para localizar los mensajes registrados en él. Si no se especifica el paquete de recursos, el registrador utiliza el mismo paquete de recursos que su padre.
Puede configurar los registradores con un nivel. Si se especifica, el registrador compara el nivel con los sucesos entrantes. Los sucesos menos graves que el nivel establecido para el registrador se ignorarán. Si no se especifica el nivel, el registrador toma el nivel utilizado por su padre. El nivel predeterminado para los registradores es Level.INFO.
Los registradores pueden tener cero o más manejadores conectados. Si se proporcionan, todos los sucesos registrados en el registrador se pasan a los manejadores conectados. Los manejadores registran sucesos en destinos de salida como, por ejemplo, archivos de registros cronológicos o sockets de red. Cuando un registrador termina de analizar un suceso registrado en todos los manejadores conectados a ese registrador, pasa el suceso a los manejadores conectados a los padres del registrador. Este proceso se detiene si un registrador padre se ha configurado para que no utilice sus manejadores padre. Los manejadores en WebSphere Application Server están conectados con el registrador raíz. Establezca la propiedad de registrador useParentHandlers como false para evitar que el registrador pueda escribir sucesos en los manejadores que se encuentren en un nivel superior en la jerarquía.
Los registradores pueden tener un filtro. Si se proporciona, el filtro se invoca para cada suceso entrante e indica al registrador si tiene que ignorarlo o no.
Las aplicaciones interactúan directamente con los registradores para registrar sucesos. Para obtener o crear un registrador, se hace una llamada al método Logger.getLogger con un nombre para el registrador. Normalmente, el nombre del registrador es el nombre de clase cualificado del paquete o el nombre del paquete con el que se utiliza el registrador. El espacio de nombres del registrador jerárquico se crea automáticamente utilizando los puntos del nombre del registrador. Por ejemplo, el registrador com.ibm.websphere.ras tiene un registrador padre com.ibm.websphere, que tiene un padre com.ibm. El padre situado en el nivel superior de la jerarquía se conoce como registrador raíz. Este registrador raíz se crea durante la inicialización. El registrador raíz es el padre del registrador com.
Los registradores se estructuran en jerarquías. Todos los registradores tienen un padre, excepto el registrador raíz. Todos los registradores pueden tener 0 o más hijos. Un registrador hereda los manejadores de registros cronológicos, los nombres de paquetes de recursos y los valores de los filtros de sucesos de su padre en la jerarquía. La jerarquía de los registradores está gestionada por la función LogManager.
Los registradores crean registros de los registros cronológicos. Un registro del registro cronológico es el objeto contenedor para los datos de un suceso. Los filtros, los manejadores y los formateadores utilizan este objeto en la infraestructura de registro cronológico.
El registrador proporciona diversos conjuntos de métodos para la generación de mensajes de registros cronológicos. Algunos métodos log toman un nivel y la información necesaria para construir un mensaje. Otros métodos logp (registro cronológico preciso) más complejos permiten al llamante pasar los atributos de nombre de clase y de método además del nivel y de la información de mensaje. Los métodos logrb (registro cronológico con paquete de recursos) añaden la posibilidad de especificar un paquete de recursos además del nivel, información de mensaje, nombre de clase y nombre de método. Utilice métodos como, por ejemplo, severe, warning, fine, finer y finest para registrar un mensaje en un nivel determinado. Para obtener más información sobre las anotaciones cronológicas y cómo utilizarlas en las aplicaciones, consulte Utilización del registro cronológico de Java en una aplicación. Si desea una lista completa de métodos, consulte la documentación de java.util.logging en http://docs.oracle.com/javase/1.4.2/docs/api/index.html.