support level filtering

This commit is contained in:
Shawn Ma
2013-06-13 14:08:13 -07:00
parent bce5ad6529
commit d53f70917a
+8 -1
View File
@@ -29,12 +29,17 @@ import fcntl
import termios
import struct
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.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='Minimal level to be displayed')
parser.add_argument('--color-gc', dest='color_gc', action='store_true', help='Color garbage collection')
args = parser.parse_args()
min_level=LOG_LEVELS_MAP[args.min_level]
header_size = args.tag_width + 1 + 3 + 1 # space, level, space
@@ -189,6 +194,8 @@ while True:
if owner not in pids:
continue
if LOG_LEVELS_MAP[level] < min_level:
continue
linebuf = ''