Definir o nível de registro do cliente - Kotlin SDK
Alterado na versão 1.8.0: Preterido em favor do Realm Logger
Aviso
Esta página mostra como definir um nível de registro do cliente de sincronização nas versões 1.7.1 e anteriores do Realm Kotlin SDK. O Realm Kotlin SDK v1.8.0 substitui essa implementação de registro por um registrador do Realm que você pode definir e configurar. Para obter informações sobre como definir um registrador do Realm em uma versão posterior, consulte Registro em Registro - Kotlin SDK.
Definir o nível de registro de sincronização
Você pode definir o nível de registro do cliente do Device Sync na instância SyncConfiguration em seu aplicativo. Talvez você queira fazer isso para registrar diferentes quantidades de dados, dependendo do ambiente do aplicativo.
Para configurar o nível de registro, defina a propriedade RealmLogger.level como um dos níveis de registrador fornecidos por LogLevel
.
Consulte a documentação LogLevel para obter uma descrição de cada nível de log disponível. Observe que mais registros podem afetar negativamente o desempenho.
Você deve definir o nível de registro antes de abrir um Realm sincronizado.
// 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)
Dica
Para diagnosticar e solucionar erros ao desenvolver seu aplicativo, defina o nível de registro como debug
ou trace
. Para sistemas de produção, diminua o nível de registro para melhorar o desempenho.
Definir um registrador personalizado
Você pode canalizar registros do Device Sync para um objeto RealmLogger personalizado definindo o parâmetro customLoggers
no construtor SyncConfiguration
. Se você não especificar esse parâmetro, o Kotlin SDK gerará strings de registro para o registrador do sistema padrão (LogCat no Android, NSLog no iOS).
Você deve definir o registrador customizado antes de abrir um Realm sincronizado.
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)