summaryrefslogtreecommitdiffstats
path: root/ocata/ocata/vesagent/event_domain/fault_vm.py
diff options
context:
space:
mode:
authorYun Huang <yun.huang@windriver.com>2018-07-04 18:03:12 +0800
committerYun Huang <yun.huang@windriver.com>2018-07-04 18:03:12 +0800
commit6b68166ede9e1e4c9f6c0b6682ff40745b68e8b7 (patch)
tree788322d93ee594d99f2272362032509437731fcb /ocata/ocata/vesagent/event_domain/fault_vm.py
parent645b1edaf2f914ae74281b9941605e296e9ead93 (diff)
Publish the event to VES for ocata
Change-Id: Icf26c87725312554b0867a8fb8dcc8fb3e40d9da Issue-ID: MULTICLOUD-230 Signed-off-by: Yun Huang <yun.huang@windriver.com>
Diffstat (limited to 'ocata/ocata/vesagent/event_domain/fault_vm.py')
-rw-r--r--ocata/ocata/vesagent/event_domain/fault_vm.py22
1 files changed, 21 insertions, 1 deletions
diff --git a/ocata/ocata/vesagent/event_domain/fault_vm.py b/ocata/ocata/vesagent/event_domain/fault_vm.py
index d5c40fe5..9c0d9875 100644
--- a/ocata/ocata/vesagent/event_domain/fault_vm.py
+++ b/ocata/ocata/vesagent/event_domain/fault_vm.py
@@ -17,8 +17,10 @@
import logging
import json
import uuid
+import time
from django.conf import settings
+from ocata.vesagent.vespublish import publishAnyEventToVES
from common.utils.restcall import _call_req
logger = logging.getLogger(__name__)
@@ -111,6 +113,8 @@ def buildBacklog_fault_vm(vimid, backlog_input):
### process backlog with domain:"fault", type:"vm"
+
+
def processBacklog_fault_vm(vesAgentConfig, vesAgentState, oneBacklog):
logger.debug("vesAgentConfig:%s, vesAgentState:%s, oneBacklog: %s"
% (vesAgentConfig, vesAgentState, oneBacklog))
@@ -150,8 +154,20 @@ def processBacklog_fault_vm(vesAgentConfig, vesAgentState, oneBacklog):
logger.debug("collected data: %s" % server_resp)
# encode data
+ backlog_uuid = oneBacklog.get("backlog_uuid", None)
+ backlogState = vesAgentState.get("%s" % (backlog_uuid), None)
+ last_event = backlogState.get("last_event", None)
+ logger.debug("last event: %s" % last_event)
- # publish event to VES
+ this_event = data2event_fault_vm(oneBacklog, last_event, server_resp)
+
+ if this_event is not None:
+ logger.debug("this event: %s" % this_event)
+ # report data to VES
+ ves_subscription = vesAgentConfig.get("subscription", None)
+ publishAnyEventToVES(ves_subscription, this_event)
+ # store the latest data into cache, never expire
+ backlogState["last_event"] = this_event
except Exception as e:
logger.error("exception:%s" % str(e))
@@ -160,3 +176,7 @@ def processBacklog_fault_vm(vesAgentConfig, vesAgentState, oneBacklog):
logger.info("return")
return
+def data2event_fault_vm(oneBacklog, last_event, vm_data):
+ this_event = {}
+
+ return this_event