说起bugreport.exe这个东西,大家应该都不陌生,有时候QQ崩溃或者其他应用崩溃都会看到这个进程在后台启动。其实他就是在主进程崩溃后启动的异常收集程序。他所做的事情大致如下:
- 读取dmp文件,并上传后台,一般会同时上报当前应用版本,崩溃时间,dmp文件md5,等附加信息,方便后台进行管理。dmp文件一般由应用程序在捕获到异常时自己写入。
- 很多bugreport也包含了错误日志上报的功能
对于dmp文件为什么不直接在当前崩溃进程上传,有一下几个原因:
- 异常进程本身已经异常,可能网络模块已经损坏,不能正常使用
- 异常进程执行复杂逻辑时可能会产生新的异常
- 恰巧所有过程都正常,dmp文件也比较大,上传过程会导致异常进程长时间无法退出。