概述¶
依赖更新说明
从 1.3.1 版本开始,日志核心库将作为独立的模块进行发布。
特性¶
val logFactory: LogFactory = getLogFactory {
install(LogSwitch) {
open = true
}
install(LogPrinter)
}
val logcat = logFactory("global")
logcat.d("这是一条日志")
- 支持插件化安装。
- 支持自定义日志打印格式。
- 支持显示日志位置用于快速定位。
- 支持显示当前打印的日志信息。
- 支持日志文件存储。
- 支持对象以 json(pretty 可选) 风格输出。
- 支持 JsonString 打印。
日志风格¶
通过 LogFormat 可以自定义日志风格,例如为 Logger.desktop() 指定风格为 LineColorfulFormat 。
val logFactory: LogFactory = getLogFactory {
...
install(LogPrinter) {
logger = Logger.desktop(LineColorfulFormat)
}
}
面向 Tencent/Mars¶
通过 Logger.mars() 将 Tencent/Mars 的 xlog 组件快速集成:
val logFactory: LogFactory = getLogFactory {
...
install(LogPrinter) {
logger = Logger.mars(logDir, logCache)
}
}
面向 Okhttp¶
// Add Interceptor
val logcat = logFactory("global")
val okhttp = OkHttpClient
.Builder()
.addInterceptor(Okhttp3Interceptor(logcat))
.build()
// Make a request
val request: Request = Request.Builder()
.url("http://127.0.0.1:7777")
.build()
okhttp.newCall(request).execute()
快速使用¶
log-core¶
implementation 'io.github.sakurajimamaii:log-core:$version'
implementation("io.github.sakurajimamaii:log-core:$version")
log-desktop¶
implementation 'io.github.sakurajimamaii:log-desktop:$version'
implementation("io.github.sakurajimamaii:log-desktop:$version")
log-okhttp¶
implementation 'io.github.sakurajimamaii:log-okhttp:$version'
implementation("io.github.sakurajimamaii:log-okhttp:$version")
log-mars¶
implementation 'io.github.sakurajimamaii:log-mars:$version'
implementation("io.github.sakurajimamaii:log-mars:$version")
log-slf4j¶
implementation 'io.github.sakurajimamaii:log-slf4j:$version'
implementation("io.github.sakurajimamaii:log-slf4j:$version")
log-android¶
implementation 'io.github.sakurajimamaii:log-android:$version'
implementation("io.github.sakurajimamaii:log-android:$version")