##
"""Aodh plugin for the OSM monitoring module."""
-import logging as log
-# import sys
+import logging
+import sys
-# path = "/opt/stack/MON"
-# if path not in sys.path:
-# sys.path.append(path)
+sys.path.append("MON/")
+
+logging.basicConfig(filename='aodh_MON.log', format='%(asctime)s %(message)s',
+ datefmt='%m/%d/%Y %I:%M:%S %p', filemode='a',
+ level=logging.INFO)
+log = logging.getLogger(__name__)
+
+
+try:
+ import aodhclient
+except ImportError:
+ log.warn("Failed to import the aodhclient")
from plugins.OpenStack.Aodh.alarming import Alarming
-from plugins.OpenStack.Aodh.notifier import Notifier
from plugins.OpenStack.settings import Config
__author__ = "Helena McGough"
"""Register the plugin."""
# Initialize configuration and notifications
config = Config.instance()
- notifier = Notifier.instance()
# Intialize plugin
- instance = Plugin(config=config, notifier=notifier)
+ instance = Plugin(config=config)
instance.config()
instance.alarm()
- instance.notify()
class Plugin(object):
"""Aodh plugin for OSM MON."""
- def __init__(self, config, notifier):
+ def __init__(self, config):
"""Plugin instance."""
log.info("Initialze the plugin instance.")
self._config = config
self._alarming = Alarming()
- self._notifier = notifier
def config(self):
"""Configure plugin."""
log.info("Begin alarm functionality.")
self._alarming.alarming()
- def notify(self):
- """Send notifications to the SO."""
- # TODO(mcgoughh): Run simultaneously so that notifications
- # can be sent while messages are being consumed
- log.info("Sending Openstack notifications to the SO.")
- self._notifier.notify(self._alarming)
-
-register_plugin()
+if aodhclient:
+ register_plugin()