diff --git a/.gitignore b/.gitignore index b6e4761..c85b28c 100644 --- a/.gitignore +++ b/.gitignore @@ -127,3 +127,4 @@ dmypy.json # Pyre type checker .pyre/ +.vscode/ diff --git a/metrics.py b/metrics.py new file mode 100644 index 0000000..ee7d796 --- /dev/null +++ b/metrics.py @@ -0,0 +1,36 @@ +import requests +import os +from dotenv import load_dotenv +from flask import Flask +app = Flask(__name__) + +def get_values(ip, user=None, password=None): + + url = 'http://' + ip + '/?m=1' + + session = requests.Session() + + if user and password: + session.auth = (user, password) + + page = session.get(url) + + values = {} + + string_values = str(page.text).split("{s}") + for i in range(1,len(string_values)-1): + label = string_values[i].split("{m}")[0] + value = string_values[i].split("{m}")[1].split("{e}")[0] + values[label] = value + + return values + +@app.route('/metrics') +def return_metrics(): + load_dotenv() + ip = os.getenv('DEVICE_IP') + user = os.getenv('USER') + password = os.getenv('PASSWORD') + + + return(get_values(ip, user, password))