Skip to content
Snippets Groups Projects
Verified Commit 95ffe16b authored by Quentin Duchemin's avatar Quentin Duchemin
Browse files

Again better reporting

parent 4ccadd2f
No related branches found
No related tags found
No related merge requests found
......@@ -42,7 +42,6 @@ class EtherpadCollector(object):
for instance in self.instances:
data = self._get_stats(instance)
if data is None:
print('Unable to get stats from Etherpad instance : ' + instance['url'])
continue
# Create metrics
metrics.append({
......@@ -90,10 +89,10 @@ class EtherpadCollector(object):
stats_plugin = requests.get(instance['url'] + "/stats.json")
stats_native = requests.get(instance['url'] + "/stats")
if stats_plugin.status_code != 200:
print("Unable to get stats.json : HTTP {}".format(stats_plugin.status_code))
print("Unable to get stats.json from {} : HTTP {}".format(instance['name'], stats_plugin.status_code))
return None
if stats_native.status_code != 200:
print("Unable to get stats : HTTP {}".format(stats_plugin.status_code))
print("Unable to get stats from {} : HTTP {}".format(instance['name'], stats_plugin.status_code))
return None
try:
plugin = json.loads(stats_plugin.text)
......
......@@ -7,6 +7,7 @@
import json
import os
import sys
import time
from urllib.parse import urlparse
from influxdb import InfluxDBClient
from etherpad import EtherpadCollector
......@@ -60,6 +61,7 @@ def influxb_connect(config):
except Exception as e:
print("Cannot connect to {} : {}".format(o.hostname, e))
print("If InfluxDB has just started, this is normal, please wait!")
return None
def main():
......@@ -78,6 +80,10 @@ def main():
print('You need to add InfluxDB configuration on your config file.')
sys.exit(1)
influx_client = influxb_connect(config['influxdb'])
while influx_client is None:
print("InfluxDB not available, retrying in 5 seconds...")
time.sleep(5)
influx_client = influxb_connect(config['influxdb'])
# Get Etherpad metrics and push to InfluxDB
if 'etherpad' in config['modules']:
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment