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:
- Imprimir el contenido de un paquete a Logcat?
- Facebook SSO y registro de sitio de terceros en un solo paso?
- Android: graba audio que se está reproduciendo desde el dispositivo a la toma de auriculares
- SLF4J varargs interpreta la primera cadena como marcador
- Androide AudioRecord lectura de amplitud de MIC
- La configuración de la propiedad no funcionará (dependencia de beans)
- 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?
- ¿Por qué no debería usar System.out.println () en android
- Creación y almacenamiento de archivos de registro en dispositivos en Android
- ¿Cómo implementar el registro / registrarse en android?
- ¿Cómo registrar el cuerpo de solicitud y respuesta con Retrofit-Android?
- Android desactivar "SignalStrength", etc para iniciar sesión LogCat
- Grabar sonido Y reproducir sonido modulado En Android?
- Cómo depurar Android inEclipse
- Phonegap Media API - Grabar y reproducir audio - Android
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.
- Android Studio Project dice que el proyecto ya está en GitHub a pesar de que he eliminado el repositorio.
- Personalización del diseño de una pantalla PreferenceScreen