mirror of
https://github.com/tahoe-lafs/tahoe-lafs.git
synced 2024-12-25 15:41:06 +00:00
test/no_network.py: add a basic stats provider
This commit is contained in:
parent
f35c659b2f
commit
cc3c1ae8df
@ -135,6 +135,24 @@ class NoNetworkClient(Client):
|
|||||||
def get_nickname_for_peerid(self, peerid):
|
def get_nickname_for_peerid(self, peerid):
|
||||||
return None
|
return None
|
||||||
|
|
||||||
|
class SimpleStats:
|
||||||
|
def __init__(self):
|
||||||
|
self.counters = {}
|
||||||
|
self.stats_producers = []
|
||||||
|
|
||||||
|
def count(self, name, delta=1):
|
||||||
|
val = self.counters.setdefault(name, 0)
|
||||||
|
self.counters[name] = val + delta
|
||||||
|
|
||||||
|
def register_producer(self, stats_producer):
|
||||||
|
self.stats_producers.append(stats_producer)
|
||||||
|
|
||||||
|
def get_stats(self):
|
||||||
|
stats = {}
|
||||||
|
for sp in self.stats_producers:
|
||||||
|
stats.update(sp.get_stats())
|
||||||
|
ret = { 'counters': self.counters, 'stats': stats }
|
||||||
|
return ret
|
||||||
|
|
||||||
class NoNetworkGrid(service.MultiService):
|
class NoNetworkGrid(service.MultiService):
|
||||||
def __init__(self, basedir, num_clients=1, num_servers=10,
|
def __init__(self, basedir, num_clients=1, num_servers=10,
|
||||||
@ -181,7 +199,7 @@ class NoNetworkGrid(service.MultiService):
|
|||||||
serverdir = os.path.join(self.basedir, "servers",
|
serverdir = os.path.join(self.basedir, "servers",
|
||||||
idlib.shortnodeid_b2a(serverid))
|
idlib.shortnodeid_b2a(serverid))
|
||||||
fileutil.make_dirs(serverdir)
|
fileutil.make_dirs(serverdir)
|
||||||
ss = StorageServer(serverdir, serverid)
|
ss = StorageServer(serverdir, serverid, stats_provider=SimpleStats())
|
||||||
return ss
|
return ss
|
||||||
|
|
||||||
def add_server(self, i, ss):
|
def add_server(self, i, ss):
|
||||||
|
Loading…
Reference in New Issue
Block a user