summaryrefslogtreecommitdiffstats
path: root/windriver/titanium_cloud/vesagent/event_domain/fault_vm.py
diff options
context:
space:
mode:
authorBin Yang <bin.yang@windriver.com>2018-05-15 09:26:26 +0000
committerBin Yang <bin.yang@windriver.com>2018-05-15 09:26:26 +0000
commit9eda64aed5d2127f53f8edad764019ea98e85458 (patch)
treecd13aaa0938ac480dc2aaa3edd8b8299dc935d6d /windriver/titanium_cloud/vesagent/event_domain/fault_vm.py
parentbb00bacfc825cd22fed699cf5399257028ebfd5c (diff)
Publish the event to VES
Change-Id: I5ab561cd67a7d340d6e7828fd26b339742c10e36 Issue-ID: MULTICLOUD-230 Signed-off-by: Bin Yang <bin.yang@windriver.com>
Diffstat (limited to 'windriver/titanium_cloud/vesagent/event_domain/fault_vm.py')
-rw-r--r--windriver/titanium_cloud/vesagent/event_domain/fault_vm.py22
1 files changed, 21 insertions, 1 deletions
diff --git a/windriver/titanium_cloud/vesagent/event_domain/fault_vm.py b/windriver/titanium_cloud/vesagent/event_domain/fault_vm.py
index d5c40fe5..72d99b73 100644
--- a/windriver/titanium_cloud/vesagent/event_domain/fault_vm.py
+++ b/windriver/titanium_cloud/vesagent/event_domain/fault_vm.py
@@ -17,8 +17,10 @@
import logging
import json
import uuid
+import time
from django.conf import settings
+from titanium_cloud.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