2012-09-29 18 views
6

¿Cuál es la mejor práctica para registrar errores/eventos en una aplicación de iPhone? No estoy hablando de la depuración, pero después de que se ha lanzado una aplicación. Quiero decir, me gustaría recopilar registros de errores/eventos cuando la aplicación se ejecuta en modo liberado (no en modo depuración). (Cuando sea necesario, puedo pedirle al usuario que envíe voluntariamente el archivo a mi servidor para su análisis)¿Cuál es la mejor práctica para registrar errores/eventos en una aplicación de iPhone?

(¿Tiene NSLog algún efecto si no se está ejecutando en la depuración? En caso afirmativo, ¿dónde escribe? Y, cómo ? para borrar cualquier contenido programáticamente)

Respuesta

3

he publicado una respuesta a una pregunta similar aquí: Including custom data into iOS crash dumps

NSLog no debe utilizarse para autenticarte detallada g en aplicaciones de producción, ya que ralentiza su aplicación. NSLog abre una conexión al registrador del sistema cada vez que se está llamando y lo hace de forma síncrona, por lo que bloquea el hilo actual.

Más bien utilice CocoaLumberjack, que registra de forma asíncrona, es muy rápido y proporciona soporte de nivel de registro de los errores que incluso se puede cambiar en tiempo de ejecución con algunos esfuerzos adicionales (consulte sus páginas wiki). Además, admite múltiples destinos de salida, como archivos, consola o consola Xcode, y más.

Otra gran biblioteca de registro es NSLogger, que proporciona una aplicación Mac para transmitir los datos de registro a través de Bonjour. Ambas bibliotecas se pueden utilizar juntas, es decir, la transmisión de datos de registro desde CocoaLumberjack a la aplicación Mac NSLogger utilizando este conector: https://github.com/steipete/NSLogger-CocoaLumberjack-connector

Cuestiones relacionadas