logcat过滤日志
❶ android 怎么使用应用的包名通过logcat命令来过滤某个应用的日志
过滤条件是可以增加的,tag上写上自己的报名,就可以过滤了。
❷ android logcat 输出日志时,怎么通过级别来过滤日志,比如只显示出I级别的日志,而不是显示I级别以上的。
控制台,还是在Eclipse上的Logcat视图?
1、如果是控制台,可以在控制台输入:adb logcat -s "*:I"
2、如果是在Eclipse上的Logcat视图,专可以选择属filter的级别为“info”
-------------------------------------------------------------
更多疑问解答,尽在@安卓互助平台 新浪微博
❸ 怎么用eclipse还有logcat命令的过滤log信息
1. 只显示需要的输出,白名单
最方便的当然是通过管道使用 grep 过滤了,这样可以使用 grep 强大的正则表达式匹配。简单的匹配一行当中的某个字符串,例如 MyApp:
adb logcat | grep MyApp
adb logcat | grep -i myapp #忽略大小写。
adb logcat | grep --color=auto -i myapp #设置匹配字符串颜色。更多设置请查看 grep 帮助。
进阶一点可以使用 grep 的正则表达式匹配。例如上一个例子会匹配一行中任意位置的 MyApp,可以设置为仅匹配 tag。默认的 log 输出如下,如果修改过输出格式相应的表达式也要修改。
I/CacheService( 665): Preparing DiskCache for all thumbnails.
可以看出 tag 是一行开头的第三个字符开始,根据这点写出表达式:
adb logcat | grep "^..MyApp"
根据这个格式也可以设置只显示某个优先级的 log,再匹配行首第一个字符即可。例如仅显示 Error 级别 tag 为 MyApp 的输出:
adb logcat | grep "^E.MyApp"
当然也可以匹配多个,使用 | 分割多个匹配表达式,要加转义符。例如要匹配 tag 为 MyApp 和 MyActivity 的输出:
adb logcat | grep "^..MyApp\|^..MyActivity"
adb logcat | grep -E "^..MyApp|^..MyActivity" #使用 egrep 无须转义符
2. 过滤不需要的输出,黑名单
还是使用 grep,用法也跟上面的一样,加一个 -v 即可。例如要过滤 tag 为 MyApp 和 MyActivity 的输出:
adb logcat | grep -v "^..MyApp\|^..MyActivity"
adb logcat | grep -vE "^..MyApp|^..MyActivity" #使用 egrep 无须转义符
3. 显示同一个进程的所有输出
有时一个程序里面的 tag 有多个,需要输出该程序(同一个 PID)的所有 tag;仅使用 tag 过滤有时也会漏掉一些错误信息,而一般错误信息也是和程序同一个 PID。还是通过 grep 实现,思路是先根据包名找到 pid 号,然后匹配 pid。写成 shell 脚本如下,参数是程序的 java 包名(如 com.android.media)。
查看源代码打印帮助\
#!/bin/bash
packageName=$1
pid=`adb shell ps | grep $packageName | awk '{print $2}'`
adb logcat | grep --color=auto $pid
4. 从当前开始显示
logcat 有缓存,如果仅需要查看当前开始的 log,需要清空之前的。adb logcat -c && adb logcat
5. 过滤 log 文件
有时需要分析 log 文件,过滤 log 文件还是使用 grep。例如 log 文件为 myapp.log,要匹配 tag 为 MyApp 和 MyActivity 的输出,然后输出到 newmyapp.log:cat myapp.log | grep "^..MyApp\|^..MyActivity" > newmyapp.log
Windows 下推荐使用 Notepad++,一个免费强大的记事本,支持正则表达式查找替换。可以高亮显示匹配内容,也可以删除不需要的内容。
以上的技巧主要用到了 grep,其实 logcat 本身也有过滤功能,可以根据 tag、优先级过滤 log,具体请参考 Android 官方文档 Reading and Writing Logs。如果喜欢使用图形界面,请参考 Using DDMS,DDMS 里面的 logcat 也可以同样过滤。
❹ android 怎么使用应用的包名通过logcat命令来过滤某个应用的日志
先通过windows cmd 进入adb shell,再输入logcat|grepxxx
1、先进入adbshell。
❺ adb logcat的日志 和monkey命令的日志是一样的吗
不一样,adb monkey日志是记录monkey命令在手机APP操作的事件。adb logcat日志是记录手机系统在运行app时有什么异常的事件,如:CREASH、ANR等报错信息
❻ android logcat怎么获取某个进程的日志
点击 logcat 中的来 display xxxxxxxx view 按钮 左边会弹出一自个侧拉菜单,在saved Filters 中 点击绿色 加号 , 在filters name 中 输入你要监控的进程的名字 , 一般都是包名 然后就能过滤出你要看的进程的日志了
❼ android logcat日志在哪个文件夹里面
如果使用的是 Eclipse 作为 IDE 的话,用 ADT 所提供的 logcat 显示界面可以直接做到你的需求。 内在编辑的位置输入 容app:your.package.name 便可以自动过滤包名为 your.package.name 的软件输出信息啦,如果在编写软件时注意了 Log.X 的使用,通过旁边的下拉菜单还可以根据日志的等级进行再一次进行的过滤。 TODO: 1. 打开 LogCat 2. 输入需要的包名,如图上的 com.android.phone 3. 根据需要选择日志等级,当然,如果没有细致的 Log.X 输出的话,推荐使用 verbose(详细) 4. 查看过滤后的结果 5. 待解决问题后,记得将 app:com.android.phone 删除,否则过滤会持续生效 后话:如果不嫌麻烦,在左边的 Saved Filters 字样旁边有一个加号,通过它可以手动生成一个可以保存的过滤器,可涉及的过滤范围诸如:日志等级、进程ID、包名等。
❽ 如何使用 adb logcat 查看某个进程的输出日志
1.只显示需要的输出,白名单最方便的当然是通过管道使用grep过滤了,这样可以使用grep强大的正则表达式匹配。简单的匹配一行当中的某个字符串,例如MyApp:adblogcat|grepMyAppadblogcat|grep-imyapp#忽略大小写。adblogcat|grep--color=auto-imyapp#设置匹配字符串颜色。设置请查看grep帮助。进阶一点可以使用grep的正则表达式匹配。例如上一个例子会匹配一行中任意位置的MyApp,可以设置为仅匹配tag。默认的log输出如下,如果修改过输出格式相应的表达式也要修改。I/CacheService(665):.可以看出tag是一行开头的第三个字符开始,根据这点写出表达式:adblogcat|grep"^..MyApp"根据这个格式也可以设置只显示某个优先级的log,再匹配行首第一个字符即可。例如仅显示Error级别tag为MyApp的输出:adblogcat|grep"^E.MyApp"当然也可以匹配多个,使用|分割多个匹配表达式,要加转义符。例如要匹配tag为MyApp和MyActivity的输出:adblogcat|grep"^..MyApp\|^..MyActivity"adblogcat|grep-E"^..MyApp|^..MyActivity"#使用egrep无须转义符2.过滤不需要的输出,黑名单还是使用grep,用法也跟上面的一样,加一个-v即可。例如要过滤tag为MyApp和MyActivity的输出:adblogcat|grep-v"^..MyApp\|^..MyActivity"adblogcat|grep-vE"^..MyApp|^..MyActivity"#使用egrep无须转义符3.显示同一个进程的所有输出有时一个程序里面的tag有多个,需要输出该程序(同一个PID)的所有tag;仅使用tag过滤有时也会漏掉一些错误信息,而一般错误信息也是和程序同一个PID。还是通过grep实现,思路是先根据包名找到pid号,然后匹配pid。写成shell脚本如下,参数是程序的java包名(如com.android.media)。查看源代码打印帮助1#!/bin/bash2packageName=$13pid=`adbshellps|grep$packageName|awk'{print$2}'`4adblogcat|grep--color=auto$pid4.从当前开始显示logcat有缓存,如果仅需要查看当前开始的log,需要清空之前的。adblogcat-c&&adblogcat5.过滤log文件有时需要分析log文件,过滤log文件还是使用grep。例如log文件为myapp.log,要匹配tag为MyApp和MyActivity的输出,然后输出到newmyapp.log:catmyapp.log|grep"^..MyApp\|^..MyActivity">newmyapp.logWindows下推荐使用Notepad++,一个免费强大的记事本,支持正则表达式查找替换。可以高亮显示匹配内容,也可以删除不需要的内容。以上的技巧主要用到了grep,其实logcat本身也有过滤功能,可以根据tag、优先级过滤log,具体请参考Android官方文档ReadingandWritingLogs。如果喜欢使用图形界面,请参考UsingDDMS,DDMS里面的logcat也可以同样过滤。
❾ eclipse怎样使用logcat日志调试安卓程序
1,开发方式,在eclipse中的windows中的show View中的other ,然后,打开other对话框,选择android中,找到logcat即可。在状态栏或者右侧可回以找到logcat的图答标。
2,使用方法,可以使用Log.i("exp",e.toString());这样的方式来给自己的应用大bug信息。
3,然后,查看logcat中的tag,和text描述。就可以查看到错误产生的原因了。
4,当然这只是最简单的使用,一般调试信息非常的多,可能只是希望看到自己想看到信息,这个时候,可以使用filter过滤一下信息。选择logcat的组面板上的+信息。
5,在这里可以对于tag赋值,然后查看使用到的log信息,这样过滤到的信息,就是自己正在调试的信息。
❿ 如何抓取android logcat日志
您好,很高兴为您源解答。
1,安装SDK(参考android sdk环境安装)
2,使用数据线链接手机,在手机助手的sdcard中建立一个1.log的文件
3,程序运行cmd
4,输入抓取命令:logcat -s '*:E' > /mmt/sdcard/1.log
5,使用手机崩溃一次
6,查看日志抓取文件,分不清楚是那个时间段所造成的后果
7,加入命令:-v time 就会显示出时间
8,输入命令logcat -v time -s '*:E' > /mmt/sdcard/1.log
9,查看结果
如若满意,请点击右侧【采纳答案】,如若还有问题,请点击【追问】
希望我的回答对您有所帮助,望采纳!
~ O(∩_∩)O~