我想转储所有日志以测试我的应用程序的长时间使用情况,也许2-3天,但日志似乎在长时间运行时被清除。如何让android设备日志不被清除?
如何保存日志?
我不想全天连接我的设备和eclipse,我希望日志只为我保留,就像存储在SD卡中进一步检查一样。
我想转储所有日志以测试我的应用程序的长时间使用情况,也许2-3天,但日志似乎在长时间运行时被清除。如何让android设备日志不被清除?
如何保存日志?
我不想全天连接我的设备和eclipse,我希望日志只为我保留,就像存储在SD卡中进一步检查一样。
而不是使用Eclipse日志使用像“日志查看器”的应用程序。我认为这个应用可以解决你的问题。我认为日志将保持到您在“日志查看器”中手动清除日志为止。今天早上我刚刚下载了它,并且仍然有我刚刚打开设备后执行的操作日志。
您是否尝试将日志转储到文件?
adb logcat > log.txt
我对我的申请有相同的要求。默认情况下,有logcat
进程跟踪日志高达64kb(取决于设备)。
您可以使用adb shell
开始自己的logcat
进程,并使用一些自定义参数。例如:
adb shell logcat -f /mnt/sdcard/large.log -r 100 -n 10
这将节省多达10页中的文件(large.log,large.log.0,larget.log.1等)均匀地分布原木1MB;
下一步是从您的应用程序中启动logcat
:
String [] args = new String[] { Logcat, "-v", "threadtime",
"-f", logFile.getAbsolutePath(),
"-r", Integer.toString(sizePerFile),
"-n", Integer.toString(rotationCount),
"*:"+filter};
Runtime.getRuntime().exec(args);
所以,现在你的应用程序可能会开始保存日志。但是,您应该小心,不要在生产版本的应用程序中启用此功能(或者至少需要选择此功能)。
logcat日志是一个64KB的环形缓冲区,所以最终旧的条目将被较新的条目覆盖。您需要定期捕获日志。 – CommonsWare 2011-05-26 12:45:07