LOG4J en Android

Tengo el proyecto de Java con la porción de archivos, que está utilizando LOG4J. Ahora estoy tratando de llevarlo a la plataforma Android. ¿Es posible reutilizar el código tal y como está, con las llamadas de función LOG4J?

Comprensión actual:

  1. La configuración de la propiedad no funcionará (dependencia de beans)
  2. He intentado con LOG4J para Android y SL4J Lib. Sin éxito.

Trabajando. Pero no hay uso

org.apache.log4j.Logger root = org.apache.log4j.Logger.getRootLogger(); final SocketAppender appender = new SocketAppender("192.168.123.123", 3333); root.addAppender(appender); // SLF4J - Not working org.slf4j.Logger logger; logger = LoggerFactory.getLogger(MyClass.class); // LOG4J for Android - Not working ConfigureLog4J.configure(); logger = Logger.getLogger( MyClass.class ); 

¿¿Me estoy perdiendo de algo?? ¿Puntero a cualquier ejemplo de trabajo?

Resuelto mediante el uso de android-logging-log4j.jar .

Aquí está el ejemplo de código:

 public class ALogger { public static org.apache.log4j.Logger getLogger(Class clazz) { final LogConfigurator logConfigurator = new LogConfigurator(); logConfigurator.setFileName(Environment.getExternalStorageDirectory().toString() + File.separator + "log/file.log"); logConfigurator.setRootLevel(Level.ALL); logConfigurator.setLevel("org.apache", Level.ALL); logConfigurator.setUseFileAppender(true); logConfigurator.setFilePattern("%d %-5p [%c{2}]-[%L] %m%n"); logConfigurator.setMaxFileSize(1024 * 1024 * 5); logConfigurator.setImmediateFlush(true); logConfigurator.configure(); Logger log = Logger.getLogger(clazz); return log; } } 

En su código, reemplace las líneas siguientes:

 PropertyConfigurator.configure(MY_PROP_FILE); logger = Logger.getLogger( MyClaZZ.class ); 

Con:

 logger = ALogger.getLogger(MyClazz.class); 

Mi respuesta, que presenta un acercamiento más futuro-y de pensamiento lateral ;-).

Yo estaba usando android-logging-log4j yo mismo durante algún tiempo, pero estaba causando advertencias masivas (que en realidad parecía errores) mientras dexing.

El jar log4j también tenía un montón de cosas innecesarias en él, como el Chainsaw registro de interfaz de usuario (escrito en Swing, por lo tanto inútil en Android).

He cambiado al logback a través de https://github.com/tony19/logback-android . Hasta ahora estoy feliz. No mas spam masivo mientras construyes.

Además, parece que log4j 1.x ya no está desarrollado, mira https://github.com/apache/log4j/tree/trunk – último commit hace muchos años.

Y el regreso parece ser el sucesor.

  • Mensaje de registro en Android: / dev / pmem: Unmapping buffer base
  • Android: el método i (String, String) no está definido para el tipo Log
  • Registro de Android con Crashlytics
  • Logging mejores prácticas y pensamientos
  • Visor de registro de escritorio de Android
  • ¿Cómo puedo escribir salidas en el registro de Android?
  • Android ocultar registros en la aplicación al cargar en el mercado
  • BaseLayerAndroid creando mensajes de registro de destrucción
  • Android: aplicación con el informe de volcado de bloqueo
  • Android: graba vídeo en la misma orientación independientemente de la orientación del dispositivo
  • Android, ¿Log reduce la velocidad de la aplicación?
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.