mirror of
https://github.com/ntop/n2n.git
synced 2024-09-19 00:21:11 +02:00
Add a last_seen column to n2n-ctl with human readable values
This commit is contained in:
parent
4f54649eeb
commit
e9659e3b9a
|
@ -7,6 +7,7 @@ import argparse
|
|||
import socket
|
||||
import json
|
||||
import collections
|
||||
import time
|
||||
|
||||
|
||||
class JsonUDP():
|
||||
|
@ -171,6 +172,24 @@ def str_table(rows, columns, orderby):
|
|||
return ''.join(result)
|
||||
|
||||
|
||||
def num2timestr(seconds):
|
||||
"""Convert a number of seconds into a human time"""
|
||||
days, seconds = divmod(seconds, (60*60*24))
|
||||
hours, seconds = divmod(seconds, (60*60))
|
||||
minutes, seconds = divmod(seconds, 60)
|
||||
|
||||
r = []
|
||||
if days:
|
||||
r += [f"{days}d"]
|
||||
if hours:
|
||||
r += [f"{hours}h"]
|
||||
if minutes:
|
||||
r += [f"{minutes}m"]
|
||||
if seconds:
|
||||
r += [f"{seconds}s"]
|
||||
return "".join(r)
|
||||
|
||||
|
||||
def subcmd_show_supernodes(rpc, args):
|
||||
rows = rpc.read('supernodes')
|
||||
columns = [
|
||||
|
@ -179,8 +198,13 @@ def subcmd_show_supernodes(rpc, args):
|
|||
'macaddr',
|
||||
'sockaddr',
|
||||
'uptime',
|
||||
'last_seen',
|
||||
]
|
||||
|
||||
now = int(time.time())
|
||||
for row in rows:
|
||||
row["last_seen"] = num2timestr(now - row["last_seen"])
|
||||
|
||||
return str_table(rows, columns, args.orderby)
|
||||
|
||||
|
||||
|
@ -192,8 +216,13 @@ def subcmd_show_edges(rpc, args):
|
|||
'macaddr',
|
||||
'sockaddr',
|
||||
'desc',
|
||||
'last_seen',
|
||||
]
|
||||
|
||||
now = int(time.time())
|
||||
for row in rows:
|
||||
row["last_seen"] = num2timestr(now - row["last_seen"])
|
||||
|
||||
return str_table(rows, columns, args.orderby)
|
||||
|
||||
|
||||
|
|
Loading…
Reference in New Issue
Block a user