Android 日志管理框架 NativeLogger

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

##功能清单

状态功能默认
注解配置支持
设置TAGNLogger
设置LEVELWARN
是否捕获全局异常false
是否开启文件日志true
文件日志内容格式SimpleFormatter
日志文件存放路径/sdcard/native.logs/
日志文件过期时间1 day
日志文件打包周期1 day
格式化输出JSON支持
日志混淆-

: 已完成
: 待完成

Gradle引入

根项目build.gradle中引入mavenCentral.

allprojects {
    repositories {
        ...
        mavenCentral()
    }
}

Modulebuild.gradle中引入NLogger.

dependencies {
    compile 'com.github.hijesse:android-logger:2.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


进阶用法

注意压缩日志文件的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);
            }
        });

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

日志文件路径

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


转载请注明出处:http://blog.csdn.net/l2show/article/details/52504653

评论 12
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值