diff options
Diffstat (limited to 'events/src/glustereventsd.py')
-rw-r--r-- | events/src/glustereventsd.py | 13 |
1 files changed, 12 insertions, 1 deletions
diff --git a/events/src/glustereventsd.py b/events/src/glustereventsd.py index d057e097c97..86e64b01ad5 100644 --- a/events/src/glustereventsd.py +++ b/events/src/glustereventsd.py @@ -21,7 +21,8 @@ from eventtypes import all_events import handlers import utils from eventsapiconf import SERVER_ADDRESS, PID_FILE -from utils import logger, PidFile, PidFileLockFailed +from eventsapiconf import AUTO_BOOL_ATTRIBUTES, AUTO_INT_ATTRIBUTES +from utils import logger, PidFile, PidFileLockFailed, boolify class GlusterEventsRequestHandler(SocketServer.BaseRequestHandler): @@ -45,6 +46,16 @@ class GlusterEventsRequestHandler(SocketServer.BaseRequestHandler): logger.warn("Unable to parse Event {0}".format(data)) return + for k, v in data_dict.iteritems(): + try: + if k in AUTO_BOOL_ATTRIBUTES: + data_dict[k] = boolify(v) + if k in AUTO_INT_ATTRIBUTES: + data_dict[k] = int(v) + except ValueError: + # Auto Conversion failed, Retain the old value + continue + try: # Event Type to Function Map, Recieved event data will be in # the form <TIMESTAMP> <TYPE> <DETAIL>, Get Event name for the |