En esta sección se explica cómo crear un publicador de auditoría personalizado nuevo en Java.
Los publicadores personalizados de consola, archivo y JDBC que se suministran con Identity Manager implementan la interfaz AuditLogPublisher. El código fuente de estos publicadores se halla en el kit REF. La documentación de las interfaces también está disponible en el kit REF en formato Javadoc. (Consulte los detalles de la interfaz en el Javadoc.)
El kit REF (Resource Extension Facility) se encuentra en el directorio /REF del CD del producto o en la imagen de instalación.
Animamos a los desarrolladores a que amplíen la clase AbstractAuditLogPublisher. Esta clase analiza la configuración y se asegura de que todas las opciones necesarias se hayan suministrado al publicador. (Consulte los publicadores de ejemplo en el kit REF.)
Los publicadores necesitan un constructor no-arg.
Un publicador sigue el ciclo de vida siguiente:
Se instancia el objeto.
El Formateador (en su caso) se define con el método setFormatter() .
Se suministran las opciones con el método configure( Map).
Se publican los eventos con el método publish( Map, LoggingErrorHandler).
Se termina el publicador con el método shutdown().
Los pasos 1-3 se ejecutan cuando se inicia Identity Manager y siempre que se actualiza la configuración de auditoría. El paso 4 no se produce si no se genera ningún evento de auditoría antes de llamar al cierre.
El método configure(Map ) sólo se llama una vez en el mismo objeto de publicador. (No es necesario que el publicador se prepare para los cambios de configuración puntuales.) Una vez actualizada la configuración de auditoría, los publicadores actuales se cierran y se crean los nuevos.
El método configure() del paso 3 puede lanzar una excepción WavesetException . En tal caso, no se tendrá en cuenta el publicador ni se efectuarán más llamadas a él.
Los publicadores pueden tener varias opciones o ninguna. El método getConfigurationOptions() devuelve la lista de opciones que admite el publicador. Las opciones se encapsulan mediante la clase PublisherOption (consulte los detalles de esta clase en el Javadoc). El visor de configuración de auditoría invoca este método cuando genera la interfaz de configuración para el publicador.
Identity Manager configura el publicador con el método configure( Map) al iniciarse el servidor y cuando se modifica la configuración de auditoría.
El kit REF incluye el código fuente de los siguientes formateadores:
XmlFormatter. Asigna a los eventos de auditoría formato de cadenas XML.
UlfFormatter. Asigna a los eventos de auditoría formato de registro universal (ULF). Sun Application Server utiliza este formato.
Los formateadores deben implementar la interfaz AuditRecordFormatter. Además, necesitan un constructor no-arg. Consulte los detalles en el Javadoc incluido con el kit REF.
El atributo de auditoría del objeto #ID#Configuration:SystemConfiguration ofrece una lista con todos los publicadores y formateadores registrados. En la interfaz de usuario de configuración de auditoría sólo están disponibles esos publicadores y formateadores.