summaryrefslogtreecommitdiffstats
path: root/clover/controller/control/api/collector.py
diff options
context:
space:
mode:
Diffstat (limited to 'clover/controller/control/api/collector.py')
-rw-r--r--clover/controller/control/api/collector.py33
1 files changed, 19 insertions, 14 deletions
diff --git a/clover/controller/control/api/collector.py b/clover/controller/control/api/collector.py
index 3abcba7..2d0c32c 100644
--- a/clover/controller/control/api/collector.py
+++ b/clover/controller/control/api/collector.py
@@ -108,26 +108,31 @@ def set_collector():
try:
p = request.json
r = redis.StrictRedis(host=HOST_IP, port=6379, db=0)
- del_keys = ['visibility_services', 'metric_prefixes',
- 'metric_suffixes', 'custom_metrics']
- for dk in del_keys:
- r.delete(dk)
try:
- for service in p['services']:
- r.sadd('visibility_services', service['name'])
+ if p['services']:
+ r.delete('visibility_services')
+ for service in p['services']:
+ r.sadd('visibility_services', service['name'].replace('-', '_'))
except (KeyError, ValueError) as e:
logging.debug(e)
return Response(
"Specify at least one service to track", status=400)
- if p['metric_prefixes'] and p['metric_suffixes']:
- for prefix in p['metric_prefixes']:
- r.sadd('metric_prefixes', prefix['prefix'])
- for suffix in p['metric_suffixes']:
- r.sadd('metric_suffixes', suffix['suffix'])
- if p['custom_metrics']:
- for metric in p['custom_metrics']:
- r.sadd('custom_metrics', metric['metric'])
+ try:
+ if p['metric_prefixes'] and p['metric_suffixes']:
+ del_keys = ['metric_prefixes', 'metric_suffixes']
+ for dk in del_keys:
+ r.delete(dk)
+ for prefix in p['metric_prefixes']:
+ r.sadd('metric_prefixes', prefix['prefix'])
+ for suffix in p['metric_suffixes']:
+ r.sadd('metric_suffixes', suffix['suffix'])
+ if p['custom_metrics']:
+ r.delete('custom_metrics')
+ for metric in p['custom_metrics']:
+ r.sadd('custom_metrics', metric['metric'])
+ except Exception as e:
+ logging.debug(e)
except Exception as e:
logging.debug(e)