Iterate on tracing configuration
- Add targets matrix_sdk, matrix_sdk::client and matrix_sdk::oidc - introduce default log level.
This commit is contained in:
committed by
Benoit Marty
parent
f03cbc1c2e
commit
5f77740533
@@ -29,7 +29,6 @@ class TargetLogLevelMapBuilder @Inject constructor(
|
||||
fun getDefaultMap(): Map<Target, LogLevel> {
|
||||
return Target.entries.associateWith { target ->
|
||||
defaultConfig.getLogLevel(target)
|
||||
?: LogLevel.INFO
|
||||
}
|
||||
}
|
||||
|
||||
@@ -37,7 +36,6 @@ class TargetLogLevelMapBuilder @Inject constructor(
|
||||
return Target.entries.associateWith { target ->
|
||||
tracingConfigurationStore.getLogLevel(target)
|
||||
?: defaultConfig.getLogLevel(target)
|
||||
?: LogLevel.INFO
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -19,27 +19,25 @@ package io.element.android.libraries.matrix.api.tracing
|
||||
data class TracingFilterConfiguration(
|
||||
val overrides: Map<Target, LogLevel> = emptyMap(),
|
||||
) {
|
||||
private val defaultLogLevel = LogLevel.INFO
|
||||
|
||||
// Order should matters
|
||||
private val targetsToLogLevel: Map<Target, LogLevel> = mapOf(
|
||||
Target.COMMON to LogLevel.INFO,
|
||||
Target.HYPER to LogLevel.WARN,
|
||||
Target.MATRIX_SDK_CRYPTO to LogLevel.DEBUG,
|
||||
Target.MATRIX_SDK_HTTP_CLIENT to LogLevel.DEBUG,
|
||||
Target.MATRIX_SDK_SLIDING_SYNC to LogLevel.TRACE,
|
||||
Target.MATRIX_SDK_BASE_SLIDING_SYNC to LogLevel.TRACE,
|
||||
Target.MATRIX_SDK_UI_TIMELINE to LogLevel.INFO,
|
||||
)
|
||||
|
||||
fun getLogLevel(target: Target): LogLevel? {
|
||||
return overrides[target] ?: targetsToLogLevel[target]
|
||||
fun getLogLevel(target: Target): LogLevel {
|
||||
return overrides[target] ?: targetsToLogLevel[target] ?: defaultLogLevel
|
||||
}
|
||||
|
||||
val filter: String
|
||||
get() {
|
||||
val fullMap = targetsToLogLevel.toMutableMap()
|
||||
overrides.forEach { (target, logLevel) ->
|
||||
fullMap[target] = logLevel
|
||||
val fullMap = Target.values().associateWith {
|
||||
overrides[it] ?: targetsToLogLevel[it] ?: defaultLogLevel
|
||||
}
|
||||
return fullMap.map {
|
||||
if (it.key.filter.isEmpty()) {
|
||||
@@ -58,7 +56,10 @@ enum class Target(open val filter: String) {
|
||||
MATRIX_SDK_FFI("matrix_sdk_ffi"),
|
||||
MATRIX_SDK_UNIFFI_API("matrix_sdk_ffi::uniffi_api"),
|
||||
MATRIX_SDK_CRYPTO("matrix_sdk_crypto"),
|
||||
MATRIX_SDK("matrix_sdk"),
|
||||
MATRIX_SDK_HTTP_CLIENT("matrix_sdk::http_client"),
|
||||
MATRIX_SDK_CLIENT("matrix_sdk::client"),
|
||||
MATRIX_SDK_OIDC("matrix_sdk::oidc"),
|
||||
MATRIX_SDK_SLIDING_SYNC("matrix_sdk::sliding_sync"),
|
||||
MATRIX_SDK_BASE_SLIDING_SYNC("matrix_sdk_base::sliding_sync"),
|
||||
MATRIX_SDK_UI_TIMELINE("matrix_sdk_ui::timeline"),
|
||||
@@ -75,13 +76,11 @@ enum class LogLevel(open val filter: String) {
|
||||
object TracingFilterConfigurations {
|
||||
val release = TracingFilterConfiguration(
|
||||
overrides = mapOf(
|
||||
Target.COMMON to LogLevel.INFO,
|
||||
Target.ELEMENT to LogLevel.DEBUG
|
||||
),
|
||||
)
|
||||
val debug = TracingFilterConfiguration(
|
||||
overrides = mapOf(
|
||||
Target.COMMON to LogLevel.INFO,
|
||||
Target.ELEMENT to LogLevel.TRACE
|
||||
)
|
||||
)
|
||||
|
||||
Reference in New Issue
Block a user