LOG4J Android中 [英] LOG4J in Android

查看:276
本文介绍了LOG4J Android中的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我的Java项目有很多的文件,这是使用LOG4J的。现在我想将它移植到Android平台。是否有可能重新使用code因为,它是用LOG4J函数调用??

I have Java Project with lot of files, which is using LOG4J. Now I am trying to Port it to Android platform. Is it possible to reuse the code as-it is, with LOG4J function calls??

目前的理解: 1.物业配置将无法正常工作(豆的依赖) 2.我试着用LOG4J Android和SL4J库。没有成功。

Current understanding: 1. Property configuration won't work (beans dependency) 2. I tried with LOG4J for Android and SL4J Lib. No success.

//工作。但是没有用 org.apache.log4j.Logger根= org.apache.log4j.Logger.getRootLogger(); 最后SocketAppender的appender =新SocketAppender(192.168.123.123,3333); root.addAppender(附加器);

// Working. But no use org.apache.log4j.Logger root = org.apache.log4j.Logger.getRootLogger(); final SocketAppender appender = new SocketAppender("192.168.123.123", 3333); root.addAppender(appender);

// SLF4J - 不工作 org.slf4j.Logger记录; 记录仪= LoggerFactory.getLogger(MyClass.class);

// SLF4J - Not working org.slf4j.Logger logger; logger = LoggerFactory.getLogger(MyClass.class);

// LOG4J Android的 - 不工作 ConfigureLog4J.configure(); 记录器= Logger.getLogger(MyClass.class);

// LOG4J for Android - Not working ConfigureLog4J.configure(); logger = Logger.getLogger( MyClass.class );

我缺少的东西?指针指向任何工作的例子吗?

Am I missing something?? Pointer to any working examples?

推荐答案

通过使用Android的测井log4j.jar解决。下面是示例code:

Solved by using the android-logging-log4j.jar. Here is sample code:

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;
}

}

在你的code,替换以下行:

In your code, replace below lines:

PropertyConfigurator.configure(MY_PROP_FILE); 记录器= Logger.getLogger(MyClaZZ.class);

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

使用:

记录器= ALogger.getLogger(MyClazz.class);

logger = ALogger.getLogger(MyClazz.class);

参考: http://www.adevedo.com/内容/使用-log4j的,基于android-java的应用程序

这篇关于LOG4J Android中的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆