X-Git-Url: https://osm.etsi.org/gitweb/?a=blobdiff_plain;f=osm_mon%2Fcore%2Fmessage_bus%2Fcommon_consumer.py;h=25aee43a48ddf9295f7ee9b769be79f9cdb93da7;hb=e4be37f562f1d0c394d1ccdd0238202ec8f6f949;hp=e79e98adc5c3dbdbe48595fdde0ce9a3650e438d;hpb=181cce8e28a9b6c5c6fa1fa8aa515de3b187a2e1;p=osm%2FMON.git diff --git a/osm_mon/core/message_bus/common_consumer.py b/osm_mon/core/message_bus/common_consumer.py index e79e98a..25aee43 100755 --- a/osm_mon/core/message_bus/common_consumer.py +++ b/osm_mon/core/message_bus/common_consumer.py @@ -23,6 +23,7 @@ import json import logging import os import sys +import yaml logging.basicConfig(stream=sys.stdout, format='%(asctime)s %(message)s', @@ -77,10 +78,12 @@ aws_access_credentials = AccessCredentials() vrops_rcvr = plugin_receiver.PluginReceiver() -def get_vim_type(message): +def get_vim_type(msg): """Get the vim type that is required by the message.""" try: - return json.loads(message.value)["vim_type"].lower() + vim_uuid = json.loads(msg.value)["vim_uuid"].lower() + credentials = database_manager.get_credentials(vim_uuid) + return credentials.type except Exception as exc: log.warn("vim_type is not configured correctly; %s", exc) return None @@ -95,7 +98,10 @@ log.info("Listening for alarm_request and metric_request messages") for message in common_consumer: log.info("Message arrived: %s", message) try: - values = json.loads(message.value) + try: + values = json.loads(message.value) + except: + values = yaml.safe_load(message.value) # Check the message topic if message.topic == "metric_request": # Check the vim desired by the message