android调试日志不输出:AEE some logs have been lost

来源:互联网 发布:php网站源码带数据库 编辑:程序博客网 时间:2024/06/11 13:38

最近公司的项目出现了一些偶尔卡死、ANR等状况,但是又不是经常出现,很难复现过程。查了一下anr日志,居然只有一次记录,其他情况都没存下来,所以也不知如何下手修复,只能先通过logcat来进行一下观察调试。

在调试观察过程中,每次还没等到出现异常(因为具体不知道哪里出情况,不好打断点,所以就全部输出了),日志就不输出了!!也就是只输出了一会儿,然后就没下文了,或者零零散散出现一两个,这简直不能忍,程序也没停止运行啊,到底怎么回事?然后把过滤规则去掉,出现下面这种情况:

what the fk?! some logs have been lost,看这情况何止some,简直就是all logs already lost,百度了一下,根本没有解决办法啊!真苦恼...

这里也不知道是什么情况引起,这里跟大家说一下可能的情况吧:

首先,因为公司的机器处于开发模式,基本每个程序都有一堆日志在打印,所以很有可能是日志缓存满了...但是理论上应该会自动清除的啊

第二,日志输出太多,而且速度太快,日志为了具有实时性,舍弃了一部分由于没得到cup时间片打印日志?...这个看起来也像是扯淡

第三,用于调试的机器日志输出故障,有故障不应该是一开始就异常么?也不成立

第四,用于调试的软件有问题,因为公司项目调试状态下日志输出一秒上千可能都有,会不会是输出太频繁导致的?


其实看下来,第一和第四可能性最大,后来的解决方案是,也不能算是解决方案,因为并没有解决。

1.关闭被调试的应用,然后重新开启。日志又恢复了!所以,这个可能是第四种情况引起的吧?

2.关闭机器重启。


这种只能解决日志不输出问题,还是解决不了输出一段时间后日志丢失的问题,真是给我带来很大的麻烦啊!

这种情况我在Android studio 上没有遇到,这是在Eclipse上遇到的。

因为公司不是互联网公司,不太追赶潮流,项目都是用Eclipse编写的,因为涉及到各种库,jni Native等,我也懒得迁移 了

大家如果有什么更好的解决方法,诚恳的向您寻求方法~



原创粉丝点击