Merge pull request #12 from shawnma/master

Support logcat level filtering
This commit is contained in:
Jake Wharton
2013-06-18 18:37:57 -07:00
+8 -1
View File
@@ -28,12 +28,17 @@ import re
import subprocess import subprocess
from subprocess import PIPE from subprocess import PIPE
LOG_LEVELS = ['V','D','I','W','E']
LOG_LEVELS_MAP = dict([(LOG_LEVELS[i], i) for i in range(len(LOG_LEVELS))])
parser = argparse.ArgumentParser(description='Filter logcat by package name') parser = argparse.ArgumentParser(description='Filter logcat by package name')
parser.add_argument('package', nargs='+', help='Application package name(s)') parser.add_argument('package', nargs='+', help='Application package name(s)')
parser.add_argument('--tag-width', metavar='N', dest='tag_width', type=int, default=22, help='Width of log tag') parser.add_argument('-w', '--tag-width', metavar='N', dest='tag_width', type=int, default=22, help='Width of log tag')
parser.add_argument('-l', '--min-level', dest='min_level', type=str, choices=LOG_LEVELS, default='V', help='Minimum level to be displayed')
parser.add_argument('--color-gc', dest='color_gc', action='store_true', help='Color garbage collection') parser.add_argument('--color-gc', dest='color_gc', action='store_true', help='Color garbage collection')
args = parser.parse_args() args = parser.parse_args()
min_level=LOG_LEVELS_MAP[args.min_level]
header_size = args.tag_width + 1 + 3 + 1 # space, level, space header_size = args.tag_width + 1 + 3 + 1 # space, level, space
@@ -201,6 +206,8 @@ while adb.poll() is None:
if owner not in pids: if owner not in pids:
continue continue
if LOG_LEVELS_MAP[level] < min_level:
continue
linebuf = '' linebuf = ''