Android 使用log4j管理日志
Posted 小zhong
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Android 使用log4j管理日志相关的知识,希望对你有一定的参考价值。
log4j是我在Java开发中比较常用的日志管理工具了,同样的我们也可以在android中使用。在Android中不需要配置文件进行配置,一切都在代码中完成。
一、下载jar包:
log4j-1.2.17.jar
android-logging-log4j-1.0.3.jar
二、在AndroidManifest.xml中配置文件读取权限
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
三、使用方法1:
public class MainActivity extends AppCompatActivity
private Logger testLogger;
@Override
protected void onCreate(Bundle savedInstanceState)
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
configLog();
testLogger.debug("log4j test in android !");//打印需要的内容
public void configLog()
// 日志配置设置
final LogConfigurator logConfigurator = new LogConfigurator();
// 配置日志文件路径
logConfigurator.setFileName(Environment.getExternalStorageDirectory() + File.separator + "log4j_test.txt");
logConfigurator.configure();
testLogger = Logger.getLogger("Log4jTest");
四:使用方法2:
import android.os.Environment;
import org.apache.log4j.Level;
import java.io.File;
import java.util.Date;
import de.mindpipe.android.logging.log4j.LogConfigurator;
/**
* 日志设置
*/
public class ConfigureLog4J
//日志级别优先度从高到低:OFF(关闭),FATAL(致命),ERROR(错误),WARN(警告),INFO(信息),DEBUG(调试),ALL(打开所有的日志,我的理解与DEBUG级别好像没有什么区别得)
//Log4j建议只使用FATAL ,ERROR ,WARN ,INFO ,DEBUG这五个级别。
// "yyyy-MM-dd");// 日志的输出格式
public static void configure()
final LogConfigurator logConfigurator = new LogConfigurator();
Date nowtime = new Date();
// String needWriteMessage = myLogSdf.format(nowtime);
//日志文件路径地址:SD卡下myc文件夹log文件夹的test文件
String fileName = Environment.getExternalStorageDirectory()
+ File.separator + "myc" + File.separator + "log"
+ File.separator + "test.log";
//设置文件名
logConfigurator.setFileName(fileName);
//设置root日志输出级别 默认为DEBUG
logConfigurator.setRootLevel(Level.DEBUG);
// 设置日志输出级别
logConfigurator.setLevel("org.apache", Level.INFO);
//设置 输出到日志文件的文字格式 默认 %d %-5p [%c2]-[%L] %m%n
logConfigurator.setFilePattern("%d %-5p [%c2]-[%L] %m%n");
//设置输出到控制台的文字格式 默认%m%n
logConfigurator.setLogCatPattern("%m%n");
//设置总文件大小
logConfigurator.setMaxFileSize(1024 * 1024 * 5);
//设置最大产生的文件个数
logConfigurator.setMaxBackupSize(1);
//设置所有消息是否被立刻输出 默认为true,false 不输出
logConfigurator.setImmediateFlush(true);
//是否本地控制台打印输出 默认为true ,false不输出
logConfigurator.setUseLogCatAppender(true);
//设置是否启用文件附加,默认为true。false为覆盖文件
logConfigurator.setUseFileAppender(true);
//设置是否重置配置文件,默认为true
logConfigurator.setResetConfiguration(true);
//是否显示内部初始化日志,默认为false
logConfigurator.setInternalDebugging(false);
logConfigurator.configure();
在主acrivity中使用以下代码即可
//加载配置
ConfigureLog4J configureLog4J=new ConfigureLog4J();
configureLog4J.configure();
//初始化 log
Logger log=Logger.getLogger(this.getClass());
//写 info 日志
log.info("不知道呀就是测试一下啊");
以上是关于Android 使用log4j管理日志的主要内容,如果未能解决你的问题,请参考以下文章