Log4j FileNamePattern en DailyRollingFileAppender

¿Hay alguna manera de especificar un patrón para un nombre de archivo original?

Básicamente quiero hacer lo siguiente:

<param name="file" value="%d{yyyy/MM/dd HH:mm:ss}: %m%n_testlog.log"/>

¿Cómo haría para hacer esto?

Respuesta 1

Tengo un registro diario continuo pero lo hago de manera un poco diferente, usando TimeBasedRollingPolicy de log4j extras :

<log4j:configuration debug="true">
  <appender name="roll" class="org.apache.log4j.rolling.RollingFileAppender">
    <param name="append" value="true" />
    <param name="encoding" value="UTF-8" />
    <!-- The active file to log to -->
    <param name="file" value="/location/to/log/current.log />
    <rollingPolicy class="org.apache.log4j.rolling.TimeBasedRollingPolicy">
      <param name="FileNamePattern" 
             value="/location/to/log/archive/oldLog-%d{yyyy-MM-dd}.log" />
    </rollingPolicy>
    <layout class="org.apache.log4j.PatternLayout">
      <param name="ConversionPattern" value="%d{DATE} %5p %c{2} - %m%n" />
    </layout>
  </appender>
  <logger name="mypackage">
    <level value="debug" />
    <appender-ref ref="roll" />
  </logger>
</log4j:configuration>

Lo anterior está en mi código, que me basé en esta entrada en el Wiki de log4j.

Pablo

Respuesta: 2

Tengo un requisito simple Tengo una aplicación web que tiene una página de inicio de sesión, un tablero y algunas otras páginas. Si el usuario quiere abrir la aplicación en múltiples ventanas del navegador desde una sola ...

Tengo un TextView con algún texto que tiene URL. He usado Linkify para convertirlos en URL en las que se puede hacer clic: Linkify.addLinks (bodyTextView, Linkify.WEB_URLS); Sin embargo, cuando hago clic en el texto que es ...

Tengo una aplicación Java que tiene diferentes configuraciones y versiones de dependencia dependiendo de la sucursal de la compañía en la que está instalada. Entonces, lo que hice fue crear un complemento que creara un elemento en la derecha ...

Parece imposible deserializar una cadena json a un tipo con un parámetro de tipo. Quiero escribir una función como esa: public <T> Value <T> getValue (json, Class <T> clazz) {...