[AETHER-3122] - Make probing period configurable
Change-Id: Id425c950f421a94014cb9ae4117e153e4019982b
diff --git a/app.py b/app.py
index 3adb9dd..1b2c075 100644
--- a/app.py
+++ b/app.py
@@ -52,6 +52,17 @@
unreachable[device.imsi_id] = {'ip':device.ip, 'imsi':device.imsi, 'last_reachable':'{:%Y-%m-%d %H:%M:%S}'.format(device.last_reachable)}
return unreachable
+@app.route("/config")
+def config():
+ global args
+ period = request.args.get('period')
+ if period is not None:
+ args.period = int(period)
+ config = vars(args)
+ config.pop('token', None)
+ config.pop('user', None)
+ config.pop('password', None)
+ return config
def build_argparser():
@@ -74,6 +85,10 @@
help="Service port",
type=str,
default="3333")
+ args.add_argument("--period",
+ help="Probing period in sec",
+ type=int,
+ default=180)
return parser
def update(roc, prom, old):
@@ -97,14 +112,14 @@
log.info("{}/{}/{} - unreachable".format(device.imsi_id, device.imsi, device.ip))
def work_thread(roc, prom):
- global devices, lock
+ global devices, lock, args
while True:
new = update(roc, prom, devices)
probe(new)
with lock:
devices = new
- time.sleep(5)
+ time.sleep(args.period)
if __name__ == '__main__':