Add Napier logger library

This commit is contained in:
2026-05-15 00:22:41 +07:00
parent 04bb4bf1cd
commit 99ebe57871
8 changed files with 46 additions and 4 deletions
@@ -2,9 +2,13 @@ package com.digitoolsolutions.app.torquevaultkmp
import androidx.compose.ui.window.ComposeUIViewController
import com.digitoolsolutions.app.torquevaultkmp.di.initKoin
import io.github.aakira.napier.DebugAntilog
import io.github.aakira.napier.Napier
fun MainViewController() = ComposeUIViewController(
configure = {
// Add logger lib
Napier.base(DebugAntilog()) // NoOpAntilog() for release
initKoin()
}
) { App() }
@@ -4,12 +4,16 @@ import com.digitoolsolutions.app.torquevaultkmp.data.network.api.AuthApi
import com.digitoolsolutions.app.torquevaultkmp.data.storage.ReferKeys
import com.digitoolsolutions.app.torquevaultkmp.data.storage.TokenManager
import com.digitoolsolutions.app.torquevaultkmp.utils.ForceLogoutException
import io.github.aakira.napier.Napier
import io.ktor.client.HttpClient
import io.ktor.client.engine.darwin.Darwin
import io.ktor.client.plugins.DefaultRequest
import io.ktor.client.plugins.HttpSend
import io.ktor.client.plugins.HttpTimeout
import io.ktor.client.plugins.contentnegotiation.ContentNegotiation
import io.ktor.client.plugins.logging.LogLevel
import io.ktor.client.plugins.logging.Logger
import io.ktor.client.plugins.logging.Logging
import io.ktor.client.plugins.plugin
import io.ktor.client.request.header
import io.ktor.http.HttpStatusCode
@@ -33,6 +37,14 @@ actual fun createPlatformHttpClient(
}
}
install(HttpTimeout) { requestTimeoutMillis = 30_000 }
install(Logging) {
logger = object : Logger {
override fun log(message: String) {
Napier.v(message, tag = "HTTP")
}
}
level = LogLevel.ALL // set LogLevel.NONE for release
}
}
if (authApi != null) {
@@ -44,7 +56,7 @@ actual fun createPlatformHttpClient(
val originalCall = execute(request)
if (originalCall.response.status == HttpStatusCode.Unauthorized) {
println(">>>>> [NetworkEngine.ios.kt] Access token expired, auto request refresh token...")
Napier.d(">>>>> [NetworkEngine.ios.kt] Access token expired, auto request refresh token...")
val newToken = authApi.refreshToken()
if (newToken != null) {
request.headers["Authorization"] = "Bearer $newToken"