feat(prometheus): store mon job into prometheus collection, part of the decoupling...
[osm/MON.git] / osm_mon / server / service.py
index 298043e..94bdf4e 100755 (executable)
@@ -55,3 +55,21 @@ class ServerService:
         log.debug("delete_alarm")
         self.common_db.delete_alarm(alarm_uuid)
         log.info("Alarm %s is deleted", alarm_uuid)
+
+    def populate_prometheus(self):
+        # This method can be executed infinite number of times
+        # without side-effects.
+        self.common_db.common_db.set_one(
+            "prometheus_jobs", {"job_name": "mon_exporter"}, {
+                "job_name": "mon_exporter",
+                "static_configs": [
+                    {
+                        "targets": [
+                            "mon:8000"
+                        ]
+                    }
+                ]
+            },
+            fail_on_empty=False,
+            upsert=True
+        )