Menu Docs
Página inicial do Docs
/ /
Atlas Device SDKs
/ /

Definir o nível de registro do cliente - Kotlin SDK

Nesta página

  • Definir o nível de registro de sincronização
  • Definir um registrador personalizado

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.

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.

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)

Voltar

Gerenciar erros de sincronização