我一直在为几个实现多级日志记录的应用程序开发一个框架。它主要用于内部用于测试与其他设备通信的应用程序,但也用于我们将分发的一些应用程序。
有什么方法可以捕获未捕获的异常并及时执行代码将异常保存到日志文件中?目前,Log 类只是每隔一段时间就写入文件,在写入失败的情况下在两个文件之间交替等。这工作正常,但如果它可以看到发生未处理的异常,写入任何未写入的日志,那就太好了记录到文件中,注意发生了异常并记录其详细信息,然后允许应用程序崩溃。
如果有某种方法可以在应用程序范围内捕获未处理的异常,我认为它会是这样的:
appDidReceiveUnhandledException:(NSException *)exception
{
//write log to disk
//append exception info to log file
//rethrow exception
}
如果有人能给我关于这是否可能的见解或建议,将不胜感激。