feat(prometheus): store mon job into prometheus collection, part of the decoupling between LCM and Prometheus

Change-Id: I5a547729a0c51a13cffb6a8467788992b574c0e9
Signed-off-by: bravof <fbravo@whitestack.com>
diff --git a/osm_mon/server/server.py b/osm_mon/server/server.py
index ce6255c..07fdd22 100755
--- a/osm_mon/server/server.py
+++ b/osm_mon/server/server.py
@@ -43,6 +43,7 @@
         self.loop = loop
         self.msg_bus = MessageBusClient(config)
         self.service = ServerService(config)
+        self.service.populate_prometheus()
 
     def run(self):
         self.loop.run_until_complete(self.start())
diff --git a/osm_mon/server/service.py b/osm_mon/server/service.py
index 298043e..94bdf4e 100755
--- a/osm_mon/server/service.py
+++ b/osm_mon/server/service.py
@@ -55,3 +55,21 @@
         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
+        )