Join us at MongoDB.local London on 7 May to unlock new possibilities for your data. Use WEB50 to save 50%.
Register now >
Docs Menu
Docs Home
/ /
Sync Device Data

Set the Client Log Level - Kotlin SDK

Modificado en la versión 1.8.0: Obsoleto en favor de Realm Logger

Advertencia

Esta página muestra cómo establecer un nivel de registro de cliente sincronizar en las versiones 1.7.1 y anteriores del SDK de Realm Kotlin. Realm Kotlin SDK v1.8.0 reemplaza esta implementación de registro con un registrador de Realm que puedes establecer y configurar. Para obtener información sobre cómo configurar un registrador de Realm en una versión posterior, consulta Logging - Kotlin SDK.

Puede configurar el nivel de registro del cliente de sincronización del dispositivo en el Instancia de SyncConfiguration en su aplicación. Es posible que desee hacer esto para registrar diferentes cantidades de datos según el entorno de la aplicación.

Para configurar el nivel de registro, establezca la propiedad RealmLogger.level en uno de los niveles de registrador proporcionados por LogLevel.

See the LogLevel documentation for a description of each available log level. Note that more logging can negatively affect performance.

You must set the log level before you open a synced realm.

// 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)

Tip

Para diagnosticar y solucionar errores locales en la aplicación, establezca el nivel de registro en debug o trace. Para implementaciones de producción, disminuye el nivel de registro para mejorar el rendimiento.

You can pipe Device Sync logs to a custom RealmLogger object by setting the customLoggers parameter on the SyncConfiguration builder. If you don't specify this parameter, the Kotlin SDK outputs log strings to the default system logger (LogCat on Android, NSLog on iOS).

Se debe configurar el logger personalizado antes de abrir un 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)

Volver

Manejar errores de sincronización

En esta página