diff options
| author | Michael Biebl <biebl@debian.org> | 2015-01-22 00:29:39 +0100 |
|---|---|---|
| committer | Michael Biebl <biebl@debian.org> | 2015-01-22 00:29:39 +0100 |
| commit | 2c032d8f1c6292c1338a615e6ec40252889ba85c (patch) | |
| tree | 1f77182220b2b0264288ba4a476ab47e5bc48716 /tools/debug-helper.py | |
| parent | 33491bc4279481db8ae47213e34a6d695a0e8830 (diff) | |
Imported Upstream version 1.0.0 upstream/1.0.0
Diffstat (limited to 'tools/debug-helper.py')
| -rwxr-xr-x | tools/debug-helper.py | 61 |
1 files changed, 61 insertions, 0 deletions
diff --git a/tools/debug-helper.py b/tools/debug-helper.py new file mode 100755 index 00000000..07338242 --- /dev/null +++ b/tools/debug-helper.py @@ -0,0 +1,61 @@ +#!/usr/bin/python +# Copyright (C) 2011 Mathieu Trudel-Lapierre <mathieu.tl@gmail.com> + +import dbus +import argparse + +bus = dbus.SystemBus() + +parser = argparse.ArgumentParser(description='Interface to easily control logging levels for NetworkManager, ModemManager, and wpasupplicant.') + +# NM options +parser.add_argument('--nm', dest='do_set_nm_logging', action='store', + help='modify log level for NetworkManager (debug, info, etc.)') +parser.add_argument('--domains', dest='log_domains', action='store', + default=[], nargs='+', + help='log "domains" to use with NetworkManager (HW, CORE, etc.)') + +# MM options +parser.add_argument('--mm', dest='do_set_mm_logging', action='store', + help='modify log level for ModemManager (debug, info, etc.)') + +# wpasupplicant options +parser.add_argument('--wpa', dest='do_set_wpa_logging', action='store', + help='modify log level for wpasupplicant (debug, msgdump, info, etc.)') + +args = parser.parse_args() + +if args.do_set_nm_logging: + #print args.log_domains + dom_msg = "" + if args.log_domains: + dom_msg = " for domains: " + ','.join(args.log_domains) + print "Setting NetworkManager log level to '" + args.do_set_nm_logging + "'" + dom_msg + + nm_bus = bus.get_object('org.freedesktop.NetworkManager', '/org/freedesktop/NetworkManager') + nm = dbus.Interface(nm_bus, dbus_interface='org.freedesktop.NetworkManager') + nm.SetLogging(args.do_set_nm_logging, ','.join(args.log_domains)) + +if args.do_set_mm_logging: + print "Setting ModemManager log level to '" + args.do_set_mm_logging + "'" + + mm_bus = bus.get_object('org.freedesktop.ModemManager', '/org/freedesktop/ModemManager') + mm = dbus.Interface(mm_bus, dbus_interface='org.freedesktop.ModemManager') + mm.SetLogging(args.do_set_mm_logging) + +if args.do_set_wpa_logging: + print "Setting wpa_supplicant log level to '" + args.do_set_wpa_logging + "'" + + if 'debug' in args.do_set_wpa_logging or 'msgdump' in args.do_set_wpa_logging: + print "Enabling timestamps for wpasupplicant debugging logs" + use_timestamps = dbus.Boolean(True, variant_level=1) + else: + print "Disabling timestamps for wpasupplicant debugging logs" + use_timestamps = dbus.Boolean(False, variant_level=1) + + wpa_bus = bus.get_object('fi.w1.wpa_supplicant1', '/fi/w1/wpa_supplicant1') + wpa_properties = dbus.Interface(wpa_bus, dbus_interface='org.freedesktop.DBus.Properties') + wpa_properties.Set('fi.w1.wpa_supplicant1', 'DebugTimestamp', use_timestamps) + wpa_properties.Set('fi.w1.wpa_supplicant1', 'DebugLevel', + dbus.String(args.do_set_wpa_logging, variant_level=1)) + |