Added JSON output to rnstatus
This commit is contained in:
parent
7018e412d5
commit
d02cdd5471
@ -46,7 +46,7 @@ def size_str(num, suffix='B'):
|
|||||||
|
|
||||||
return "%.2f%s%s" % (num, last_unit, suffix)
|
return "%.2f%s%s" % (num, last_unit, suffix)
|
||||||
|
|
||||||
def program_setup(configdir, dispall=False, verbosity=0, name_filter=None):
|
def program_setup(configdir, dispall=False, verbosity=0, name_filter=None,json=False):
|
||||||
reticulum = RNS.Reticulum(configdir = configdir, loglevel = 3+verbosity)
|
reticulum = RNS.Reticulum(configdir = configdir, loglevel = 3+verbosity)
|
||||||
|
|
||||||
stats = None
|
stats = None
|
||||||
@ -56,6 +56,11 @@ def program_setup(configdir, dispall=False, verbosity=0, name_filter=None):
|
|||||||
pass
|
pass
|
||||||
|
|
||||||
if stats != None:
|
if stats != None:
|
||||||
|
if json:
|
||||||
|
import json
|
||||||
|
print(json.dumps(stats))
|
||||||
|
exit()
|
||||||
|
|
||||||
for ifstat in stats["interfaces"]:
|
for ifstat in stats["interfaces"]:
|
||||||
name = ifstat["name"]
|
name = ifstat["name"]
|
||||||
|
|
||||||
@ -176,6 +181,14 @@ def main():
|
|||||||
default=False
|
default=False
|
||||||
)
|
)
|
||||||
|
|
||||||
|
parser.add_argument(
|
||||||
|
"-j",
|
||||||
|
"--json",
|
||||||
|
action="store_true",
|
||||||
|
help="output in JSON format",
|
||||||
|
default=False
|
||||||
|
)
|
||||||
|
|
||||||
parser.add_argument('-v', '--verbose', action='count', default=0)
|
parser.add_argument('-v', '--verbose', action='count', default=0)
|
||||||
|
|
||||||
parser.add_argument("filter", nargs="?", default=None, help="only display interfaces with names including filter", type=str)
|
parser.add_argument("filter", nargs="?", default=None, help="only display interfaces with names including filter", type=str)
|
||||||
@ -187,7 +200,7 @@ def main():
|
|||||||
else:
|
else:
|
||||||
configarg = None
|
configarg = None
|
||||||
|
|
||||||
program_setup(configdir = configarg, dispall = args.all, verbosity=args.verbose, name_filter=args.filter)
|
program_setup(configdir = configarg, dispall = args.all, verbosity=args.verbose, name_filter=args.filter, json=args.json)
|
||||||
|
|
||||||
except KeyboardInterrupt:
|
except KeyboardInterrupt:
|
||||||
print("")
|
print("")
|
||||||
|
Loading…
Reference in New Issue
Block a user