Package Products :: Package ZenEvents :: Module EventManagerBase :: Class EventManagerBase
[hide private]
[frames] | no frames]

Class EventManagerBase

source code

                                                        object --+        
                                                                 |        
                                ZenModel.ZenModelBase.ZenModelBase --+    
                                                                     |    
                               ExtensionClass.Base --+               |    
                                                     |               |    
                         OFS.CopySupport.CopyContainer --+           |    
                                                         |           |    
              ZenRelations.RelCopySupport.RelCopyContainer --+       |    
                                                             |       |    
                               ExtensionClass.Base --+       |       |    
                                                     |       |       |    
                         OFS.CopySupport.CopyContainer --+   |       |    
                                                         |   |       |    
                               ExtensionClass.Base --+   |   |       |    
                                                     |   |   |       |    
                             App.Management.Navigation --+   |       |    
                                                         |   |       |    
                               ExtensionClass.Base --+   |   |       |    
                                                     |   |   |       |    
                                   App.Management.Tabs --+   |       |    
                                                         |   |       |    
                                  Acquisition.Implicit --+   |       |    
                                                         |   |       |    
                                Persistence.Persistent --+   |       |    
                                                         |   |       |    
                           ExtensionClass.Base --+       |   |       |    
                                                 |       |   |       |    
            webdav.EtagSupport.EtagSupport --+   |       |   |       |    
                                             |   |       |   |       |    
                  webdav.Lockable.LockableItem --+       |   |       |    
                                                 |       |   |       |    
                          webdav.Resource.Resource --+   |   |       |    
                                                     |   |   |       |    
                          webdav.Collection.Collection --+   |       |    
                                                         |   |       |    
                           OFS.Traversable.Traversable --+   |       |    
                                                         |   |       |    
                           OFS.ObjectManager.ObjectManager --+       |    
                                                             |       |    
                               ExtensionClass.Base --+       |       |    
                                                     |       |       |    
                           ExtensionClass.Base --+   |       |       |    
                                                 |   |       |       |    
                        OFS.CopySupport.CopySource --+       |       |    
                                                     |       |       |    
                           ExtensionClass.Base --+   |       |       |    
                                                 |   |       |       |    
                               App.Management.Tabs --+       |       |    
                                                     |       |       |    
                       OFS.Traversable.Traversable --+       |       |    
                                                     |       |       |    
                         AccessControl.Owned.Owned --+       |       |    
                                                     |       |       |    
                              ZenRelations.ZItem.ZItem --+   |       |    
                                                         |   |       |    
                                  Acquisition.Implicit --+   |       |    
                                                         |   |       |    
                        AccessControl.Role.RoleManager --+   |       |    
                                                         |   |       |    
  ZenRelations.PrimaryPathObjectManager.PrimaryPathManager --+       |    
                                                             |       |    
                                   ExtensionClass.Base --+   |       |    
                                                         |   |       |    
                                      App.Undo.UndoSupport --+       |    
                                                             |       |    
ZenRelations.PrimaryPathObjectManager.PrimaryPathObjectManager --+   |    
                                                                 |   |    
                                                    object --+   |   |    
                                                             |   |   |    
                                   ExtensionClass.Base --+   |   |   |    
                                                         |   |   |   |    
                                 OFS.ZDOM.Node --+       |   |   |   |    
                                                 |       |   |   |   |    
                                  OFS.ZDOM.Element --+   |   |   |   |    
                                                     |   |   |   |   |    
                        OFS.ZDOM.ElementWithAttributes --+   |   |   |    
                                                         |   |   |   |    
                       OFS.PropertyManager.PropertyManager --+   |   |    
                                                             |   |   |    
            ZenRelations.ZenPropertyManager.ZenPropertyManager --+   |    
                                                                 |   |    
              ZenRelations.RelationshipManager.RelationshipManager --+    
                                                                     |    
                                           ExtensionClass.Base --+   |    
                                                                 |   |    
                                            OFS.History.Historical --+    
                                                                     |    
                                                        object --+   |    
                                                                 |   |    
                                      ZenModel.ZenPacker.ZenPacker --+    
                                                                     |    
                                        ZenModel.ZenModelRM.ZenModelRM --+
                                                                         |
                                                                        EventManagerBase
Known Subclasses:

Data connector to backend of the event management system.

Instance Methods [hide private]
 
__init__(self, id, title='', hostname='localhost', username='root', password='', database='events', port=3306, defaultWhere='', defaultOrderby='', defaultResultFields=[])
Sets up event database access and initializes the cache.
source code
 
restrictedUserFilter(self, where)
This is a hook do not delete me!
source code
 
defaultAvailabilityStart(self) source code
 
defaultAvailabilityEnd(self) source code
 
getAvailability(self, state, **kw) source code
 
getHeartbeatObjects(self, failures=True, simple=False, limit=0, db=None) source code
 
getMaxSeverity(self, me) source code
 
sendEvents(self, events)
Send a group of events to the backend.
source code
 
sendEvent(self, event)
Send an event to the backend.
source code
 
getEventStates(self)
Return a list of possible event states.
source code
 
getEventActions(self)
Return a list of possible event actions.
source code
 
getSeverities(self)
Return a list of tuples of severities [('Warning', 3), ...]
source code
 
getSeverityString(self, severity)
Return a string representation of the severity.
source code
 
getPriorities(self)
Return a list of tuples of priorities [('Warning', 3), ...]
source code
 
getPriorityString(self, priority)
Return the priority name
source code
 
getStatusCssClass(self, status) source code
 
getStatusImgSrc(self, status)
Return the img source for a status number
source code
 
getEventCssClass(self, severity, acked=False)
return the css class name to be used for this event.
source code
 
installIntoPortal(self)
Install skins into portal.
source code

Inherited from ZenModel.ZenModelRM.ZenModelRM: changePythonClass, creator, editableDeviceList, findChild, getCreatedTimeString, getDmdKey, getModificationTimeString, getSubObjects, getTreeItems, getZenRootNode, index_object, primarySortKey, reindex_all, rename, setTitle, unindex_object, viewName, zmanage_addProperty, zmanage_delObjects, zmanage_delProperties, zmanage_editProperties, zmanage_exportObject, zmanage_importObject, zmanage_importObjects

Inherited from ZenModel.ZenModelBase.ZenModelBase: __call__, __hash__, all_meta_types, aqBaseHasAttr, breadCrumbs, callZenScreen, checkRemotePerm, checkValidId, createHierarchyObj, custPropertyIds, custPropertyMap, getBreadCrumbName, getBreadCrumbUrlPath, getDmd, getDmdObj, getDmdRoot, getHierarchyObj, getIconPath, getIdLink, getNowString, getObjByPath, getPrimaryDmdId, getUnusedId, getZopeObj, helpLink, isLocalName, manage_deleteObjects, prepId, saveCustProperties, todayDate, upToOrganizerBreadCrumbs, urlLink, view, visibleCustPropertyMap, yesterdayDate, zenScreenUrl, zenpathjoin, zenpathsplit, zentinelTabs

Inherited from ZenRelations.RelationshipManager.RelationshipManager: addRelation, buildRelations, cb_isMoveable, checkRelations, exportXml, exportXmlProperties, exportXmlRelationships, getRelationshipManagerId, getRelationshipNames, getRelationships, manage_addRelation, manage_removeRelation, manage_workspace, moveMeBetweenRels, moveObject, removeRelation

Inherited from ZenRelations.RelCopySupport.RelCopyContainer: manage_linkObjects, manage_unlinkObjects

Inherited from OFS.ObjectManager.ObjectManager: __class_init__, __contains__, __delitem__, __getitem__, __iter__, __len__, __nonzero__, __setitem__, filtered_meta_types, get, getSiteManager, hasObject, items, keys, list_imports, manage_FTPlist, manage_FTPstat, manage_afterAdd, manage_afterClone, manage_beforeDelete, manage_delObjects, manage_exportObject, manage_hasId, manage_importObject, objectIds, objectIds_d, objectItems, objectItems_d, objectMap, objectMap_d, objectValues, objectValues_d, setSiteManager, superValues, tpValues, values

Inherited from OFS.ObjectManager.ObjectManager (private): _delOb, _getImportPaths, _getOb, _importObjectFromFile, _setOb, _subobject_permissions

Inherited from OFS.CopySupport.CopyContainer: cb_dataItems, cb_dataValid, manage_CopyContainerAllItems, manage_CopyContainerFirstItem, manage_clone, manage_copyObjects, manage_cutObjects, manage_pasteObjects, manage_renameObject, manage_renameObjects, validClipData

Inherited from OFS.CopySupport.CopyContainer (private): _get_id

Inherited from App.Management.Navigation: manage_zmi_logout

Inherited from ZenRelations.PrimaryPathObjectManager.PrimaryPathManager: getPrimaryId, getPrimaryParent, getPrimaryPath, getPrimaryUrlPath, primaryAq

Inherited from ZenRelations.ZItem.ZItem: __repr__, getId, manage_editedDialog, this, titleOrId, title_and_id, title_or_id, tpURL

Inherited from OFS.CopySupport.CopySource: cb_isCopyable, cb_userHasCopyOrMovePermission

Inherited from OFS.CopySupport.CopySource (private): _canCopy, _postCopy, _setId

Inherited from App.Management.Tabs: filtered_manage_options, tabs_path_default, tabs_path_info

Inherited from webdav.Collection.Collection: DELETE, HEAD, PUT, dav__init, listDAVObjects

Inherited from webdav.Resource.Resource: COPY, LOCK, MKCOL, MOVE, OPTIONS, PROPFIND, PROPPATCH, TRACE, UNLOCK, dav__simpleifhandler, dav__validate, manage_DAVget

Inherited from webdav.Lockable.LockableItem: wl_clearLocks, wl_delLock, wl_getLock, wl_hasLock, wl_isLocked, wl_lockItems, wl_lockTokens, wl_lockValues, wl_lockmapping, wl_setLock

Inherited from webdav.EtagSupport.EtagSupport: http__etag, http__parseMatchList, http__processMatchHeaders, http__refreshEtag

Inherited from OFS.Traversable.Traversable: absolute_url, absolute_url_path, getPhysicalPath, restrictedTraverse, unrestrictedTraverse, virtual_url_path

Inherited from App.Undo.UndoSupport: get_request_var_or_attr, manage_undo_transactions, undoable_transactions

Inherited from ZenRelations.ZenPropertyManager.ZenPropertyManager: deleteZenProperty, exportZProperties, getOverriddenObjects, getProperty, getPropertyType, getZ, hasProperty, isLocal, manage_editProperties, saveZenProperties, setZenProperty, zenPropIsPassword, zenPropertyIds, zenPropertyItems, zenPropertyMap, zenPropertyOptions, zenPropertyPath, zenPropertyString

Inherited from OFS.History.Historical: manage_afterHistoryCopy, manage_beforeHistoryCopy, manage_change_history, manage_historicalComparison, manage_historyCompare, manage_historyCopy

Inherited from ZenModel.ZenPacker.ZenPacker: addToZenPack, eligiblePacks, findObject

Inherited from OFS.PropertyManager.PropertyManager: manage_addProperty, manage_changeProperties, manage_changePropertyTypes, manage_delProperties, propdict, propertyDescription, propertyIds, propertyItems, propertyLabel, propertyMap, propertyValues, valid_property_id

Inherited from OFS.PropertyManager.PropertyManager (private): _delPropValue, _delProperty, _propertyMap, _wrapperCheck

Inherited from OFS.ZDOM.ElementWithAttributes: getAttribute, getAttributeNode, getAttributes

Inherited from OFS.ZDOM.Element: getChildNodes, getElementsByTagName, getFirstChild, getLastChild, getNextSibling, getNodeName, getNodeType, getParentNode, getPreviousSibling, getTagName

Inherited from OFS.ZDOM.Node: getNodeValue, getOwnerDocument, hasChildNodes

Class Methods [hide private]

Inherited from ZenRelations.RelationshipManager.RelationshipManager: lookupSchema

Class Variables [hide private]
  eventStateConversions = 'New', 0, ('Acknowledged', 1), ('Suppr...
  eventActions = 'status', 'history', 'drop'
  severityConversions = 'Critical', 5, ('Error', 4), ('Warning',...
  severities = dict([(b, a) for a, b in severityConversions])
  priorityConversions = 'None',-1, ('Emergency', 0), ('Alert', 1...
  priorities = dict([(b, a) for a, b in priorityConversions])
  statusTable = "status"
  detailTable = "detail"
  logTable = "log"
  lastTimeField = "lastTime"
  firstTimeField = "firstTime"
  deviceField = "device"
  componentField = "component"
  eventClassField = "eventClass"
  severityField = "severity"
  stateField = "eventState"
  countField = "count"
  prodStateField = "prodState"
  DeviceGroupField = "DeviceGroups"
  SystemField = "Systems"
  DeviceWhere = "\"device = '%s'\" % me.getDmdKey()"
  DeviceResultFields = "eventState", "severity", "component", "e...
  ComponentWhere = "\"(device = '%s' and component = '%s')\"" " ...
  ComponentResultFields = "eventState", "severity", "eventClass"...
  IpAddressWhere = "\"ipAddress='%s'\" % (me.getId())"
  EventClassWhere = "\"eventClass like '%s%%'\" % me.getDmdKey()"
  EventClassInstWhere = """\"eventClass = '%s' and eventClassKey...
  DeviceClassWhere = "\"(DeviceClass = '%s' or DeviceClass like ...
  LocationWhere = "\"Location like '%s%%'\" % me.getDmdKey()"
  SystemWhere = "\"Systems like '%%|%s%%'\" % me.getDmdKey()"
  DeviceGroupWhere = "\"DeviceGroups like '%%|%s%%'\" % me.getDm...
  defaultResultFields = "eventState", "severity", "device", "com...
  defaultFields = 'eventState', 'severity', 'evid'
  defaultEventId = 'device', 'component', 'eventClass', 'eventKe...
  requiredEventFields = 'device', 'summary', 'severity'
  defaultAvailabilityDays = 7
  defaultPriority = 3
  eventAgingHours = 4
  eventAgingSeverity = 4
  historyMaxAgeDays = 0
  _properties = {'id': 'backend', 'type': 'string', 'mode': 'r',...
  _relations = "commands", ToManyCont(ToOne, "Products.ZenEvents...
  security = ClassSecurityInfo()

Inherited from ZenModel.ZenModelRM.ZenModelRM: default_catalog, isInTree, meta_type

Inherited from ZenModel.ZenModelBase.ZenModelBase: index_html, sub_meta_types

Inherited from ZenModel.ZenModelBase.ZenModelBase (private): _zendoc

Inherited from ZenRelations.RelationshipManager.RelationshipManager: manage_main, manage_options

Inherited from OFS.ObjectManager.ObjectManager: has_order_support, isAnObjectManager, isPrincipiaFolderish, manage_addProduct, manage_importExportForm, manage_index_main, meta_types

Inherited from OFS.ObjectManager.ObjectManager (private): _components, _objects

Inherited from OFS.CopySupport.CopyContainer: manage_renameForm

Inherited from App.Management.Navigation: manage, manage_copyright, manage_form_title, manage_menu, manage_page_footer, manage_page_header, manage_top_frame, manage_zmi_prefs, zope_quick_start

Inherited from ZenRelations.ZItem.ZItem: REQUEST, __allow_access_to_unprotected_subobjects__, __name__, __propsets__, getId__roles__, icon, id, isTopLevelPrincipiaApplicationObject, title

Inherited from App.Management.Tabs: manage_tabs, manage_workspace__roles__

Inherited from webdav.Collection.Collection: __dav_collection__

Inherited from webdav.Resource.Resource: __dav_resource__, __http_methods__

Inherited from OFS.Traversable.Traversable: getPhysicalRoot

Inherited from App.Undo.UndoSupport: manage_UndoForm

Inherited from ZenRelations.ZenPropertyManager.ZenPropertyManager: __pychecker__, manage_propertiesForm

Inherited from OFS.History.Historical: HistoricalRevisions, manage_change_history_page

Inherited from OFS.History.Historical (private): _manage_historyComparePage

Inherited from OFS.PropertyManager.PropertyManager: manage_propertyTypeForm, propertysheets

Inherited from OFS.PropertyManager.PropertyManager (private): _reserved_names

Method Details [hide private]

__init__(self, id, title='', hostname='localhost', username='root', password='', database='events', port=3306, defaultWhere='', defaultOrderby='', defaultResultFields=[])
(Constructor)

source code 

Sets up event database access and initializes the cache.

Parameters:
  • id (string) - A unique id
  • title (string) - A title
  • hostname (string) - The hostname of the events database server
  • username (string) - The name of a user with permissions to access the events database
  • password (string) - The password of the user
  • database (string) - The name of the events database
  • port (int) - The port on which the database server is listening
  • defaultWhere (string) - The default where clause to use when building queries
  • defaultOrderby (string) - The default order by clause to use when building queries
  • defaultResultFields (list) - DEPRECATED. Currently unused.
Overrides: ZenRelations.RelationshipManager.RelationshipManager.__init__

sendEvent(self, event)

source code 

Send an event to the backend.

Parameters:
  • event (event object) - event

To Do: implement


Class Variable Details [hide private]

eventStateConversions

Value:
'New', 0, ('Acknowledged', 1), ('Suppressed', 2),

severityConversions

Value:
'Critical', 5, ('Error', 4), ('Warning', 3), ('Info', 2), ('Debug', 1)\
, ('Clear', 0),

priorityConversions

Value:
'None',-1, ('Emergency', 0), ('Alert', 1), ('Critical', 2), ('Error', \
3), ('Warning', 4), ('Notice', 6), ('Info', 8), ('Debug', 10),

DeviceResultFields

Value:
"eventState", "severity", "component", "eventClass", "summary", "first\
Time", "lastTime", "count"

ComponentWhere

Value:
"\"(device = '%s' and component = '%s')\"" " % (me.device().getDmdKey(\
), escape_string(me.name()))"

ComponentResultFields

Value:
"eventState", "severity", "eventClass", "summary", "firstTime", "lastT\
ime", "count"

EventClassInstWhere

Value:
"""\"eventClass = '%s' and eventClassKey = '%s'\" % (\
                                me.getEventClass(), me.eventClassKey)"\
""

DeviceClassWhere

Value:
"\"(DeviceClass = '%s' or DeviceClass like '%s/%%') \" % \
                         ( me.getDmdKey(), me.getDmdKey() )"

DeviceGroupWhere

Value:
"\"DeviceGroups like '%%|%s%%'\" % me.getDmdKey()"

defaultResultFields

Value:
"eventState", "severity", "device", "component", "eventClass", "summar\
y", "firstTime", "lastTime", "count"

defaultEventId

Value:
'device', 'component', 'eventClass', 'eventKey', 'severity'

_properties

Value:
{'id': 'backend', 'type': 'string', 'mode': 'r',}, {'id': 'username', \
'type': 'string', 'mode': 'w'}, {'id': 'password', 'type': 'string', '\
mode': 'w'}, {'id': 'host', 'type': 'string', 'mode': 'w'}, {'id': 'da\
tabase', 'type': 'string', 'mode': 'w'}, {'id': 'port', 'type': 'int',\
 'mode': 'w'}, {'id': 'defaultWhere', 'type': 'text', 'mode': 'w'}, {'\
id': 'defaultOrderby', 'type': 'text', 'mode': 'w'}, {'id': 'defaultRe\
sultFields', 'type': 'lines', 'mode': 'w'}, {'id': 'statusTable', 'typ\
e': 'string', 'mode': 'w'}, {'id': 'detailTable', 'type': 'string', 'm\
...

_relations

Value:
"commands", ToManyCont(ToOne, "Products.ZenEvents.EventCommand", "even\
tManager"),