设置客户端日志级别 - Kotlin SDK
Atlas Device SDK 已弃用。 有关详细信息,请参阅弃用页面。
在 1.8.0 版本中进行了更改: 已弃用并替换为 Realm Logger
警告
本页介绍如何在 Realm Kotlin SDK 版本 1.7.1 及更早版本中设置同步客户端日志级别。 Realm Kotlin SDK v1.8.0 使用可设置和配置的 Realm 记录器取代了此日志记录实现。 有关如何在更高版本中设置 Realm 记录器的信息,请参阅日志记录 - Kotlin SDK。
设置同步日志级别
Device Sync您可以在 应用 的 SyncConfiguration 实例上设立 客户端日志级别。您可能希望根据应用环境日志不同数量的数据。
要配置日志级别,请将RealmLogger.level属性设置为 LogLevel
提供的记录器级别之一。
有关每个可用日志级别的说明,请参阅LogLevel文档。 请注意,更多的日志记录可能会对性能产生负面影响。
您必须在打开同步域之前设置日志级别。
// Access your app val app = App.create(YOUR_APP_ID) val user = app.login(credentials) // Access the configuration builder for the app val config = SyncConfiguration.Builder(user, setOf(Toad::class)) // Set the logger to provide debug log // Must be set BEFORE you open a synced realm .log(LogLevel.DEBUG) .initialSubscriptions { realm -> add(realm.query<Toad>(), "sync subscription") } .build() // Open the synced realm // Synced realm writes logs according to the log level set above val realm = Realm.open(config)
提示
要在开发应用程序时诊断和排除错误,请将日志级别设置为debug
或trace
。 对于生产部署,请降低日志级别以提高性能。
设置自定义记录器
您可以通过在SyncConfiguration
构建器上设置customLoggers
参数,将 Device Sync 日志通过管道传输到自定义RealmLogger对象。 如果不指定此参数,Kotlin SDK 会将日志字符串输出到默认的系统记录器(Android 上的 LogCat、iOS 上的 NSLog)。
在打开同步域之前,您必须设置自定义记录器。
val customLogger = CustomLogger() customLogger.tag = "Engineering debugging" customLogger.message = "${customLogger.logLevel}: ${customLogger.message}" // Access your app val app = App.create(YOUR_APP_ID) val user = app.login(credentials) // Access the configuration builder for the app val config = SyncConfiguration.Builder(user, setOf(Toad::class)) // Set the custom logger and applicable log level // Must be set BEFORE you open a synced realm .log(LogLevel.ALL, customLoggers = listOf(customLogger)) .initialSubscriptions { realm -> add(realm.query<Toad>(), "sync subscription") } .build() // Open the synced realm with the custom logger val realm = Realm.open(config)