按文字过滤日志?

时间:2015-04-20 11:45:39

标签: android shell adb logcat dalvik

我正在以编程方式使用adb shell logcat -v time filename命令将日志存储到Android设备上的文件中。

存储器释放活动有一些内部日志存储在“dalvikvm”标记下。 (参见下面的日志)。我对这些日志没有任何问题,但由于这些日志,日志文件变得更重。 所以我关心的是减少日志中包含GC_CONCURRENT freedWAIT_FOR_CONCURRENT_GC文字的日志。

我还尝试使用它的标记来减少日志,但它会删除与该标记相关的所有日志。我不想在相同的标签名称下删除必需的标签。我只是不希望日志中包含GC_CONCURRENT freedWAIT_FOR_CONCURRENT_GC文本。

是否有任何方法或任何adb命令来解决此问题。提前谢谢。

04-18 01:02:53.644: D/dalvikvm(4302): GC_CONCURRENT freed 511K, 21% free 4106K/5192K, paused 5ms+1ms, total 19ms  
04-18 01:02:53.644: D/dalvikvm(4302): WAIT_FOR_CONCURRENT_GC blocked 6ms  
04-18 01:02:53.684: D/dalvikvm(4302): GC_CONCURRENT freed 512K, 21% free 4106K/5192K, paused 1ms+1ms, total 15ms  
04-18 01:02:53.684: D/dalvikvm(4302): WAIT_FOR_CONCURRENT_GC blocked 6ms  
04-18 01:02:53.724: D/dalvikvm(4302): GC_CONCURRENT freed 512K, 21% free 4106K/5192K, paused 2ms+1ms, total 16ms  
04-18 01:02:53.724: D/dalvikvm(4302): WAIT_FOR_CONCURRENT_GC blocked 6ms  
04-18 01:02:53.764: D/dalvikvm(4302): GC_CONCURRENT freed 512K, 21% free 4106K/5192K, paused 1ms+1ms, total 16ms  
04-18 01:02:53.764: D/dalvikvm(4302): WAIT_FOR_CONCURRENT_GC blocked 7ms  

修改

我正在使用 adb shell logcat -v time | grep -v \"GC_CONCURRENT\\|WAIT_FOR_CONCURRENT_GC\" > " + filename命令。 当我将filename作为计算机的本地路径时,它正在工作。 但是,当我尝试使用Android设备/data/data/packagename/filename.txt时,它无法正常工作。 它说bash: /data/data/packagename/filename.txt : No such file or directory任何人都可以为此提出解决方案。

2 个答案:

答案 0 :(得分:1)

不要忘记您可以将主机端实用程序与logcat的输出一起使用。我建议使用grep。特别是,使用它的-v / - 反转匹配选项。

adb logcat | grep -v "GC_CONCURRENT\|WAIT_FOR_CONCURRENT_GC" > filename

答案 1 :(得分:-1)

使用标记名称打印特定日志的命令。 *:S,它不会读取与GC_CONCURRENT freedWAIT_FOR_CONCURRENT_GC

相关的日志

语法

 adb logcat TAG_NAME:PRIORITY

以下行仅显示包含ActivityManagerMY_CUSTOM_TAG ..代码

的日志

adb logcat ActivityManager:I MY_CUSTOM_TAG:D ANOTHER_CUST_TAG:D *:S

  

S - 无声(最高优先级,无需打印任何内容)

有关更多信息,请访问官方文档

  1. Android Debug Bridge
  2. Reading and Writing Logs
  3. 更新错过了转储到文件。

    转储到文件

    `adb  logcat -d ActivityManager:I MY_CUSTOM_TAG:D ANOTHER_CUST_TAG:D *:S > filename.txt`