commit 4e69e2de7225a9acce332a4ef0a108eabfef63ae
Author: Simeon Keske <git@n0emis.eu>
Date:   Sun Oct 18 16:50:21 2020 +0200

    initial commit

diff --git a/.gitignore b/.gitignore
new file mode 100644
index 0000000..1d17dae
--- /dev/null
+++ b/.gitignore
@@ -0,0 +1 @@
+.venv
diff --git a/corona-exporter.py b/corona-exporter.py
new file mode 100644
index 0000000..24dd393
--- /dev/null
+++ b/corona-exporter.py
@@ -0,0 +1,30 @@
+import time
+import json
+
+import requests
+import prometheus_client as pc
+
+
+class CoronaExporter:
+    def __init__(self):
+        self.cases7_per_100k = pc.Gauge('cases7_per_100k', 'Fälle der letzten 7 Tage/100.000 EW', ['county'])
+
+    def get_metrics(self):
+        r = requests.get('https://services7.arcgis.com/mOBPykOjAyBO2ZKk/arcgis/rest/services/RKI_Landkreisdaten/FeatureServer/0/query?where=1%3D1&outFields=*&returnGeometry=false&outSR=4326&f=json')
+        j = json.loads(r.text)
+
+        for lk in j['features']:
+            name = lk['attributes']['county']
+
+            self.cases7_per_100k.labels(county=name).set(lk['attributes']['cases7_per_100k'])
+
+    def run(self):
+        pc.start_wsgi_server(9000)
+
+        while True:
+            self.get_metrics()
+            time.sleep(120)
+
+if __name__ == "__main__":
+    c = CoronaExporter()
+    c.run()
diff --git a/requirements.txt b/requirements.txt
new file mode 100644
index 0000000..cea8d88
--- /dev/null
+++ b/requirements.txt
@@ -0,0 +1,2 @@
+requests
+prometheus_client