Wildfly Preview 25.0.1.Final no puede establecer la codificación de registro correcta.
Estoy tratando de configurar el registro de eventos para un servicio REST que se ejecuta en WildFly. Tengo este mensaje de registro simple para una petición GET en un recurso:
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
-----
log.info("Inicia petición GET para la fecha {}", fecha_str);
Pero en la consola de WildFly obtengo lo siguiente:
10:24:33,826 INFO [es.bocm.numbot.rest.numbot.NumbotResource] (default task-1) Inicia petición GET para la fecha 1923-05-10
Obtengo la codificación correcta al ejecutar las pruebas de unidad localmente, por lo que no creo que haya un problema con la configuración de mi proyecto. Estas son las partes relevantes de mi pom.xml:
<properties>
<project.build.sourceencoding>UTF-8</project.build.sourceencoding>
----------
<dependency>
<groupid>org.slf4j</groupid>
<artifactid>slf4j-api</artifactid>
<version>1.7.32</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupid>org.slf4j</groupid>
<artifactid>slf4j-simple</artifactid>
<version>1.7.32</version>
<scope>provided</scope>
</dependency>
</properties>
y esto es lo que agregué al archivo standalone.xml:
<logger category="es.bocm.numbot">
<level name="DEBUG"></level>
</logger>
Intenté agregar lo siguiente:
<encoding value="UTF-8"></encoding>
al console-handler que está definido por defecto debajo de:
<subsystem xmlns="urn:jboss:domain:logging:8.0">
pero parece que empeora aún más las cosas:
10:32:04,488 INFO [es.bocm.numbot.rest.numbot.NumbotResource] (default task-1) Inicia petición GET para la fecha 1923-05-10
Lo único extraño que noto en la salida de WildFly durante el inicio es:
Handler java.util.logging.ConsoleHandler is not defined
no tiene ni siquiera la marca de tiempo ni el resto de los datos, es solo este mensaje.
davy.ai
Solución para configurar el registro de eventos para un servicio REST que se ejecuta en Wildfly
Para configurar el registro de eventos para un servicio REST que se ejecuta en Wildfly, es necesario seguir algunos pasos:
Verificar la configuración del proyecto
Primero, verifique la configuración del proyecto, especialmente la codificación. Asegúrese de que se esté utilizando la codificación correcta.
Actualizar el archivo pom.xml
Actualice el archivo pom.xml con las dependencias del registrador necesarias. En este caso, se utiliza el registrador org.slf4j.
Actualizar el archivo standalone.xml
Agregue la categoría del registrador requerida en el archivo standalone.xml.
Agregar valor de codificación
Agregue el valor de codificación UTF-8 al controlador de consola definido por defecto bajo el espacio de nombres de subsistema.
Error “Handler java.util.logging.ConsoleHandler no está definido”
En caso de que aparezca el error “Handler java.util.logging.ConsoleHandler no está definido”, verifique la configuración del registro de eventos en el archivo standalone.xml.
Intentar ejecutar la aplicación
Intente ejecutar la aplicación y verifique la consola de Wildfly para ver si el mensaje de registro de eventos es correcto. Si hay algún problema, intente depurar la aplicación con diferentes configuraciones.