Deshabilita completamente los loggings de XCGLogger cuando está en producción.

¿Cómo deshabilito completamente los loggings de XCGLogger cuando están en el entorno de producción?

En este momento estoy usando logLevel = .None .

¿Es esta la forma recomendada?

Esa es una forma posible, pero no ideal.

Primero, me pregunto si realmente desea deshabilitar completamente los loggings en producción. El uso de error y loggings severe pueden ser herramientas de diagnóstico útiles para aplicaciones lanzadas.

Sin embargo, si desea eliminar por completo los loggings en producción, recomendaría alterar la forma en que configura y usa el registrador que lo que tengo en los documentos oficiales.

Cambie el object de logging global para que sea opcional:

 let log: XCGLogger? = { #if DEBUG let log = XCGLogger.defaultInstance() log.setup(.Debug, showThreadName: true, showLogLevel: true, showFileNames: true, showLineNumbers: true, writeToFile: nil, fileLogLevel: .Debug) return log #else return nil #endif } 

Luego, cambia tus llamadas de logging a:

 log?.debug("whatever") 

Esto eliminará cualquier sobrecarga del registrador ya que el log será nil en producción y nunca se realizarán llamadas de logging.