X-Git-Url: https://osm.etsi.org/gitweb/?a=blobdiff_plain;f=osm_mon%2Fserver%2Fservice.py;h=b68b367a5315abbc444e347ea6d02ea63e73967e;hb=1c3b669e8a6030de17712758f9a81aa323d7a6d5;hp=1d546e38319850fb99337b458801192f2a50b279;hpb=628df021896fa8775f9743af62a4267b617cc35c;p=osm%2FMON.git diff --git a/osm_mon/server/service.py b/osm_mon/server/service.py index 1d546e3..b68b367 100755 --- a/osm_mon/server/service.py +++ b/osm_mon/server/service.py @@ -21,12 +21,10 @@ # contact: bdiaz@whitestack.com or glavado@whitestack.com ## import logging -import uuid -from osm_mon.core import database from osm_mon.core.common_db import CommonDbClient from osm_mon.core.config import Config -from osm_mon.core.database import AlarmRepository, Alarm, AlarmTagRepository +from osm_mon.core.models import Alarm log = logging.getLogger(__name__) @@ -38,41 +36,20 @@ class ServerService: def create_alarm(self, name: str, - threshold: str, + threshold: float, operation: str, severity: str, statistic: str, metric_name: str, tags: dict) -> Alarm: - database.db.connect() - try: - with database.db.atomic(): - alarm = AlarmRepository.create( - uuid=str(uuid.uuid4()), - name=name, - threshold=threshold, - operation=operation.lower(), - severity=severity.lower(), - statistic=statistic.lower(), - metric=metric_name - ) - for k, v in tags.items(): - AlarmTagRepository.create( - name=k, - value=v, - alarm=alarm - ) - return alarm - - finally: - database.db.close() + log.debug("create_alarm") + alarm = Alarm(name, severity, threshold, operation, statistic, metric_name, tags) + self.common_db.create_alarm(alarm) + log.info("Alarm %s created", alarm.name) + return alarm def delete_alarm(self, alarm_uuid: str) -> None: - database.db.connect() - try: - with database.db.atomic(): - alarm = AlarmRepository.get(Alarm.uuid == alarm_uuid) - alarm.delete_instance() - finally: - database.db.close() + log.debug("delete_alarm") + self.common_db.delete_alarm(alarm_uuid) + log.info("Alarm %s is deleted", alarm_uuid)