Logger日志库优化你的日志打印

在我们平时开发中,都要进行调试或者打log测试代码逻辑。那么打log日志的时候,谁都想自己的日志更加漂亮,一目了然,那么这里就有一款漂亮的log日志库——Logger。

Logger的Github主页:https://github.com/orhanobut/logger

官方描述:Simple, pretty and powerful logger for android

Logger能打印的信息包括:

  • 线程的信息
  • 类的信息
  • 方法的信息
  • 将 JSON 文本人性化输出
  • 将换行符人性化输出
  • 简洁的输出
  • 从日志跳转到源码
1.引用:
implementation 'com.orhanobut:logger:2.2.0'
2.初始化
Logger.addLogAdapter(new AndroidLogAdapter());
3.普通使用
        Logger.d("debug")
        Logger.e("error")
        Logger.w("warning")
        Logger.v("verbose")
        Logger.i("information")
        Logger.wtf("What a Terrible Failure")

这里是对应的各个级别的样式:


4.打印json数据或xml数据

这里打印json数据:

        Logger.json("[{\n" +
                "\t\"id\": 110000,\n" +
                "\t\"name\": \"北京市\"\n" +
                "}, {\n" +
                "\t\"id\": 120000,\n" +
                "\t\"name\": \"天津市\"\n" +
                "}, {\n" +
                "\t\"id\": 130000,\n" +
                "\t\"name\": \"河北省\"\n" +
                "}, {\n" +
                "\t\"id\": 140000,\n" +
                "\t\"name\": \"山西省\"\n" +
                "}, {\n" +
                "\t\"id\": 150000,\n" +
                "\t\"name\": \"内蒙古自治区\"\n" +
                "}, {\n" +
                "\t\"id\": 210000,\n" +
                "\t\"name\": \"辽宁省\"\n" +
                "}]")

效果样式:


5.设置是否打印日志:

在Application中初始化时,可根据当前环境是测试还是线上环境设置是否打印日志。

Logger.addLogAdapter(object: AndroidLogAdapter() {
            override fun isLoggable(priority: Int, tag: String?): Boolean {
                return false
            }
        })
6.自定义日志属性
val formatStrategy: FormatStrategy = PrettyFormatStrategy.newBuilder()
                .showThreadInfo(false) // 是否显示显示当前线程,默认显示
                .methodCount(0) // 方法栈打印的个数,默认是 2
                .methodOffset(7) // 设置调用堆栈的函数偏移值,默认是 0
                .tag("My custom tag") // 自定义tag内容
                .build()

        Logger.addLogAdapter(AndroidLogAdapter(formatStrategy))

更多更优雅的用法,还可以自己去自定义LogAdapter做到。

你可能感兴趣的:(Logger日志库优化你的日志打印)