Puedes establecer o cambiar el nivel de registro de tu aplicación al desarrollar o depurar tu aplicación. Es posible que quieras cambiar el nivel de registro para registrar diferentes cantidades de datos dependiendo de tus necesidades de desarrollo.
Tip
Esta página muestra cómo configurar un registrador de Realm, añadido en el SDK de Realm Swift10.39.0 v. Esto reemplaza la configuración del nivel de registro del cliente de sincronización en versiones anteriores del SDK de Realm Swift. Para obtener información sobre cómo configurar el nivel de registro del cliente de sincronización en una versión anterior, consulte "Configurar el nivel de registro del cliente - Swift SDK".
Establecer o cambiar el nivel de registro del reino
Puede configurar el nivel de detalle que reporta el SDK de Realm Swift. Configure el nivel de registro para el registrador predeterminado con Logger.shared.level:
Logger.shared.level = .trace
El La enumeraciónRLMLogLevel representa los diferentes niveles de registro que puede configurar.
Puedes cambiar el nivel de registro para aumentar o disminuir el nivel de detalle en diferentes puntos del código. Este comportamiento difiere del nivel de registro del cliente de sincronización obsoleto, que debía configurarse antes de abrir un dominio sincronizado y no se podía cambiar.
// Set a log level that isn't too verbose Logger.shared.level = .warn // Later, when trying to debug something, change the log level for more verbosity Logger.shared.level = .trace
Configurar el registrador antes de inicializar un cliente de aplicación
Al inicializar un cliente de aplicación, el SDK de Swift almacena en caché su configuración. Cambiar la configuración de la aplicación después de la inicialización no tiene ningún efecto. Esto incluye la configuración de un registrador. Al inicializar una aplicación, se lee el registrador compartido actual y se almacena.
Sin embargo, cambiar el nivel de registro de un registrador existente funciona en cualquier momento.
Desactivar el registro
El umbral de registro predeterminado para el SDK de Realm Swift es .info. Esto muestra información en la consola. Puedes desactivar el registro por completo estableciendo el nivel de registro en .off:
Logger.shared.level = .off
Personalizar la función de registro
Inicialice una instancia de un Logger y defina la función a utilizar para el registro.
// Create an instance of `Logger` and define the log function to invoke. let logger = Logger(level: .detail) { level, message in // You may pass log information to a logging service, or // you could simply print the logs for debugging. Define // the log function that makes sense for your application. print("REALM DEBUG: \(Date.now) \(level) \(message) \n") }
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.
Puedes configurar un registrador como predeterminado para tu aplicación con Logger.shared. Después de configurarlo, puedes cambiar el nivel de registro durante el ciclo de vida de la aplicación según sea necesario.
let logger = Logger(level: .info) { level, message in // You may pass log information to a logging service, or // you could simply print the logs for debugging. Define // the log function that makes sense for your application. print("REALM DEBUG: \(Date.now) \(level) \(message) \n") } // Set a logger as the default Logger.shared = logger // After setting a default logger, you can change // the log level at any point during the app lifecycle Logger.shared.level = .debug