Esta regla detecta el uso de las clases y los métodos org.apache.juli.logging.Log y org.apache.juli.logging.LogFactory. Estos métodos de registro cronológico no están disponibles en WebSphere tradicional o Liberty y deben migrarse.
Hay un arreglo rápido disponible en el explorador de orígenes. Sustituye org.apache.juli.logging.LogFactory por java.util.logging.Logger. También sustituye los métodos de registro cronológico de Apache Tomcat por el método Java Logger.log(Level, message).
Algunos de los métodos de Apache Tomcat se correlacionan directamente con un java.util.logging.Level definido. Para los niveles que no se correlacionan directamente, puede personalizar el nivel de registro en el diálogo Configuración de análisis. Asimismo, el arreglo rápido actualiza las sentencias de importación de clases.
Las sustituciones del arreglo rápido se muestran en esta tabla de correlación. Los métodos de registro que pasan Throwable como segundo parámetro se correlacionan de la misma manera que sus contrapartidas en la tabla siguiente.
| Método org.apache.juli.logging | Método java.util.logging | Configurable |
|---|---|---|
| LogFactory.getLog(Class.class) | Logger.getLogger(Class.class.getName()) | No |
| LogFactory.getLog("log name") | Logger.getLogger("log name") | No |
| LogFactory.getInstance(Class.class) | Logger.getLogger(Class.class.getName()) | No |
| LogFactory.getInstance("log name") | Logger.getLogger("log name") | No |
| Log.fatal("mgs") | Logger.log(WsLevel.FATAL, "msg") | Sí |
| Log.error("msg") | Logger.log(Level.SEVERE, "msg") | Sí |
| Log.warn("msg") | Logger.log(Level.WARNING, "msg") | No |
| Log.info("msg") | Logger.log(Level.INFO, "msg") | No |
| Log.debug("msg") | Logger.log(WsLevel.DETAIL, "msg") | Sí |
| Log.trace("msg") | Logger.log(Level.FINE, "msg") | Sí |
Por ejemplo, la creación de la instancia de clase de registro:
| Log log = LogFactory.getLog(MyClass.class); |
| Logger log = Logger.getLogger(MyClass.class.getName()); |
Este ejemplo muestra una llamada a org.apache.juli.logging.Log.error() con Throwable como el segundo parámetro.
|
catch (Exception e) { log.error("Some error message", e); } |
|
catch (Exception e) { log.log(Level.SEVERE, "Some error message", e); } |
org.apache.juli.logging.Log tienen
parámetros del tipo java.lang.Object.
Los métodos de la clase
java.util.logging.Logger tienen parámetros del tipo
java.lang.String.
Si utiliza parámetros cuyo tipo no sea
java.lang.String, debe realizar una migración manual adicional para
añadir toString() a los parámetros después de ejecutar el arreglo
rápido a fin de migrar desde org.apache.juli.logging.Log a
java.util.logging.Logger.
Para obtener información adicional, consulte la siguiente documentación Java: