Zap
基于 mmap 的 Android 日志收集框架
使用
属性 |
默认值 |
说明 |
Builder中方法 |
folderDir |
应用私有目录/dolin/zap |
缓存日志文件的根目录 |
setFolderDir() |
tag |
dolin_zap |
日志TAG标签 |
setLogTag() |
logcatLevel |
Level.DEBUG |
Logcat中打印最低等级 |
setLogcatLevel() |
recordLevel |
Level.DEBUG |
缓存日志的最低等级 |
setRecordLevel() |
recordEnable |
true |
是否启用缓存日志 |
setRecordEnable() |
compressEnable |
true |
缓存文件内容是否压缩 |
setRecordCompressEnable() |
overdueDay |
3 |
日志文件过期天数,单位天 |
setOverdueDay() |
fileSizeLimitDay |
15 |
单天日志文件大小上限,单位M |
setFileSizeLimitDay() |
- 在Application#onCreate()中进行初始化
override fun onCreate() {
super.onCreate()
val config = Config.Builder()
//logcat输出最低等级
.setLogcatLevel(Level.DEBUG)
//是否开启缓存日志
.setRecordEnable(true)
//缓存日志最低等级
.setRecordLevel(Level.DEBUG)
//是否开启压缩缓存日志内容
.setRecordCompressEnable(true)
//缓存文件的过期时间
.setOverdueDay(3)
//缓存文件大小限制,超过则会自动扩容新文件
.setFileSizeLimitDay(15)
//缓存文件内容是否压缩
.setRecordCompressEnable(false)
.create()
Zap.initialize(this, config)
}
//接收任何数据类型,如果是数组,内部会进行处理
Zap.d("测试DEBUG日志")
Zap.i("测试INFO日志")
Zap.w("测试WARNING日志")
Zap.e("测试ERROR日志")
override fun onDestroy() {
super.onDestroy()
···
Zap.recycle()
···
}
更多信息
存储逻辑
缓存Buffer结构
Thanks