severity: str,
statistic: str,
metric_name: str,
+ action: str,
tags: dict,
) -> Alarm:
log.debug("create_alarm")
alarm = Alarm(
- name, severity, threshold, operation, statistic, metric_name, tags
+ name, severity, threshold, operation, statistic, metric_name, action, tags
)
self.common_db.create_alarm(alarm)
log.info("Alarm %s created", alarm.name)
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.
+ log.info("Setting up MON Exporter in prometheus")
+ result = 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
+ )
+ log.info("Prometheus Jobs added > {}".format(result))