android日记管理,Android 日志管理框架 NativeLogger

日志是任何项目开发中的必须组件,它可以记录下来系统的行为,帮助开发者排错,优化系统性能调整系统行为等.既然日志可以帮助我们做很多分析,那么开发者肯定是有很多定制需求的,例如不同环境过滤不同等级的log,格式化输出,输出到文件,打包日志上传分析等等.这里就针对Android平台开发一套日志框架.后续将持续完善.

github地址:https://github.com/HiJesse/Android-NativeLogger

功能清单

状态

功能

默认

ic_done_black_18dp_1x.png

设置TAG

NLogger

ic_done_black_18dp_1x.png

设置LEVEL

WARN

ic_done_black_18dp_1x.png

是否捕获全局异常

false

ic_done_black_18dp_1x.png

是否开启文件日志

true

ic_done_black_18dp_1x.png

文件日志内容格式

SimpleFormatter

ic_done_black_18dp_1x.png

日志文件存放路径

/sdcard/native.logs/

ic_done_black_18dp_1x.png

日志文件过期时间

1 day

ic_done_black_18dp_1x.png

日志文件打包周期

1 day

ic_done_will_black_18dp_1x.png

适配Android 6.0

-

ic_done_will_black_18dp_1x.png

格式化输出JSON

-

ic_done_will_black_18dp_1x.png

格式化输出XML

-

ic_done_will_black_18dp_1x.png

日志混淆

-

ic_done_black_18dp_1x.png : 已完成

ic_done_will_black_18dp_1x.png : 待完成

如何引入

Gradle

repositories {

jcenter()

maven { url "https://raw.githubusercontent.com/HiJesse/mvn/master/repository/" }

}

dependencies {

compile "cn.jesse.android:nativelogger:1.0.0"

}

如何使用

简单用法-只使用基础的Console log

NLogger.d("debug");

NLogger.i("MainActivity", "type1");

NLogger.w("MainActivity", "%s", "type2");

NLogger.d("MainActivity", "%s%d%s", "type", 3, "finish");

NLogger.e("uncaughtException", throwable);

日志输出

相当于直接使用Android SDK中的Log

default_log.png

进阶用法

注意压缩日志文件的onZip回调为子进程

NLogger.getInstance()

.builder()

.tag("APP")

.loggerLevel(LoggerLevel.DEBUG)

.fileLogger(true)

.fileDirectory(getApplicationContext().getFilesDir().getPath() + "/logs")

.fileFormatter(new SimpleFormatter())

.expiredPeriod(3)

.catchException(true, new CrashWatcher.UncaughtExceptionListener() {

@Override

public void uncaughtException(Thread thread, Throwable ex) {

NLogger.e("uncaughtException", ex);

android.os.Process.killProcess(android.os.Process.myPid());

}

})

.build();

NLogger.d("debug");

NLogger.i("MainActivity", "type1");

NLogger.w("MainActivity", "%s", "type2");

NLogger.d("MainActivity", "%s%d%s", "type", 3, " finish");

NLogger.zipLogs(new IFileLogger.OnZipListener() {

@Override

public void onZip(boolean succeed, String target) {

if (succeed)

NLogger.i("zip", "succeed : " + target);

}

});

日志输出

配置功能清单中所有属性,并且使用到了压缩日志文件的方法

custom_log.png

日志文件路径

custom_log.png

解压2016-09-10.zip后得到日志文件

custom_file_log.png

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值