You can subscribe to this list here.
2007 |
Jan
|
Feb
(65) |
Mar
(276) |
Apr
(544) |
May
(638) |
Jun
(225) |
Jul
(204) |
Aug
(294) |
Sep
(532) |
Oct
(506) |
Nov
(324) |
Dec
(359) |
---|---|---|---|---|---|---|---|---|---|---|---|---|
2008 |
Jan
(208) |
Feb
(225) |
Mar
(248) |
Apr
(388) |
May
(222) |
Jun
(47) |
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
From: <sv...@ze...> - 2007-04-05 14:23:34
|
Author: jstevens Date: 2007-04-05 10:23:34 -0400 (Thu, 05 Apr 2007) New Revision: 4520 Added: trunk/Products/ZenHub/services/RRDService.py trunk/Products/ZenHub/services/WebConfig.py Modified: trunk/Products/ZenHub/HubService.py trunk/Products/ZenHub/PBDaemon.py Log: Beginning of rrdservice and webconfig. PBDaemon includes some code from RRDDaemon to include an automagically reconnecting pb factory. Modified: trunk/Products/ZenHub/HubService.py =================================================================== --- trunk/Products/ZenHub/HubService.py 2007-04-05 14:14:55 UTC (rev 4519) +++ trunk/Products/ZenHub/HubService.py 2007-04-05 14:23:34 UTC (rev 4520) @@ -12,10 +12,6 @@ self.instance = instance self.listeners = [] - def getMonitor(monitorType='Performance'): - container = getattr(self.dmd.Monitors, monitorType, None) - return container and container._getOb(self.instance) - def update(self, object): pass Modified: trunk/Products/ZenHub/PBDaemon.py =================================================================== --- trunk/Products/ZenHub/PBDaemon.py 2007-04-05 14:14:55 UTC (rev 4519) +++ trunk/Products/ZenHub/PBDaemon.py 2007-04-05 14:23:34 UTC (rev 4520) @@ -13,9 +13,13 @@ import Globals from Products.ZenUtils.ZenDaemon import ZenDaemon +#from Products.ZenUtils.Driver import drive from Products.ZenUtils.Step import Step import Products.ZenEvents.Event as Event +from Products.ZenUtils.PBUtil import ReconnectingPBClientFactory +from Products.ZenHub.zenhub import PB_PORT + from twisted.internet import reactor, defer from twisted.cred import credentials from twisted.spread import pb @@ -46,6 +50,12 @@ # } +DEFAULT_HUB_HOST = 'localhost' +DEFAULT_HUB_PORT = PB_PORT +DEFAULT_HUB_USERNAME = 'admin' +DEFAULT_HUB_PASSWORD = 'zenoss' + + class PBDaemon(ZenDaemon, pb.Referenceable): name = 'pbdaemon' @@ -56,24 +66,29 @@ #pb.Referenceable.__init__(self) self.perspective = None self.services = {} + self.eventQueue = [] - def connect(self, username, password, host='localhost', port=8789): - ''' Connect to zenhub. Returns a deferred. - ''' - factory = pb.PBClientFactory() - reactor.connectTCP("localhost", port, factory) - def callback(result): - self.perspective = result - return result - def errback(error): - import pdb; pdb.set_trace() - self.log.error('failed to connect to zenhub') - return error - d = factory.login( - credentials.UsernamePassword(username, password), client=self) - d.addCallback(callback) - d.addErrback(errback) + def connect(self): + + def gotPerspective(perspective): + "Every time we reconnect this function is called" + self.log.warning("Reconnected to ZenHub") + self.perspective = perspective + d2 = self.getInitialServices() + if not d.called: + d2.chainDeferred(d) + + d = defer.Deferred() + factory = ReconnectingPBClientFactory() + self.log.debug("Connecting to %s", self.options.hubHost) + reactor.connectTCP(self.options.hubHost, self.options.hubPort, factory) + username = self.options.username + password = self.options.password + self.log.debug("Logging in as %s", username) + c = credentials.UsernamePassword(username, password) + factory.gotPerspective = gotPerspective + factory.startLogin(c) return d @@ -94,47 +109,78 @@ self.log.debug('errback after getting service %s' % serviceName) self.log.error('Could not retrieve service %s' % serviceName) return error - d = self.perspective.callRemote('getService', serviceName, self) + d = self.perspective.callRemote('getService', serviceName) d.addCallback(callback, serviceName) d.addErrback(errback, serviceName) return d - - def setupConnectionAndServices(self): - ''' Connects to zenhub and sets up services listed in - self.initialServices. - This is a generator that is used with a call to Step. - ''' - self.log.debug('setupConnectAndServices') - d = self.connect(self.options.username, - self.options.password, - self.options.hubAddress, - self.options.hubPort) - yield d + + def getInitialServices(self): self.log.debug('setting up services %s' % ', '.join([n for n in self.initialServices])) d = defer.DeferredList( [self.getService(name) for name in self.initialServices]) - yield d - self.connected() - - + return d + + def connected(self): self.log.debug('connected') self.eventSvc = self.services['EventService'] + self.eventSvc.callRemote('sendEvent', startEvent) def run(self): self.log.debug('run') - d = Step(self.setupConnectionAndServices()) + d = self.connect() + def callback(result): + self.connected() + return result + def errback(error): + self.log.error('Unable to connect to zenhub.') + self.stop() + d.addCallbacks(callback, errback) reactor.run() + self.log.info('%s shutting down' % self.name) + def stop(self): + if reactor.running: + reactor.stop() + + + def sendEvent(self, event=None): + ''' Add event to queue of events to be sent. If we have an event + service then process the queue. + ''' + def errback(error, event): + # If we get an error when sending an event we add it back to the + # queue. This is great if the eventservice is just temporarily + # unavailable. This is not so good if there is a problem with + # this event in particular, in which case we'll repeatedly + # attempt to send it. We need to do some analysis of the error + # before sticking event back in the queue. + # + # Maybe this is overkill and if we have an operable + # event service we should just log events that don't get sent + # and then drop them. + self.log.error('Error sending event') + self.eventQueue.append(event) + if event: + self.eventQueue.append(event) + if self.eventSvc: + for i in range(len(self.eventQueue)): + event = self.eventQueue[0] + del self.eventQueue[0] + d = self.eventSvc.callRemote('sendEvent', event) + d.addErrback(errback, event) + + def remote_getName(self): return self.name def remote_shutdown(self, result): + self.stop() try: self.sigTerm() except SystemExit: @@ -144,21 +190,24 @@ def buildOptions(self): ZenDaemon.buildOptions(self) - self.parser.add_option('--hub-addr', - dest='hubAddress', - default='localhost', - help='Address of zenhub daemon.' - ' Default is localhost.') + self.parser.add_option('--hub-host', + dest='hubHost', + default=DEFAULT_HUB_HOST, + help='Host of zenhub daemon.' + ' Default is %s.' % DEFAULT_HUB_HOST) self.parser.add_option('--hub-port', dest='hubPort', - default=8789, - help='Port zenx listens on. Default is 8789') + default=DEFAULT_HUB_PORT, + help='Port zenhub listens on.' + 'Default is %s.' % DEFAULT_HUB_PORT) self.parser.add_option('--username', dest='username', - default='admin', - help='Username for zenhub login') + default=DEFAULT_HUB_USERNAME, + help='Username for zenhub login.' + ' Default is %s.' % DEFAULT_HUB_USERNAME) self.parser.add_option('--password', dest='password', - default='zenoss', - help='Password for zenhub login') + default=DEFAULT_HUB_PASSWORD, + help='Password for zenhub login.' + ' Default is %s.' % DEFAULT_HUB_PASSWORD) Added: trunk/Products/ZenHub/services/RRDService.py Added: trunk/Products/ZenHub/services/WebConfig.py |
From: <sv...@ze...> - 2007-04-05 14:14:54
|
Author: ian Date: 2007-04-05 10:14:55 -0400 (Thu, 05 Apr 2007) New Revision: 4519 Modified: trunk/Products/ZenEvents/EventClass.py Log: * Reverted r4435 as it broke loading from XML. Modified: trunk/Products/ZenEvents/EventClass.py =================================================================== --- trunk/Products/ZenEvents/EventClass.py 2007-04-05 13:52:23 UTC (rev 4518) +++ trunk/Products/ZenEvents/EventClass.py 2007-04-05 14:14:55 UTC (rev 4519) @@ -52,7 +52,7 @@ default_catalog = "eventClassSearch" _relations = ZenPackable._relations + ( - ("instances", ToManyCont(ToOne,"EventClassInst","eventClass")), + ("instances", ToManyCont(ToOne,"Products.ZenEvents.EventClassInst","eventClass")), ) |
From: <sv...@ze...> - 2007-04-05 13:52:23
|
Author: marc Date: 2007-04-05 09:52:23 -0400 (Thu, 05 Apr 2007) New Revision: 4518 Modified: trunk/bin/zenprodrm Log: #1165 * Added confirmation prompt Modified: trunk/bin/zenprodrm =================================================================== --- trunk/bin/zenprodrm 2007-04-05 13:19:26 UTC (rev 4517) +++ trunk/bin/zenprodrm 2007-04-05 13:52:23 UTC (rev 4518) @@ -5,17 +5,27 @@ # Copyright (c) 2003 Confmon Corporation. All rights reserved. # ################################################################# - -. $ZENHOME/bin/zenfunctions -cd $ZENHOME/Products +read -p "Are you sure you would like to delete Zenoss? (Y/n) " -n 1 +echo "" +if [ $REPLY != 'Y' ] ; then + echo No actions taken. + exit +else + . $ZENHOME/bin/zenfunctions -for d in $ZENPRODUCTS -do - echo Removing product $d... - rm -rf $d - rm -f VERSION.txt -done -rm -rf .svn -rm -f *.txt -exit; + cd $ZENHOME/Products + + for d in $ZENPRODUCTS + do + echo Removing product $d... + rm -rf $d + rm -f VERSION.txt + done + rm -rf .svn + rm -f *.txt + exit; +fi + + + |
From: <sv...@ze...> - 2007-04-05 13:19:25
|
Author: ecn Date: 2007-04-05 09:19:26 -0400 (Thu, 05 Apr 2007) New Revision: 4517 Added: trunk/inst/conf/hubpasswd trunk/inst/conf/zenhub.conf Log: example hub password file Added: trunk/inst/conf/hubpasswd Added: trunk/inst/conf/zenhub.conf |
From: <sv...@ze...> - 2007-04-05 12:23:15
|
Author: ian Date: 2007-04-05 08:23:16 -0400 (Thu, 05 Apr 2007) New Revision: 4516 Modified: trunk/Products/ZenModel/skins/zenmodel/Dashboard.pt trunk/Products/ZenModel/skins/zenmodel/dashboard.js trunk/Products/ZenModel/skins/zenmodel/templates.pt trunk/Products/ZenUtils/js/zenui.js trunk/Products/ZenWidgets/skins/zenui/javascript/dialog.js trunk/Products/ZenWidgets/skins/zenui/javascript/selection.js trunk/Products/ZenWidgets/skins/zenui/zenuimacros.pt Log: * Centralized CSS and JS imports in the default header macros Modified: trunk/Products/ZenModel/skins/zenmodel/Dashboard.pt =================================================================== --- trunk/Products/ZenModel/skins/zenmodel/Dashboard.pt 2007-04-05 12:17:36 UTC (rev 4515) +++ trunk/Products/ZenModel/skins/zenmodel/Dashboard.pt 2007-04-05 12:23:16 UTC (rev 4516) @@ -89,7 +89,7 @@ <tal:block tal:define="tabletitle string:Zenoss Infrastructure Issues"> <tal:block metal:use-macro="here/zenuimacros/macros/zentable"> -<div metal:fill-slot="zentablecontents"> +<div metal:fill-slot="zentablecontents" tal:omit-tag=""> <!-- BEGIN TABLE CONTENTS --> <tr> Modified: trunk/Products/ZenModel/skins/zenmodel/dashboard.js =================================================================== --- trunk/Products/ZenModel/skins/zenmodel/dashboard.js 2007-04-05 12:17:36 UTC (rev 4515) +++ trunk/Products/ZenModel/skins/zenmodel/dashboard.js 2007-04-05 12:23:16 UTC (rev 4516) @@ -6,8 +6,8 @@ //var url="data.json"; -// Look for stupid IE browsers -var isie = navigator.userAgent.indexOf('MSIE') != -1; +// IE detection in 20 bytes! +var isie//@cc_on=1; function updateTimestamp(){ $("dashTime").innerHTML = "<b>Refreshing...</b>"; @@ -85,8 +85,7 @@ } refreshData = function() { - //logger.debuggingBookmarklet(true) - //log("loading"); + log("Loading dashboard data..."); var defr = cancelWithTimeout( loadJSONDoc(dashurl), timeout); // timeout set on Dashboard defr.addCallback(updateDashboard); Modified: trunk/Products/ZenModel/skins/zenmodel/templates.pt =================================================================== --- trunk/Products/ZenModel/skins/zenmodel/templates.pt 2007-04-05 12:17:36 UTC (rev 4515) +++ trunk/Products/ZenModel/skins/zenmodel/templates.pt 2007-04-05 12:23:16 UTC (rev 4516) @@ -120,18 +120,22 @@ href="/zport/portal_skins/zenevents.css" > <link rel="stylesheet" type="text/css" title="zenoss" href="/zport/portal_skins/css/tables.css" > + <link rel="stylesheet" type="text/css" title="zenoss" + href="css/menus.css"/> + <link rel="stylesheet" type="text/css" title="zenoss" + href="css/dialog.css"/> + <link rel="stylesheet" type="text/css" title="zenoss" + href="css/filterbox.css"/> + <script type="text/javascript" src="js/MochiKit.js"></script> + <script type="text/javascript" src="zenmodelfuncs.js"></script> + <script src="javascript/selection.js"></script> + <script src="js/zenui.js"></script> + <script src="js/zenutils.js"></script> + <script src="javascript/menus.js"></script> <!--[if IE]> <link rel="stylesheet" type="text/css" title="zenoss" - href="/zport/portal_skins/zenoss_ie.css" > + href="zenoss_ie.css" > <![endif]--> - <script type="text/javascript" - src="/zport/js/MochiKit.js"></script> - <script type="text/javascript" - src="/zport/portal_skins/zenmodelfuncs.js"></script> - <script type="text/javascript" - src="/zport/js/zenui.js"></script> - <script src="javascript/selection.js"></script> - <script src="javascript/menus.js"></script> </tal:block> <!-- ====================================================== @@ -263,7 +267,6 @@ <div id="selectedtablinehider" tal:condition="python:tab.get('selected',None)"> - </div> </td> Modified: trunk/Products/ZenUtils/js/zenui.js =================================================================== --- trunk/Products/ZenUtils/js/zenui.js 2007-04-05 12:17:36 UTC (rev 4515) +++ trunk/Products/ZenUtils/js/zenui.js 2007-04-05 12:23:16 UTC (rev 4516) @@ -198,7 +198,8 @@ connect('leftPaneToggle','onmouseover', function() { setStyle('leftPaneToggle', { 'background':'transparent ' + - 'url("img/leftpanetoggle_bg_expanded_depressed.gif") top left repeat-x' + 'url("img/leftpanetoggle_bg_expanded_depressed.gif") '+ + 'top left repeat-x' }) }); connect('leftPaneToggle','onmouseout', function() { @@ -215,7 +216,6 @@ function checkForCollapsed() { var x = getCookie('Zenoss_Collapsed_Menu'); - log(x); if (!x){ disconnectAll('leftPaneToggle'); connect('leftPaneToggle','onclick',toggleLeftPane); @@ -237,3 +237,4 @@ } addLoadEvent(checkForCollapsed); +console.log("Left pane toggle javascript loaded."); Modified: trunk/Products/ZenWidgets/skins/zenui/javascript/dialog.js =================================================================== --- trunk/Products/ZenWidgets/skins/zenui/javascript/dialog.js 2007-04-05 12:17:36 UTC (rev 4515) +++ trunk/Products/ZenWidgets/skins/zenui/javascript/dialog.js 2007-04-05 12:23:16 UTC (rev 4516) @@ -16,7 +16,6 @@ this.box.hide = bind(this.hide, this); this.box.submit_form = bind(this.submit_form, this); this.parentElem = this.box.parentNode; - log(this.parentElem); this.defaultContent = this.box.innerHTML setStyle(this.box, { 'position':'absolute', @@ -89,3 +88,4 @@ } } +console.log("Dialog javascript loaded.") Modified: trunk/Products/ZenWidgets/skins/zenui/javascript/selection.js =================================================================== --- trunk/Products/ZenWidgets/skins/zenui/javascript/selection.js 2007-04-05 12:17:36 UTC (rev 4515) +++ trunk/Products/ZenWidgets/skins/zenui/javascript/selection.js 2007-04-05 12:23:16 UTC (rev 4516) @@ -46,3 +46,4 @@ } addLoadEvent(connectCheckboxListeners); +console.log("Checkbox javascript loaded."); Modified: trunk/Products/ZenWidgets/skins/zenui/zenuimacros.pt =================================================================== --- trunk/Products/ZenWidgets/skins/zenui/zenuimacros.pt 2007-04-05 12:17:36 UTC (rev 4515) +++ trunk/Products/ZenWidgets/skins/zenui/zenuimacros.pt 2007-04-05 12:23:16 UTC (rev 4516) @@ -1,6 +1,5 @@ <tal:block metal:define-macro="basemenu" tal:condition="python:hasattr(here, 'getMenus')"> -<link href="css/menus.css" rel="stylesheet" type="text/css" /> <div class="menu" tal:define=" menu_ids menu_ids | python:['Edit','Actions']; @@ -21,6 +20,7 @@ Menu </tal:block> </a> +</li> <div class="submenu" tal:attributes="id string:${menu}_submenu"> <div class="menu_top_rounded"> </div> <div class="menu_bottom"> </div> @@ -37,10 +37,10 @@ </li> </ul> </div> -<script tal:content="string: +<script tal:condition="python:here.getMenus(menu, here)" +tal:content="string: registerSubmenu('${menu}_parent','${menu}_submenu');">javascript madness </script> -</li> </tal:block> <tal:block metal:use-macro="here/userCommandsMacros/macros/runCommandMenu"/> </ul> @@ -84,7 +84,6 @@ <!-- FILTERBOX MACRO --> <tal:block metal:define-macro="filterbox"> -<link href="css/filterbox.css" rel="stylesheet" type="text/css" /> <div class="filterbox" tal:define=" tableName tableName | nothing; ts python:test( @@ -111,7 +110,6 @@ <tal:block metal:define-macro="devmovemenu"> -<link href="css/menus.css" rel="stylesheet" type="text/css" /> <div class="littlemenu" tal:attributes="id menu_id" tal:define="menuitems python:here.getMenus(menu_id, here); |
From: <sv...@ze...> - 2007-04-05 12:17:37
|
Author: ian Date: 2007-04-05 08:17:36 -0400 (Thu, 05 Apr 2007) New Revision: 4515 Modified: trunk/Products/ZenModel/DataRoot.py Log: * Added method to access ZenEventManager's JSON method Modified: trunk/Products/ZenModel/DataRoot.py =================================================================== --- trunk/Products/ZenModel/DataRoot.py 2007-04-05 12:16:27 UTC (rev 4514) +++ trunk/Products/ZenModel/DataRoot.py 2007-04-05 12:17:36 UTC (rev 4515) @@ -216,6 +216,12 @@ """Return the current event list for this managed entity. """ return self.ZenEventManager.getEventList(**kwargs) + + + def getJSONEventsInfo(self, **kwargs): + """Return the current event list for this managed entity. + """ + return self.ZenEventManager.getJSONEventsInfo(**kwargs) def getDmdRoots(self): |
From: <sv...@ze...> - 2007-04-05 12:17:20
|
Author: ian Date: 2007-04-05 08:16:27 -0400 (Thu, 05 Apr 2007) New Revision: 4514 Modified: trunk/Products/ZenEvents/EventManagerBase.py trunk/Products/ZenEvents/ZEvent.py Log: * Added methods for accessing event data as JSON Modified: trunk/Products/ZenEvents/EventManagerBase.py =================================================================== --- trunk/Products/ZenEvents/EventManagerBase.py 2007-04-05 00:01:44 UTC (rev 4513) +++ trunk/Products/ZenEvents/EventManagerBase.py 2007-04-05 12:16:27 UTC (rev 4514) @@ -13,6 +13,7 @@ import time import types import random +import simplejson random.seed() import logging log = logging.getLogger("zen.Events") @@ -882,10 +883,17 @@ security.declareProtected('View','getJSONEventsInfo') - def getJSONEventsInfo(self, simple=False, REQUEST=None): + def getJSONEventsInfo(self, fields=[], simple=False, REQUEST=None): """ Event data in JSON format. """ + if not fields: fields = self.defaultResultFields + data = self.getEventList() + data = [x.getDataForJSON(fields) for x in data] + final = (fields, data) + return simplejson.dumps(final) + + #========================================================================== # Event sending functions Modified: trunk/Products/ZenEvents/ZEvent.py =================================================================== --- trunk/Products/ZenEvents/ZEvent.py 2007-04-05 00:01:44 UTC (rev 4513) +++ trunk/Products/ZenEvents/ZEvent.py 2007-04-05 12:16:27 UTC (rev 4514) @@ -29,8 +29,16 @@ self.updateFromFields(fields, data) self._zem = manager.getId() self._baseurl = manager.absolute_url_path() - + def getDataForJSON(self, fields): + """ returns data ready for serialization + """ + def val(field): return getattr(self, field, None) + data = dict([(field, val(field)) for field in fields]) + data['cssclass']=self.getCssClass() + return data + + def getDataListWithLinks(self, fields, cssClass=''): """return a list of data elements that map to the fields parameter. """ |
From: <sv...@ze...> - 2007-04-05 00:01:45
|
Author: edahl Date: 2007-04-04 20:01:44 -0400 (Wed, 04 Apr 2007) New Revision: 4513 Modified: trunk/Products/ZenModel/Device.py Log: * remove terminalserver relation from device Modified: trunk/Products/ZenModel/Device.py =================================================================== --- trunk/Products/ZenModel/Device.py 2007-04-05 00:00:55 UTC (rev 4512) +++ trunk/Products/ZenModel/Device.py 2007-04-05 00:01:44 UTC (rev 4513) @@ -228,7 +228,7 @@ _relations = ManagedEntity._relations + ( ("deviceClass", ToOne(ToManyCont, "DeviceClass", "devices")), - ("termserver", ToOne(ToMany, "TerminalServer", "devices")), + #("termserver", ToOne(ToMany, "TerminalServer", "devices")), ("monitors", ToMany(ToMany, "StatusMonitorConf", "devices")), ("perfServer", ToOne(ToMany, "PerformanceConf", "devices")), ("location", ToOne(ToMany, "Location", "devices")), |
From: <sv...@ze...> - 2007-04-05 00:00:55
|
Author: edahl Date: 2007-04-04 20:00:55 -0400 (Wed, 04 Apr 2007) New Revision: 4512 Modified: trunk/Products/ZenModel/data/events.xml Log: * more event rule definitions Modified: trunk/Products/ZenModel/data/events.xml =================================================================== --- trunk/Products/ZenModel/data/events.xml 2007-04-04 23:59:59 UTC (rev 4511) +++ trunk/Products/ZenModel/data/events.xml 2007-04-05 00:00:55 UTC (rev 4512) @@ -1,146 +1,152 @@ <?xml version="1.0"?> <objects> <object id='/zport/dmd/Events' module='Products.ZenEvents.EventClass' class='EventClass'> -<property visible="True" type="string" id="zEventAction" > +<property visible="True" type="string" id="zEventAction" > status </property> -<property visible="True" type="int" id="zEventSeverity" > +<property visible="True" type="int" id="zEventSeverity" > -1 </property> <object id='Status' module='Products.ZenEvents.EventClass' class='EventClass'> -<object id='Heartbeat' module='Products.ZenEvents.EventClass' class='EventClass'> -</object> <object id='Ping' module='Products.ZenEvents.EventClass' class='EventClass'> +<property visible="True" type="lines" id="zEventClearClasses" > +['/Status/Wmi/Conn'] +</property> </object> -<object id='WinEventlog' module='Products.ZenEvents.EventClass' class='EventClass'> -</object> <object id='Snmp' module='Products.ZenEvents.EventClass' class='EventClass'> </object> -<object id='XmlRpc' module='Products.ZenEvents.EventClass' class='EventClass'> +<object id='WinService' module='Products.ZenEvents.EventClass' class='EventClass'> +<tomanycont id='instances'> +<object id='Service Control Manager_7000' module='Products.ZenEvents.EventClassInst' class='EventClassInst'> +<property type="string" id="eventClassKey" mode="w" > +Service Control Manager_7000 +</property> +<property type="int" id="sequence" mode="w" > +0 +</property> +<property type="string" id="example" mode="w" > +The ImageNow Server Fax Agent 5.41 service failed to start due to the following error: +The service did not start due to a logon failure. +</property> +<property type="text" id="resolution" mode="w" > +Check the Username and Password on the specified service to make sure it is correct. +</property> +<property visible="True" type="int" id="zEventSeverity" > +4 +</property> +<toone id='eventClass' objid='/zport/dmd/Events/Status/WinService'/> </object> -<object id='Perf' module='Products.ZenEvents.EventClass' class='EventClass'> +<object id='Service Control Manager_7038' module='Products.ZenEvents.EventClassInst' class='EventClassInst'> +<property type="string" id="eventClassKey" mode="w" > +Service Control Manager_7038 +</property> +<property type="int" id="sequence" mode="w" > +0 +</property> +<property type="string" id="example" mode="w" > +The ImageNow Server Fax Agent 5.41 service was unable to log on as .\Administrator with the currently configured +password due to the following error: +Logon failure: unknown user name or bad password. + +To ensure that the service is +configured properly, use the Services snap-in in Microsoft Management +Console (MMC). +</property> +<property type="text" id="resolution" mode="w" > +Check the Username and Password on the specified service to make sure it is correct. +</property> +<property visible="True" type="int" id="zEventSeverity" > +4 +</property> +<toone id='eventClass' objid='/zport/dmd/Events/Status/WinService'/> </object> -<object id='Update' module='Products.ZenEvents.EventClass' class='EventClass'> +</tomanycont> </object> -<object id='OSProcess' module='Products.ZenEvents.EventClass' class='EventClass'> -</object> <object id='IpService' module='Products.ZenEvents.EventClass' class='EventClass'> </object> -<object id='Web' module='Products.ZenEvents.EventClass' class='EventClass'> -</object> <object id='Wmi' module='Products.ZenEvents.EventClass' class='EventClass'> <object id='Conn' module='Products.ZenEvents.EventClass' class='EventClass'> </object> </object> -<object id='Http' module='Products.ZenEvents.EventClass' class='EventClass'> +<object id='zenwinmodeler' module='Products.ZenEvents.EventClass' class='EventClass'> </object> -<object id='Database' module='Products.ZenEvents.EventClass' class='EventClass'> +<object id='XmlRpc' module='Products.ZenEvents.EventClass' class='EventClass'> </object> -<object id='Web' module='Products.ZenEvents.EventClass' class='EventClass'> </object> -</object> <object id='Unknown' module='Products.ZenEvents.EventClass' class='EventClass'> </object> <object id='Security' module='Products.ZenEvents.EventClass' class='EventClass'> <object id='Login' module='Products.ZenEvents.EventClass' class='EventClass'> -<object id='Exit' module='Products.ZenEvents.EventClass' class='EventClass'> -<property visible="True" type="lines" id="zEventClearClasses" > -['/Security/Conn/Open'] +<property visible="True" type="string" id="zEventAction" > +history </property> -<tomanycont id='instances'> -<object id='dropbear' module='Products.ZenEvents.EventClassInst' class='EventClassInst'> -<property type="string" id="eventClassKey" mode="w" > -dropbear +<property visible="True" type="int" id="zEventSeverity" > +2 </property> -<property type="int" id="sequence" mode="w" > -3 -</property> -<property type="string" id="regex" mode="w" > -exit after auth \((?P<eventKey>\w+)\): Exited normally -</property> -<property type="string" id="example" mode="w" > -exit after auth (root): Exited normally -</property> -<toone id='eventClass' objid='/zport/dmd/Events/Security/Login/Exit'/> -</object> -</tomanycont> -</object> -<object id='Success' module='Products.ZenEvents.EventClass' class='EventClass'> -<property visible="True" type="lines" id="zEventClearClasses" > -['/Security/Login/BadPassword', '/Security/Login/Failure'] -</property> <tomanycont id='instances'> -<object id='dropbear' module='Products.ZenEvents.EventClassInst' class='EventClassInst'> +<object id='MSExchangeIS Mailbox Store_1009' module='Products.ZenEvents.EventClassInst' class='EventClassInst'> <property type="string" id="eventClassKey" mode="w" > -dropbear +MSExchangeIS Mailbox Store_1009 </property> <property type="int" id="sequence" mode="w" > -2 +0 </property> -<property type="string" id="regex" mode="w" > -password auth succeeded for '(?P<eventKey>\w+)' -</property> <property type="string" id="example" mode="w" > -password auth succeeded for 'root' +MMCNT\tjeffers logged on as /O=Mercy Medical Center/OU=MMCNT/cn=Recipients/cn=tjeffers on database "First Storage Group\Mailbox Store (MHSMAIL1)". + + +For more information, click http://www.microsoft.com/contentredirect.asp. </property> -<toone id='eventClass' objid='/zport/dmd/Events/Security/Login/Success'/> -</object> -<object id='dropbear_pubkey' module='Products.ZenEvents.EventClassInst' class='EventClassInst'> -<property type="string" id="eventClassKey" mode="w" > -dropbear -</property> -<property type="int" id="sequence" mode="w" > +<property visible="True" type="int" id="zEventSeverity" > 1 </property> -<property type="string" id="regex" mode="w" > -pubkey auth succeeded for '(?P<username>\S+)' with key md5 (?P<key>\S+) from (?P<eventKey>\S+):(?P<remotePort>\S+) +<property visible="True" type="string" id="zEventAction" > +status </property> -<property type="string" id="example" mode="w" > -pubkey auth succeeded for 'root' with key md5 41:61:33:cc:73:61:53:ad:0e:6d:62:f5:56:c1:e7:ba from 1.1.1.1:55609 -</property> -<toone id='eventClass' objid='/zport/dmd/Events/Security/Login/Success'/> +<toone id='eventClass' objid='/zport/dmd/Events/Security/Login'/> </object> -<object id='sshd' module='Products.ZenEvents.EventClassInst' class='EventClassInst'> +<object id='MSExchangeIS Mailbox Store_1011' module='Products.ZenEvents.EventClassInst' class='EventClassInst'> <property type="string" id="eventClassKey" mode="w" > -sshd +MSExchangeIS Mailbox Store_1011 </property> <property type="int" id="sequence" mode="w" > 0 </property> -<property type="string" id="regex" mode="w" > -Accepted password for (?P<eventKey>\S+) from (?P<remoteIp>\S+) port (?P<port>\d+) (?P<protocol>\S+) -</property> <property type="string" id="example" mode="w" > -Accepted password for edahl from 1.1.1.1 port 53480 ssh2 +NT AUTHORITY\SYSTEM logged on as /o=Mercy Medical Center/ou=MMCNT/cn=Recipients/cn=SRooney on database "First Storage Group\Mailbox Store (MHSMAIL1)", using administrator privileges. + + +For more information, click http://www.microsoft.com/contentredirect.asp. </property> -<toone id='eventClass' objid='/zport/dmd/Events/Security/Login/Success'/> +<property visible="True" type="int" id="zEventSeverity" > +1 +</property> +<property visible="True" type="string" id="zEventAction" > +status +</property> +<toone id='eventClass' objid='/zport/dmd/Events/Security/Login'/> </object> -</tomanycont> -</object> -<object id='NoUser' module='Products.ZenEvents.EventClass' class='EventClass'> -<property visible="True" type="None" id="zEvent_severity" > -2 -</property> -<tomanycont id='instances'> -<object id='dropbear' module='Products.ZenEvents.EventClassInst' class='EventClassInst'> +<object id='defaultmapping' module='Products.ZenEvents.EventClassInst' class='EventClassInst'> <property type="string" id="eventClassKey" mode="w" > -dropbear +defaultmapping </property> <property type="int" id="sequence" mode="w" > -6 +1 </property> <property type="string" id="regex" mode="w" > -login attempt for nonexistent user from (?P<eventKey>\S+):\d+ +\d+ \S+ \S+ SEV=\d+ (?P<component>\S+) RPT=\d+ \S+ (?P<summary>Group \[(?P<secGroup>\S+)\] User \[(?P<remoteUser>\S+)\] PHASE 2 COMPLETED) </property> <property type="string" id="example" mode="w" > -login attempt for nonexistent user from 1.1.1.1:41448 +1101379 03/17/2006 10:52:59.040 SEV=4 IKE/120 RPT=54919 70.194.239.98 Group [IPsecUsers] User [mmcnt\wchappell] PHASE 2 COMPLETED (msgid=ae41db32) </property> -<toone id='eventClass' objid='/zport/dmd/Events/Security/Login/NoUser'/> +<property type="text" id="explanation" mode="w" > +\d+ \S+ \S+ SEV=\d+ (?P<component>\S+) RPT=\d+ \S+ (?P<summary>.*) +</property> +<toone id='eventClass' objid='/zport/dmd/Events/Security/Login'/> </object> </tomanycont> -</object> <object id='BadPass' module='Products.ZenEvents.EventClass' class='EventClass'> -<property visible="True" type="None" id="zEvent_severity" > +<property visible="True" type="int" id="zEventSeverity" > 2 </property> <tomanycont id='instances'> @@ -149,7 +155,7 @@ dropbear </property> <property type="int" id="sequence" mode="w" > -4 +1 </property> <property type="string" id="regex" mode="w" > bad password attempt for '(?P<eventKey>\w+)' @@ -170,23 +176,57 @@ Failed password for (?P<eventKey>\S+) from (?P<remoteIp>\S+) port (?P<remotePort>\d+) (?P<protocol>\S+) </property> <property type="string" id="example" mode="w" > -Failed password for edahl from 1.1.1.1 port 53529 ssh2 +Failed password for edahl from 10.2.1.11 port 53529 ssh2 </property> <toone id='eventClass' objid='/zport/dmd/Events/Security/Login/BadPass'/> </object> </tomanycont> </object> <object id='Fail' module='Products.ZenEvents.EventClass' class='EventClass'> -<property visible="True" type="None" id="zEvent_severity" > +<property visible="True" type="int" id="zEventSeverity" > +3 +</property> +<tomanycont id='instances'> +<object id='MSFTPSVC_100' module='Products.ZenEvents.EventClassInst' class='EventClassInst'> +<property type="string" id="eventClassKey" mode="w" > +MSFTPSVC_100 +</property> +<property type="int" id="sequence" mode="w" > +0 +</property> +<property type="string" id="example" mode="w" > +The server was unable to logon the Windows NT account 'mmcnt\anangpal' due to the following error: Logon failure: unknown user name or bad password. The data is the error code. + +For additional information specific to this message please visit the Microsoft Online Support site located at: http://www.microsoft.com/contentredirect.asp. +</property> +<property visible="True" type="int" id="zEventSeverity" > 4 </property> -<tomanycont id='instances'> +<toone id='eventClass' objid='/zport/dmd/Events/Security/Login/Fail'/> +</object> +<object id='W3SVC_100' module='Products.ZenEvents.EventClassInst' class='EventClassInst'> +<property type="string" id="eventClassKey" mode="w" > +W3SVC_100 +</property> +<property type="int" id="sequence" mode="w" > +0 +</property> +<property type="string" id="example" mode="w" > +The server was unable to logon the Windows NT account 'khall2' due to the following error: Logon failure: unknown user name or bad password. The data is the error code. + +For additional information specific to this message please visit the Microsoft Online Support site located at: http://www.microsoft.com/contentredirect.asp. +</property> +<property visible="True" type="int" id="zEventSeverity" > +3 +</property> +<toone id='eventClass' objid='/zport/dmd/Events/Security/Login/Fail'/> +</object> <object id='dropbear' module='Products.ZenEvents.EventClassInst' class='EventClassInst'> <property type="string" id="eventClassKey" mode="w" > dropbear </property> <property type="int" id="sequence" mode="w" > -5 +2 </property> <property type="string" id="regex" mode="w" > exit before auth \(user '(?P<eventKey>\S+)', (?P<failures>\S+) fails\): Max auth tries reached @@ -196,6 +236,18 @@ </property> <toone id='eventClass' objid='/zport/dmd/Events/Security/Login/Fail'/> </object> +<object id='remote(pam_unix)' module='Products.ZenEvents.EventClassInst' class='EventClassInst'> +<property type="string" id="eventClassKey" mode="w" > +remote(pam_unix) +</property> +<property type="int" id="sequence" mode="w" > +0 +</property> +<property type="string" id="example" mode="w" > +bad username [] +</property> +<toone id='eventClass' objid='/zport/dmd/Events/Security/Login/Fail'/> +</object> </tomanycont> </object> </object> @@ -223,7 +275,7 @@ </object> <object id='Conn' module='Products.ZenEvents.EventClass' class='EventClass'> <object id='Open' module='Products.ZenEvents.EventClass' class='EventClass'> -<property visible="True" type="None" id="zEvent_severity" > +<property visible="True" type="int" id="zEventSeverity" > 2 </property> <tomanycont id='instances'> @@ -238,7 +290,7 @@ Child connection from (?P<eventKey>\S+):\d+ </property> <property type="string" id="example" mode="w" > -Child connection from 1.1.1.1:55107 +Child connection from 10.2.1.11:55107 </property> <property visible="True" type="string" id="zEventAction" > history @@ -271,7 +323,7 @@ (?P<summary>Connection received from (?P<eventKey>\S+)) </property> <property type="string" id="example" mode="w" > -29/11/2005 16:12 Connection received from 1.1.1.1 +29/11/2005 16:12 Connection received from 10.2.1.11 </property> <toone id='eventClass' objid='/zport/dmd/Events/Security/Conn/Open'/> </object> @@ -279,7 +331,7 @@ </object> <object id='Close' module='Products.ZenEvents.EventClass' class='EventClass'> <property visible="True" type="lines" id="zEventClearClasses" > -['/Security/Conn/Open'] +['/Security/Connection/Open'] </property> <tomanycont id='instances'> <object id='dropbear' module='Products.ZenEvents.EventClassInst' class='EventClassInst'> @@ -287,7 +339,7 @@ dropbear </property> <property type="int" id="sequence" mode="w" > -7 +3 </property> <property type="string" id="regex" mode="w" > exit before auth \(user '(?P<eventKey>\w+)'.*: Exited normally @@ -302,7 +354,7 @@ dropbear </property> <property type="int" id="sequence" mode="w" > -8 +4 </property> <property type="string" id="regex" mode="w" > ^exit before auth: @@ -338,14 +390,130 @@ (?P<summary>Client (?P<remoteIp>\S+) disconnected) </property> <property type="string" id="example" mode="w" > -29/11/2005 16:16 Client 1.1.1.1 disconnected +29/11/2005 16:16 Client 10.2.1.11 disconnected </property> <toone id='eventClass' objid='/zport/dmd/Events/Security/Conn/Close'/> </object> </tomanycont> </object> </object> +<object id='Virus' module='Products.ZenEvents.EventClass' class='EventClass'> +<tomanycont id='instances'> +<object id='Symantec AntiVirus_4' module='Products.ZenEvents.EventClassInst' class='EventClassInst'> +<property type="string" id="eventClassKey" mode="w" > +Symantec AntiVirus_4 +</property> +<property type="int" id="sequence" mode="w" > +0 +</property> +<property type="string" id="example" mode="w" > +Update to computer HOSTNAME of virus definition file 80209g failed. Status 20000032 +</property> +<property visible="True" type="string" id="zEventAction" > +history +</property> +<toone id='eventClass' objid='/zport/dmd/Events/Security/Virus'/> </object> +<object id='Symantec AntiVirus_46' module='Products.ZenEvents.EventClassInst' class='EventClassInst'> +<property type="string" id="eventClassKey" mode="w" > +Symantec AntiVirus_46 +</property> +<property type="int" id="sequence" mode="w" > +0 +</property> +<property type="string" id="example" mode="w" > +Security Risk Found!Threat: Trojan.Dropper in File: G:\AHSInstall\TouchWorks 10.1.1 CD.part1.exe by: Scheduled scan. Action: Clean failed : Delete failed. Action Description: The file was left unchanged. +</property> +<property visible="True" type="int" id="zEventSeverity" > +3 +</property> +<toone id='eventClass' objid='/zport/dmd/Events/Security/Virus'/> +</object> +<object id='Symantec AntiVirus_5' module='Products.ZenEvents.EventClassInst' class='EventClassInst'> +<property type="string" id="eventClassKey" mode="w" > +Symantec AntiVirus_5 +</property> +<property type="int" id="sequence" mode="w" > +0 +</property> +<property type="string" id="example" mode="w" > +Threat Found!Threat: Trojan.Dropper in File: c:\speedtest\touchworks 10.1.1 cd.part1.exe by: Scheduled scan. Action: Delete succeeded. Action Description: The file was deleted successfully. +</property> +<property visible="True" type="int" id="zEventSeverity" > +3 +</property> +<toone id='eventClass' objid='/zport/dmd/Events/Security/Virus'/> +</object> +<object id='Symantec AntiVirus_51' module='Products.ZenEvents.EventClassInst' class='EventClassInst'> +<property type="string" id="eventClassKey" mode="w" > +Symantec AntiVirus_51 +</property> +<property type="int" id="sequence" mode="w" > +0 +</property> +<property type="string" id="example" mode="w" > +Security Risk Found!Threat: Trojan.Dropper in File: G:\AHSInstall\TouchWorks 10.1.1 CD.part1.exe by: Scheduled scan. Action: Delete succeeded. Action Description: The file was deleted successfully. +</property> +<property visible="True" type="int" id="zEventSeverity" > +3 +</property> +<toone id='eventClass' objid='/zport/dmd/Events/Security/Virus'/> +</object> +</tomanycont> +</object> +<object id='Auth' module='Products.ZenEvents.EventClass' class='EventClass'> +<property visible="True" type="int" id="zEventSeverity" > +3 +</property> +<tomanycont id='instances'> +<object id='CiscoAAA_5' module='Products.ZenEvents.EventClassInst' class='EventClassInst'> +<property type="string" id="eventClassKey" mode="w" > +CiscoAAA_5 +</property> +<property type="int" id="sequence" mode="w" > +0 +</property> +<property type="string" id="example" mode="w" > +CSMon Message: Service CSAuth has been suspended for a configured function to proceed. Monitoring will suspend until the service is restarted. +</property> +<property visible="True" type="int" id="zEventSeverity" > +1 +</property> +<toone id='eventClass' objid='/zport/dmd/Events/Security/Auth'/> +</object> +<object id='SNMP-3-AUTHFAIL' module='Products.ZenEvents.EventClassInst' class='EventClassInst'> +<property type="string" id="eventClassKey" mode="w" > +SNMP-3-AUTHFAIL +</property> +<property type="int" id="sequence" mode="w" > +0 +</property> +<property type="string" id="regex" mode="w" > +Authentication failure for SNMP req from host (?P<eventKey>\S+) +</property> +<property type="string" id="example" mode="w" > +Authentication failure for SNMP req from host 10.120.100.10 +</property> +<toone id='eventClass' objid='/zport/dmd/Events/Security/Auth'/> +</object> +<object id='snmp_authenticationFailure' module='Products.ZenEvents.EventClassInst' class='EventClassInst'> +<property type="string" id="eventClassKey" mode="w" > +snmp_authenticationFailure +</property> +<property type="int" id="sequence" mode="w" > +0 +</property> +<property type="string" id="example" mode="w" > +snmp trap snmp_authenticationFailure from 10.115.100.22 +</property> +<property visible="True" type="int" id="zEventSeverity" > +3 +</property> +<toone id='eventClass' objid='/zport/dmd/Events/Security/Auth'/> +</object> +</tomanycont> +</object> +</object> <object id='Ignore' module='Products.ZenEvents.EventClass' class='EventClass'> <property visible="True" type="string" id="zEventAction" > drop @@ -366,6 +534,36 @@ </property> <toone id='eventClass' objid='/zport/dmd/Events/Ignore'/> </object> +<object id='RadOncNS5XP' module='Products.ZenEvents.EventClassInst' class='EventClassInst'> +<property type="string" id="eventClassKey" mode="w" > +RadOncNS5XP +</property> +<property type="int" id="sequence" mode="w" > +0 +</property> +<property type="string" id="rule" mode="w" > +evt.priority>4 +</property> +<toone id='eventClass' objid='/zport/dmd/Events/Ignore'/> +</object> +<object id='Server Agents_1126' module='Products.ZenEvents.EventClassInst' class='EventClassInst'> +<property type="string" id="eventClassKey" mode="w" > +Server Agents_1126 +</property> +<property type="int" id="sequence" mode="w" > +0 +</property> +<property type="string" id="example" mode="w" > +System Information Agent: Health: The Fault +Tolerant Power Supply Sub-system has lost redundancy. Restore power +or replace any failed or missing power supplies. + +Chassis: '0' + +[SNMP TRAP: 6032 in CPQHLTH.MIB] +</property> +<toone id='eventClass' objid='/zport/dmd/Events/Ignore'/> +</object> <object id='anacron' module='Products.ZenEvents.EventClassInst' class='EventClassInst'> <property type="string" id="eventClassKey" mode="w" > anacron @@ -386,7 +584,7 @@ defaultmapping </property> <property type="int" id="sequence" mode="w" > -1 +5 </property> <property type="string" id="regex" mode="w" > message repeated \d+ times @@ -396,6 +594,18 @@ </property> <toone id='eventClass' objid='/zport/dmd/Events/Ignore'/> </object> +<object id='defaultmapping_local7' module='Products.ZenEvents.EventClassInst' class='EventClassInst'> +<property type="string" id="eventClassKey" mode="w" > +defaultmapping +</property> +<property type="int" id="sequence" mode="w" > +3 +</property> +<property type="string" id="rule" mode="w" > +getattr(evt, 'facility', None)=="local7" and getattr(evt, 'priority', 0)>4 +</property> +<toone id='eventClass' objid='/zport/dmd/Events/Ignore'/> +</object> <object id='kernel' module='Products.ZenEvents.EventClassInst' class='EventClassInst'> <property type="string" id="eventClassKey" mode="w" > kernel @@ -453,6 +663,108 @@ </tomanycont> <object id='Win' module='Products.ZenEvents.EventClass' class='EventClass'> <tomanycont id='instances'> +<object id='Autoenrollment_13' module='Products.ZenEvents.EventClassInst' class='EventClassInst'> +<property type="string" id="eventClassKey" mode="w" > +Autoenrollment_13 +</property> +<property type="int" id="sequence" mode="w" > +0 +</property> +<property type="string" id="example" mode="w" > +Automatic certificate enrollment for local system failed to enroll for one Domain Controller certificate (0x80070005). Access is denied. +</property> +<toone id='eventClass' objid='/zport/dmd/Events/Ignore/Win'/> +</object> +<object id='ClusSvc_1123' module='Products.ZenEvents.EventClassInst' class='EventClassInst'> +<property type="string" id="eventClassKey" mode="w" > +ClusSvc_1123 +</property> +<property type="int" id="sequence" mode="w" > +0 +</property> +<property type="string" id="example" mode="w" > +The node lost communication with cluster node 'HOSTNAME' on network 'private'. +</property> +<toone id='eventClass' objid='/zport/dmd/Events/Ignore/Win'/> +</object> +<object id='DirXML Remote Loader_1' module='Products.ZenEvents.EventClassInst' class='EventClassInst'> +<property type="string" id="eventClassKey" mode="w" > +DirXML Remote Loader_1 +</property> +<property type="int" id="sequence" mode="w" > +0 +</property> +<property type="string" id="example" mode="w" > +Driver : \ID_VAULT\org\services\DirXML\Driver-Set\NewADDriver +Thread : Publisher Channel +Object : CN=Kane MD\, Dean,CN=Users,DC=mmcnt,DC=mhs,DC=med +Message : Code(-9039) Element &lt;parent> does not have a valid association.<application>DirXML</application> +<module>NewADDriver</module> +<object-dn>CN=Kane MD\, Dean,CN=Users,DC=mmcnt,DC=mhs,DC=med (org\Users\Internal\Inactive Users\dkane)</object-dn> +<component>Publisher</component> +</property> +<toone id='eventClass' objid='/zport/dmd/Events/Ignore/Win'/> +</object> +<object id='FileMaker Server 7_94' module='Products.ZenEvents.EventClassInst' class='EventClassInst'> +<property type="string" id="eventClassKey" mode="w" > +FileMaker Server 7_94 +</property> +<property type="int" id="sequence" mode="w" > +0 +</property> +<property type="string" id="example" mode="w" > +Client "NURSI-T15-8821" opening database "Newborns 2005" as "etuttle". +</property> +<toone id='eventClass' objid='/zport/dmd/Events/Ignore/Win'/> +</object> +<object id='Kerberos_3' module='Products.ZenEvents.EventClassInst' class='EventClassInst'> +<property type="string" id="eventClassKey" mode="w" > +Kerberos_3 +</property> +<property type="int" id="sequence" mode="w" > +0 +</property> +<property type="string" id="example" mode="w" > +A Kerberos Error Message was received: on logon session Client Time: Server Time: 14:57:1.0000 1/24/2006 Z Error Code: 0xd KDC_ERR_BADOPTION Extended Error: 0xc00000bb KLIN(0) Client Realm: Client Name: Server Realm: MMCNT.MHS.MED Server Name: host/mmcdc4.mmcnt.mhs.med Target Name: host/mmc...@MM...D Error Text: File: 9 Line: ae0 Error Data is in record data. +</property> +<toone id='eventClass' objid='/zport/dmd/Events/Ignore/Win'/> +</object> +<object id='Kerberos_4' module='Products.ZenEvents.EventClassInst' class='EventClassInst'> +<property type="string" id="eventClassKey" mode="w" > +Kerberos_4 +</property> +<property type="int" id="sequence" mode="w" > +0 +</property> +<property type="string" id="example" mode="w" > +The kerberos client received a KRB_AP_ERR_MODIFIED error from the server PR-1S-8CA7$. The target name used was cifs/NURSI-1P-396A.mmcnt.mhs.med. This indicates that the password used to encrypt the kerberos service ticket is different than that on the target server. Commonly, this is due to identically named machine accounts in the target realm (MMCNT.MHS.MED), and the client realm. Please contact your system administrator. +</property> +<toone id='eventClass' objid='/zport/dmd/Events/Ignore/Win'/> +</object> +<object id='MSExchangeDSAccess_2110' module='Products.ZenEvents.EventClassInst' class='EventClassInst'> +<property type="string" id="eventClassKey" mode="w" > +MSExchangeDSAccess_2110 +</property> +<property type="int" id="sequence" mode="w" > +0 +</property> +<property type="string" id="example" mode="w" > +Process STORE.EXE (PID=2456). Could not bind to DS server smmhsdc1.mhs.med, error 55 at port 389. For more information, click http://www.microsoft.com/contentredirect.asp. +</property> +<toone id='eventClass' objid='/zport/dmd/Events/Ignore/Win'/> +</object> +<object id='MSExchangeDSAccess_2115' module='Products.ZenEvents.EventClassInst' class='EventClassInst'> +<property type="string" id="eventClassKey" mode="w" > +MSExchangeDSAccess_2115 +</property> +<property type="int" id="sequence" mode="w" > +0 +</property> +<property type="string" id="example" mode="w" > +Process INETINFO.EXE (PID=1328). DSAccess needs to close a connection to the Domain Controller mmcdc3.mmcnt.mhs.med due to error 0x80040920. For more information, click http://www.microsoft.com/contentredirect.asp. +</property> +<toone id='eventClass' objid='/zport/dmd/Events/Ignore/Win'/> +</object> <object id='MSExchangeIS Mailbox Store_1173' module='Products.ZenEvents.EventClassInst' class='EventClassInst'> <property type="string" id="eventClassKey" mode="w" > MSExchangeIS Mailbox Store_1173 @@ -461,7 +773,7 @@ 0 </property> <property type="string" id="example" mode="w" > -Error 0x6bb deleting unused restricted view from folder 1-C8EA27F on database "First Storage Group\Mailbox Store (BOX)". Microsoft Exchange Information Store will try to delete the view again at the next maintenance interval. For more information, click http://www.microsoft.com/contentredirect.asp. +Error 0x6bb deleting unused restricted view from folder 1-C8EA27F on database "First Storage Group\Mailbox Store (MHSMAIL1)". Microsoft Exchange Information Store will try to delete the view again at the next maintenance interval. For more information, click http://www.microsoft.com/contentredirect.asp. </property> <toone id='eventClass' objid='/zport/dmd/Events/Ignore/Win'/> </object> @@ -473,7 +785,7 @@ 0 </property> <property type="string" id="example" mode="w" > -A non-delivery report with a status code of 4.4.6 was generated for recipient em...@em... (Message-ID em...@em...>). Cause: The maximum hop count was exceeded for this message. This non-delivery report can also be caused if a looping condition exists between sending and receiving servers that are not in the same Exchange organization. In this situation, the message bounces back and forth until the hop count is exceeded. A configuration error in the e-mail system can also cause the message to bounce between two servers or to be forwarded between two recipients. Solution: The maximum hop count is a property set on each virtual server and you can manually override it. The default maximum hop count is 15. Also, check for any situations that might cause loops between servers. +A non-delivery report with a status code of 4.4.6 was generated for recipient rfc822;wa...@va... (Message-ID <PFE...@kn...>). Cause: The maximum hop count was exceeded for this message. This non-delivery report can also be caused if a looping condition exists between sending and receiving servers that are not in the same Exchange organization. In this situation, the message bounces back and forth until the hop count is exceeded. A configuration error in the e-mail system can also cause the message to bounce between two servers or to be forwarded between two recipients. Solution: The maximum hop count is a property set on each virtual server and you can manually override it. The default maximum hop count is 15. Also, check for any situations that might cause loops between servers. </property> <toone id='eventClass' objid='/zport/dmd/Events/Ignore/Win'/> </object> @@ -485,10 +797,127 @@ 0 </property> <property type="string" id="example" mode="w" > -Client printer auto-creation failed. The driver could not be installed. Possible reasons for the failure: The driver is not in the list of drivers on the server. The driver cannot be located. The driver has not been mapped. Client name: (BOX) Printer: (Client\BOX#\Plant Ops - Kyocera Mita KM-1650 KX - 1.1.1.1) Printer driver: (Kyocera Mita KM-1650 KX) +Client printer auto-creation failed. The driver could not be installed. Possible reasons for the failure: The driver is not in the list of drivers on the server. The driver cannot be located. The driver has not been mapped. Client name: (MMCNT-banthon2) Printer: (Client\MMCNT-banthon2#\Plant Ops - Kyocera Mita KM-1650 KX - 10.116.2.203) Printer driver: (Kyocera Mita KM-1650 KX) </property> <toone id='eventClass' objid='/zport/dmd/Events/Ignore/Win'/> </object> +<object id='NETLOGON_5722' module='Products.ZenEvents.EventClassInst' class='EventClassInst'> +<property type="string" id="eventClassKey" mode="w" > +NETLOGON_5722 +</property> +<property type="int" id="sequence" mode="w" > +0 +</property> +<toone id='eventClass' objid='/zport/dmd/Events/Ignore/Win'/> +</object> +<object id='NETLOGON_5723' module='Products.ZenEvents.EventClassInst' class='EventClassInst'> +<property type="string" id="eventClassKey" mode="w" > +NETLOGON_5723 +</property> +<property type="int" id="sequence" mode="w" > +0 +</property> +<property type="string" id="example" mode="w" > +The session setup from computer 'PAY-DOC1-D785' failed because the security database does not contain a trust account 'PAY-DOC1-D785$' referenced by the specified computer. USER ACTION If this is the first occurrence of this event for the specified computer and account, this may be a transient issue that doesn't require any action at this time. Otherwise, the following steps may be taken to resolve this problem: If 'PAY-DOC1-D785$' is a legitimate machine account for the computer 'PAY-DOC1-D785', then 'PAY-DOC1-D785' should be rejoined to the domain. If 'PAY-DOC1-D785$' is a legitimate interdomain trust account, then the trust should be recreated. Otherwise, assuming that 'PAY-DOC1-D785$' is not a legitimate account, the following action should be taken on 'PAY-DOC1-D785': If 'PAY-DOC1-D785' is a Domain Controller, then the trust associated with 'PAY-DOC1-D785$' should be deleted. If 'PAY-DOC1-D785' is not a Domain Controller, it should be disjoin +</property> +<toone id='eventClass' objid='/zport/dmd/Events/Ignore/Win'/> +</object> +<object id='NETLOGON_5805' module='Products.ZenEvents.EventClassInst' class='EventClassInst'> +<property type="string" id="eventClassKey" mode="w" > +NETLOGON_5805 +</property> +<property type="int" id="sequence" mode="w" > +0 +</property> +<property type="string" id="example" mode="w" > +The session setup from the computer HLTHMDXTRAIN failed to authenticate. The following error occurred: %%5 +</property> +<toone id='eventClass' objid='/zport/dmd/Events/Ignore/Win'/> +</object> +<object id='NETLOGON_5807' module='Products.ZenEvents.EventClassInst' class='EventClassInst'> +<property type="string" id="eventClassKey" mode="w" > +NETLOGON_5807 +</property> +<property type="int" id="sequence" mode="w" > +0 +</property> +<property type="string" id="example" mode="w" > +During the past 4.00 hours there have been 12 connections to this Domain Controller from client machines whose IP addresses don't map to any of the existing sites in the enterprise. Those clients, therefore, have undefined sites and may connect to any Domain Controller including those that are in far distant locations from the clients. A client's site is determined by the mapping of its subnet to one of the existing sites. To move the above clients to one of the sites, please consider creating subnet object(s) covering the above IP addresses with mapping to one of the existing sites. The names and IP addresses of the clients in question have been logged on this computer in the following log file 'SystemRoot\debug\netlogon.log' and, potentially, in the log file 'SystemRoot\debug\netlogon.bak' created if the former log becomes full. The log(s) may contain additional unrelated debugging information. To filter out the needed information, please search for lines which +</property> +<toone id='eventClass' objid='/zport/dmd/Events/Ignore/Win'/> +</object> +<object id='Print_2' module='Products.ZenEvents.EventClassInst' class='EventClassInst'> +<property type="string" id="eventClassKey" mode="w" > +Print_2 +</property> +<property type="int" id="sequence" mode="w" > +0 +</property> +<property type="string" id="example" mode="w" > +NT AUTHORITY\SYSTEM Printer Client\MMCNT-hmendenh#\Color Printer (Work Area) - 10.116.2.201 was created. +</property> +<toone id='eventClass' objid='/zport/dmd/Events/Ignore/Win'/> +</object> +<object id='Print_20' module='Products.ZenEvents.EventClassInst' class='EventClassInst'> +<property type="string" id="eventClassKey" mode="w" > +Print_20 +</property> +<property type="int" id="sequence" mode="w" > +0 +</property> +<property type="string" id="example" mode="w" > +Printer Driver HP LaserJet 4000 Series PCL for Windows NT x86 Version-3 was added or updated. Files:- UNIDRV.DLL, UNIDRVUI.DLL, HPLJ4000.GPD, UNIDRV.HLP, UNIRES.DLL, PCL5ERES.DLL, HPC4500U.DLL, TTFSUB.GPD, hplj5si.hlp, STDNAMES.GPD. +</property> +<toone id='eventClass' objid='/zport/dmd/Events/Ignore/Win'/> +</object> +<object id='Print_3' module='Products.ZenEvents.EventClassInst' class='EventClassInst'> +<property type="string" id="eventClassKey" mode="w" > +Print_3 +</property> +<property type="int" id="sequence" mode="w" > +0 +</property> +<property type="string" id="example" mode="w" > +NT AUTHORITY\SYSTEM Printer Client\MMCNT-hmendenh#\HP Laserjet 2100 PCL 6 - 10.116.2.18 was deleted. +</property> +<toone id='eventClass' objid='/zport/dmd/Events/Ignore/Win'/> +</object> +<object id='Print_4' module='Products.ZenEvents.EventClassInst' class='EventClassInst'> +<property type="string" id="eventClassKey" mode="w" > +Print_4 +</property> +<property type="int" id="sequence" mode="w" > +0 +</property> +<property type="string" id="example" mode="w" > +NT AUTHORITY\SYSTEM Printer Client\MMCNT-hmendenh#\HP Laserjet 2100 PCL 6 - 10.116.2.18 is pending deletion. +</property> +<toone id='eventClass' objid='/zport/dmd/Events/Ignore/Win'/> +</object> +<object id='Print_8' module='Products.ZenEvents.EventClassInst' class='EventClassInst'> +<property type="string" id="eventClassKey" mode="w" > +Print_8 +</property> +<property type="int" id="sequence" mode="w" > +0 +</property> +<property type="string" id="example" mode="w" > +NT AUTHORITY\SYSTEM Printer Client\MMCNT-hmendenh#\HP Laserjet 2100 PCL 6 - 10.116.2.18 was purged. +</property> +<toone id='eventClass' objid='/zport/dmd/Events/Ignore/Win'/> +</object> +<object id='Remote Storage_3037' module='Products.ZenEvents.EventClassInst' class='EventClassInst'> +<property type="string" id="eventClassKey" mode="w" > +Remote Storage_3037 +</property> +<property type="int" id="sequence" mode="w" > +0 +</property> +<property type="string" id="example" mode="w" > +Remote Storage failed to recall file <\\AMICASARCH\F$\DICOMImageArchive\2005\06\25\1.3.12.2.1107.5.4.4.1075.5.0.2350209711421538.zip>. User has hit the runaway recall limit. (0x81060016) +</property> +<toone id='eventClass' objid='/zport/dmd/Events/Ignore/Win'/> +</object> <object id='Removable Storage Service_102' module='Products.ZenEvents.EventClassInst' class='EventClassInst'> <property type="string" id="eventClassKey" mode="w" > Removable Storage Service_102 @@ -501,6 +930,18 @@ </property> <toone id='eventClass' objid='/zport/dmd/Events/Ignore/Win'/> </object> +<object id='Symantec AntiVirus_6' module='Products.ZenEvents.EventClassInst' class='EventClassInst'> +<property type="string" id="eventClassKey" mode="w" > +Symantec AntiVirus_6 +</property> +<property type="int" id="sequence" mode="w" > +0 +</property> +<property type="string" id="example" mode="w" > +Could not scan 492 files inside D:\Symantec SMTP 4.x\Symantec_Mail_Security_for_SMTP_4.1.9.35_Win_Sol.zip due to extraction errors encountered by the Decomposer Engines. +</property> +<toone id='eventClass' objid='/zport/dmd/Events/Ignore/Win'/> +</object> <object id='Symantec Mail Security for SMTP_2' module='Products.ZenEvents.EventClassInst' class='EventClassInst'> <property type="string" id="eventClassKey" mode="w" > Symantec Mail Security for SMTP_2 @@ -509,7 +950,7 @@ 0 </property> <property type="string" id="example" mode="w" > -Error 0 receiving data from remote host. (1.1.1.1) +Error 0 receiving data from remote host. (80.69.58.237) </property> <toone id='eventClass' objid='/zport/dmd/Events/Ignore/Win'/> </object> @@ -537,6 +978,243 @@ </property> <toone id='eventClass' objid='/zport/dmd/Events/Ignore/Win'/> </object> +<object id='dirxml remote loader_1' module='Products.ZenEvents.EventClassInst' class='EventClassInst'> +<property type="string" id="eventClassKey" mode="w" > +dirxml remote loader_1 +</property> +<property type="int" id="sequence" mode="w" > +0 +</property> +<property type="string" id="example" mode="w" > +%256: \ID_VAULT\org\services\DirXML\Driver-Set\NewADDriver %257: Subscriber Channel %258: \ID_VAULT\org\Users\Groups\AD\MetaFrame Users %259: <ldap-err ldap-rc="68" ldap-rc-name="LDAP_ALREADY_EXISTS"> <client-err ldap-rc="68" ldap-rc-name="LDAP_ALREADY_EXISTS">Already Exists</client-err> <server-err>00000562: UpdErr: DSID-031A0F4F, problem 6005 (ENTRY_EXISTS), data 0 </server-err> <server-err-ex win32-rc="1378"/> </ldap-err> +</property> +<toone id='eventClass' objid='/zport/dmd/Events/Ignore/Win'/> +</object> +<object id='excdo_8206' module='Products.ZenEvents.EventClassInst' class='EventClassInst'> +<property type="string" id="eventClassKey" mode="w" > +excdo_8206 +</property> +<property type="int" id="sequence" mode="w" > +0 +</property> +<property type="string" id="example" mode="w" > +Calendaring agent failed with error code 0x80070057 while saving appointment. For more information, click http://www.microsoft.com/contentredirect.asp. +</property> +<toone id='eventClass' objid='/zport/dmd/Events/Ignore/Win'/> +</object> +<object id='excdo_8230' module='Products.ZenEvents.EventClassInst' class='EventClassInst'> +<property type="string" id="eventClassKey" mode="w" > +excdo_8230 +</property> +<property type="int" id="sequence" mode="w" > +0 +</property> +<property type="string" id="example" mode="w" > +An inconsistency was detected in jwe...@md...: /Calendar/OR 9 Progress Meeting.EML. The calendar is being repaired. If other errors occur with this calendar, please view the calendar using Microsoft Outlook Web Access. If a problem persists, please recreate the calendar or the containing mailbox. For more information, click http://www.microsoft.com/contentredirect.asp. +</property> +<toone id='eventClass' objid='/zport/dmd/Events/Ignore/Win'/> +</object> +<object id='excdo_8263' module='Products.ZenEvents.EventClassInst' class='EventClassInst'> +<property type="string" id="eventClassKey" mode="w" > +excdo_8263 +</property> +<property type="int" id="sequence" mode="w" > +0 +</property> +<property type="string" id="example" mode="w" > +The recurring appointment expansion in mailbox O'Connor, Sr Aine has taken too long. Some recurring appointment instances may not be visible at this time. To ensure that the calendar view is correct, please refresh the calendar view in Microsoft Outlook Web Access. For more information, click http://www.microsoft.com/contentredirect.asp. +</property> +<toone id='eventClass' objid='/zport/dmd/Events/Ignore/Win'/> +</object> +<object id='general_1173' module='Products.ZenEvents.EventClassInst' class='EventClassInst'> +<property type="string" id="eventClassKey" mode="w" > +general_1173 +</property> +<property type="int" id="sequence" mode="w" > +0 +</property> +<property type="string" id="example" mode="w" > +NT AUTHORITY\ANONYMOUS LOGON Internal event: Active Directory has encountered the following exception and associated parameters. Exception: e0010004 Parameter: 0 Additional Data Error value: -1603 Internal ID: 2050344 +</property> +<toone id='eventClass' objid='/zport/dmd/Events/Ignore/Win'/> +</object> +<object id='msexchangeactivesyncnotify_10306' module='Products.ZenEvents.EventClassInst' class='EventClassInst'> +<property type="string" id="eventClassKey" mode="w" > +msexchangeactivesyncnotify_10306 +</property> +<property type="int" id="sequence" mode="w" > +0 +</property> +<property type="string" id="example" mode="w" > +OMA Categorizer dropped the message with message ID '<c2b7606a703bbd44940f3cd8462068f5-b3c0e6d@OMA>', Recipient 'cj...@md...'. The global notifications to user specified SMTP addresses is disabled. +</property> +<toone id='eventClass' objid='/zport/dmd/Events/Ignore/Win'/> +</object> +<object id='msexchangeis_9554' module='Products.ZenEvents.EventClassInst' class='EventClassInst'> +<property type="string" id="eventClassKey" mode="w" > +msexchangeis_9554 +</property> +<property type="int" id="sequence" mode="w" > +0 +</property> +<property type="string" id="example" mode="w" > +Unable to update Mailbox SD in the DS. Mailbox Guid: 5e727f25-357b-4cd9-9714-d7159348b196. Error Code 0x8004010f For more information, click http://www.microsoft.com/contentredirect.asp. +</property> +<toone id='eventClass' objid='/zport/dmd/Events/Ignore/Win'/> +</object> +<object id='msexchangeis_9646' module='Products.ZenEvents.EventClassInst' class='EventClassInst'> +<property type="string" id="eventClassKey" mode="w" > +msexchangeis_9646 +</property> +<property type="int" id="sequence" mode="w" > +0 +</property> +<property type="string" id="example" mode="w" > +Mapi session "/o=Mercy Medical Center/ou=MMCNT/cn=Recipients/cn=PVizzard" exceeded the maximum of 32 objects of type "session". For more information, click http://www.microsoft.com/contentredirect.asp. +</property> +<toone id='eventClass' objid='/zport/dmd/Events/Ignore/Win'/> +</object> +<object id='msexchangesa_5008' module='Products.ZenEvents.EventClassInst' class='EventClassInst'> +<property type="string" id="eventClassKey" mode="w" > +msexchangesa_5008 +</property> +<property type="int" id="sequence" mode="w" > +0 +</property> +<property type="string" id="example" mode="w" > +The message tracking log file G:\Program Files\Exchsrvr\MHSMAILlog\20060120.log was deleted. For more information, click http://www.microsoft.com/contentredirect.asp. +</property> +<toone id='eventClass' objid='/zport/dmd/Events/Ignore/Win'/> +</object> +<object id='msexchangesa_9040' module='Products.ZenEvents.EventClassInst' class='EventClassInst'> +<property type="string" id="eventClassKey" mode="w" > +msexchangesa_9040 +</property> +<property type="int" id="sequence" mode="w" > +0 +</property> +<property type="string" id="example" mode="w" > +NSPI Proxy encountered an error while receiving a packet. The target Domain Controller or the network or a client might be down. The winsock subsystem returned the error:[0x2746]. The circuit that received this error is being closed. For more information, click http://www.microsoft.com/contentredirect.asp. +</property> +<toone id='eventClass' objid='/zport/dmd/Events/Ignore/Win'/> +</object> +<object id='msexchangesa_9234' module='Products.ZenEvents.EventClassInst' class='EventClassInst'> +<property type="string" id="eventClassKey" mode="w" > +msexchangesa_9234 +</property> +<property type="int" id="sequence" mode="w" > +0 +</property> +<property type="string" id="example" mode="w" > +Referral Interface was not able to find an msExchExchangeServer object with legacyExchangeDN '/o=Mercy Medical Center/ou=MMCNT/cn=Configuration/cn=Servers/cn=MMC_MAIL' in the Active Directory. For more information, click http://www.microsoft.com/contentredirect.asp. +</property> +<toone id='eventClass' objid='/zport/dmd/Events/Ignore/Win'/> +</object> +<object id='msexchangetransport_327' module='Products.ZenEvents.EventClassInst' class='EventClassInst'> +<property type="string" id="eventClassKey" mode="w" > +msexchangetransport_327 +</property> +<property type="int" id="sequence" mode="w" > +0 +</property> +<property type="string" id="example" mode="w" > +The following call : EcLocallyDeliverMsg to the store failed. Error code : -2147024891 (Message-ID <C2B...@MH...d> will be NDR'd). MDB : c423a872-af66-4188-9417-867ecd674fce. FID : b-1549FB. MID : 1-6E0DB5D. File : . For more information, click http://www.microsoft.com/contentredirect.asp. +</property> +<toone id='eventClass' objid='/zport/dmd/Events/Ignore/Win'/> +</object> +<object id='norton antivirus_6' module='Products.ZenEvents.EventClassInst' class='EventClassInst'> +<property type="string" id="eventClassKey" mode="w" > +norton antivirus_6 +</property> +<property type="int" id="sequence" mode="w" > +0 +</property> +<property type="string" id="example" mode="w" > +Scan could not access path C:\pagefile.sys +</property> +<toone id='eventClass' objid='/zport/dmd/Events/Ignore/Win'/> +</object> +<object id='replication_1232' module='Products.ZenEvents.EventClassInst' class='EventClassInst'> +<property type="string" id="eventClassKey" mode="w" > +replication_1232 +</property> +<property type="int" id="sequence" mode="w" > +0 +</property> +<property type="string" id="example" mode="w" > +NT AUTHORITY\ANONYMOUS LOGON Active Directory attempted to perform a remote procedure call (RPC) to the following server. The call timed out and was cancelled. Server: 56fedf38-c8c0-4328-a453-a12a8b9c08ea._msdcs.mhs.med Call Timeout (Mins): 5 Thread ID: 408 Additional Data Internal ID: 5001047 +</property> +<toone id='eventClass' objid='/zport/dmd/Events/Ignore/Win'/> +</object> +<object id='service_102' module='Products.ZenEvents.EventClassInst' class='EventClassInst'> +<property type="string" id="eventClassKey" mode="w" > +service_102 +</property> +<property type="int" id="sequence" mode="w" > +0 +</property> +<property type="string" id="example" mode="w" > +Unable to register COM class objects. +</property> +<toone id='eventClass' objid='/zport/dmd/Events/Ignore/Win'/> +</object> +<object id='smtp_2' module='Products.ZenEvents.EventClassInst' class='EventClassInst'> +<property type="string" id="eventClassKey" mode="w" > +smtp_2 +</property> +<property type="int" id="sequence" mode="w" > +0 +</property> +<toone id='eventClass' objid='/zport/dmd/Events/Ignore/Win'/> +</object> +<object id='smtpsvc_5000' module='Products.ZenEvents.EventClassInst' class='EventClassInst'> +<property type="string" id="eventClassKey" mode="w" > +smtpsvc_5000 +</property> +<property type="int" id="sequence" mode="w" > +0 +</property> +<property type="string" id="example" mode="w" > +The message file 'E:\Program Files\Exchsrvr\Mailroot\vsi 1\Queue\NTFS_609ee2d701c5f09d00099d1d.EML' in the queue directory 'E:\Program Files\Exchsrvr\Mailroot\vsi 1\Queue' is corrupt and has not been enumerated. +</property> +<toone id='eventClass' objid='/zport/dmd/Events/Ignore/Win'/> +</object> +<object id='store_1025' module='Products.ZenEvents.EventClassInst' class='EventClassInst'> +<property type="string" id="eventClassKey" mode="w" > +store_1025 +</property> +<property type="int" id="sequence" mode="w" > +0 +</property> +<property type="string" id="example" mode="w" > +An error occurred on database "First Storage Group\Public Folder Store (MHSMAIL1)". Function name or description of problem: Restrict/SetSearchCriteria Error: -1102 Warning: fail to apply search optimization to folder (FID 1-3B3C7) Retrying without optimization. For more information, click http://www.microsoft.com/contentredirect.asp. +</property> +<toone id='eventClass' objid='/zport/dmd/Events/Ignore/Win'/> +</object> +<object id='store_1173' module='Products.ZenEvents.EventClassInst' class='EventClassInst'> +<property type="string" id="eventClassKey" mode="w" > +store_1173 +</property> +<property type="int" id="sequence" mode="w" > +0 +</property> +<property type="string" id="example" mode="w" > +Error 0x6bb deleting unused restricted view from folder 1-C604C2D on database "First Storage Group\Mailbox Store (MHSMAIL1)". Microsoft Exchange Information Store will try to delete the view again at the next maintenance interval. For more information, click http://www.microsoft.com/contentredirect.asp. +</property> +<toone id='eventClass' objid='/zport/dmd/Events/Ignore/Win'/> +</object> +<object id='store_1211' module='Products.ZenEvents.EventClassInst' class='EventClassInst'> +<property type="string" id="eventClassKey" mode="w" > +store_1211 +</property> +<property type="int" id="sequence" mode="w" > +0 +</property> +<property type="string" id="example" mode="w" > +User ib...@md... used ROWLIST_REPLACE to delete all rules in folder 1-8B9EDD6. 12 rules got deleted and 11 rules were added. For more information, click http://www.microsoft.com/contentredirect.asp. +</property> +<toone id='eventClass' objid='/zport/dmd/Events/Ignore/Win'/> +</object> </tomanycont> </object> </object> @@ -550,7 +1228,7 @@ defaultmapping </property> <property type="int" id="sequence" mode="w" > -0 +4 </property> <property type="string" id="regex" mode="w" > -- MARK -- @@ -573,34 +1251,85 @@ <property type="string" id="regex" mode="w" > -- MARK -- </property> +<property visible="True" type="None" id="zEvent_timeout" > +2500 +</property> <toone id='eventClass' objid='/zport/dmd/Events/Heartbeat'/> </object> </tomanycont> </object> <object id='App' module='Products.ZenEvents.EventClass' class='EventClass'> -<property visible="True" type="None" id="zEvent_severity" > +<property visible="True" type="int" id="zEventSeverity" > 2 </property> <object id='Start' module='Products.ZenEvents.EventClass' class='EventClass'> <property visible="True" type="lines" id="zEventClearClasses" > ['/App/Stop'] </property> +<property visible="True" type="int" id="zEventSeverity" > +0 +</property> <tomanycont id='instances'> -<object id='defaultmapping' module='Products.ZenEvents.EventClassInst' class='EventClassInst'> +<object id='FileMaker Server 7_408' module='Products.ZenEvents.EventClassInst' class='EventClassInst'> <property type="string" id="eventClassKey" mode="w" > -defaultmapping +FileMaker Server 7_408 </property> <property type="int" id="sequence" mode="w" > -3 +0 </property> -<property type="string" id="regex" mode="w" > -start.*succeeded +<property type="string" id="example" mode="w" > +FileMaker Database Engine started. </property> +<property visible="True" type="int" id="zEventSeverity" > +0 +</property> +<toone id='eventClass' objid='/zport/dmd/Events/App/Start'/> +</object> +<object id='FileMaker Server 7_418' module='Products.ZenEvents.EventClassInst' class='EventClassInst'> +<property type="string" id="eventClassKey" mode="w" > +FileMaker Server 7_418 +</property> +<property type="int" id="sequence" mode="w" > +0 +</property> <property type="string" id="example" mode="w" > -httpd startup succeeded +Opening database "Newborns 1997 Jul-Dec"... </property> +<property visible="True" type="int" id="zEventSeverity" > +0 +</property> <toone id='eventClass' objid='/zport/dmd/Events/App/Start'/> </object> +<object id='FileMaker Server 7_486' module='Products.ZenEvents.EventClassInst' class='EventClassInst'> +<property type="string" id="eventClassKey" mode="w" > +FileMaker Server 7_486 +</property> +<property type="int" id="sequence" mode="w" > +0 +</property> +<property type="string" id="example" mode="w" > +FileMaker Server started. +</property> +<property visible="True" type="int" id="zEventSeverity" > +0 +</property> +<toone id='eventClass' objid='/zport/dmd/Events/App/Start'/> +</object> +<object id='SNMP Informant_0' module='Products.ZenEvents.EventClassInst' class='EventClassInst'> +<property type="string" id="eventClassKey" mode="w" > +SNMP Informant_0 +</property> +<property type="int" id="sequence" mode="w" > +0 +</property> +<property type="string" id="example" mode="w" > +SNMP Informant Standard SNMP agent started +</property> +<property visible="True" type="int" id="zEventSeverity" > +2 +</property> +<toone id='eventClass' objid='/zport/dmd/Events/App/Start'/> +</object> <object id='ntsyslog' module='Products.ZenEvents.EventClassInst' class='EventClassInst'> <property type="string" id="eventClassKey" mode="w" > ntsyslog_0 @@ -619,25 +1348,82 @@ </tomanycont> </object> <object id='Stop' module='Products.ZenEvents.EventClass' class='EventClass'> -<property visible="True" type="None" id="zEvent_severity" > +<property visible="True" type="int" id="zEventSeverity" > 2 </property> <tomanycont id='instances'> -<object id='defaultmapping' module='Products.ZenEvents.EventClassInst' class='EventClassInst'> +<object id='FileMaker Server 7_140' module='Products.ZenEvents.EventClassInst' class='EventClassInst'> <property type="string" id="eventClassKey" mode="w" > -defaultmapping +FileMaker Server 7_140 </property> <property type="int" id="sequence" mode="w" > -2 +0 </property> -<property type="string" id="regex" mode="w" > -(shutdown|stop).*succeeded +<property type="string" id="example" mode="w" > +Closing database "Newborns 2001 Jul-Dec"... </property> +<property visible="True" type="int" id="zEventSeverity" > +4 +</property> +<toone id='eventClass' objid='/zport/dmd/Events/App/Stop'/> +</object> +<object id='FileMaker Server 7_168' module='Products.ZenEvents.EventClassInst' class='EventClassInst'> +<property type="string" id="eventClassKey" mode="w" > +FileMaker Server 7_168 +</property> +<property type="int" id="sequence" mode="w" > +0 +</property> <property type="string" id="example" mode="w" > -httpd shutdown succeeded +Database "Newborns 2001 Jan-Jun" closed. </property> +<property visible="True" type="int" id="zEventSeverity" > +4 +</property> <toone id='eventClass' objid='/zport/dmd/Events/App/Stop'/> </object> +<object id='FileMaker Server 7_412' module='Products.ZenEvents.EventClassInst' class='EventClassInst'> +<property type="string" id="eventClassKey" mode="w" > +FileMaker Server 7_412 +</property> +<property type="int" id="sequence" mode="w" > +0 +</property> +<property type="string" id="example" mode="w" > +FileMaker Database Engine stopped. +</property> +<property visible="True" type="int" id="zEventSeverity" > +4 +</property> +<toone id='eventClass' objid='/zport/dmd/Events/App/Stop'/> +</object> +<object id='FileMaker Server 7_490' module='Products.ZenEvents.EventClassInst' class='EventClassInst'> +<property type="string" id="eventClassKey" mode="w" > +FileMaker Server 7_490 +</property> +<property type="int" id="sequence" mode="w" > +0 +</property> +<property type="string" id="example" mode="w" > +FileMaker Server stopped. +</property> +<property visible="True" type="int" id="zEventSeverity" > +4 +</property> +<toone id='eventClass' objid='/zport/dmd/Events/App/Stop'/> +</object> +<object id='Service Control Manager_7034' module='Products.ZenEvents.EventClassInst' class='EventClassInst'> +<property type="string" id="eventClassKey" mode="w" > +Service Control Manager_7034 +</property> +<property type="int" id="sequence" mode="w" > +0 +</property> +<property visible="True" type="int" id="zEventSeverity" > +3 +</property> +<toone id='eventClass' objid='/zport/dmd/Events/App/Stop'/> +</object> <object id='ntsyslog' module='Products.ZenEvents.EventClassInst' class='EventClassInst'> <property type="string" id="eventClassKey" mode="w" > ntsyslog_0 @@ -656,24 +1442,339 @@ </tomanycont> </object> <object id='Failed' module='Products.ZenEvents.EventClass' class='EventClass'> -</object> -<object id='Reload' module='Products.ZenEvents.EventClass' class='EventClass'> <tomanycont id='instances'> -<object id='defaultmapping' module='Products.ZenEvents.EventClassInst' class='EventClassInst'> +<object id='Active Server Pages_9' module='Products.ZenEvents.EventClassInst' class='EventClassInst'> <property type="string" id="eventClassKey" mode="w" > -defaultmapping +Active Server Pages_9 </property> <property type="int" id="sequence" mode="w" > +0 +</property> +<property type="string" id="example" mode="w" > +Warning: IIS log failed to write entry, Script timed out. The maximum amount of time for a script to execute was exceeded. You can change this limit by specifying a new value for the property Server.ScriptTimeout or by changing the value in the IIS administration tools.. +</property> +<property visible="True" type="int" id="zEventSeverity" > +3 +</property> +<toone id='eventClass' objid='/zport/dmd/Events/App/Failed'/> +</object> +<object id='Application Error_1000' module='Products.ZenEvents.EventClassInst' class='EventClassInst'> +<property type="string" id="eventClassKey" mode="w" > +Application Error_1000 +</property> +<property type="int" id="sequence" mode="w" > +0 +</property> +<property type="string" id="example" mode="w" > +Faulting application inserverD.exe, version 5.41.2.0, faulting module ntdll.dll, version 5.2.3790.1830, fault address 0x0002f350. +</property> +<property visible="True" type="int" id="zEventSeverity" > +3 +</property> +<toone id='eventClass' objid='/zport/dmd/Events/App/Failed'/> +</object> +<object id='Application Hang_1002' module='Products.ZenEvents.EventClassInst' class='EventClassInst'> +<property type="string" id="eventClassKey" mode="w" > +... [truncated message content] |
From: <sv...@ze...> - 2007-04-04 23:59:57
|
Author: edahl Date: 2007-04-04 19:59:59 -0400 (Wed, 04 Apr 2007) New Revision: 4511 Modified: trunk/Products/ZenModel/RRDDataSource.py Log: * problem with template change with no device context Modified: trunk/Products/ZenModel/RRDDataSource.py =================================================================== --- trunk/Products/ZenModel/RRDDataSource.py 2007-04-04 23:59:56 UTC (rev 4510) +++ trunk/Products/ZenModel/RRDDataSource.py 2007-04-04 23:59:59 UTC (rev 4511) @@ -220,8 +220,8 @@ for id in ids: dp = getattr(self.datapoints,id,False) if dp: - perfConf = self.device().getPerformanceServer() - perfConf.deleteRRDFiles(device=self.device().id, datapoint=dp.name()) + #perfConf = self.device().getPerformanceServer() + #perfConf.deleteRRDFiles(device=self.device().id, datapoint=dp.name()) clean(self.graphs, dp.name()) clean(self.thresholds, dp.name()) |
From: <sv...@ze...> - 2007-04-04 23:59:55
|
Author: jstevens Date: 2007-04-04 19:59:56 -0400 (Wed, 04 Apr 2007) New Revision: 4510 Added: trunk/Products/ZenHub/PBDaemon.py Log: Base class for daemons that need to connect to zenhub Added: trunk/Products/ZenHub/PBDaemon.py |
From: <sv...@ze...> - 2007-04-04 23:59:26
|
Author: edahl Date: 2007-04-04 19:59:28 -0400 (Wed, 04 Apr 2007) New Revision: 4509 Modified: trunk/Products/ZenModel/MibModule.py trunk/Products/ZenModel/RRDTemplate.py Log: * fix badly defined relations Modified: trunk/Products/ZenModel/MibModule.py =================================================================== --- trunk/Products/ZenModel/MibModule.py 2007-04-04 23:59:17 UTC (rev 4508) +++ trunk/Products/ZenModel/MibModule.py 2007-04-04 23:59:28 UTC (rev 4509) @@ -26,7 +26,7 @@ ) _relations = ZenPackable._relations + ( - ("miborganizer", ToOne(ToManyCont, "MibModule", "mibs")), + ("miborganizer", ToOne(ToManyCont, "MibOrganizer", "mibs")), ("nodes", ToManyCont(ToOne, "MibNode", "module")), ("notifications", ToManyCont(ToOne, "MibNotification", "module")), ) Modified: trunk/Products/ZenModel/RRDTemplate.py =================================================================== --- trunk/Products/ZenModel/RRDTemplate.py 2007-04-04 23:59:17 UTC (rev 4508) +++ trunk/Products/ZenModel/RRDTemplate.py 2007-04-04 23:59:28 UTC (rev 4509) @@ -60,7 +60,7 @@ ) _relations = ZenPackable._relations + ( - ("deviceClass", ToOne(ToManyCont,"RRDTemplate", "rrdTemplates")), + ("deviceClass", ToOne(ToManyCont,"DeviceClass", "rrdTemplates")), ("datasources", ToManyCont(ToOne,"RRDDataSource", "rrdTemplate")), ("graphs", ToManyCont(ToOne,"RRDGraph", "rrdTemplate")), ("thresholds", ToManyCont(ToOne,"RRDThreshold", "rrdTemplate")), @@ -219,8 +219,8 @@ if not ids: return self.callZenScreen(REQUEST) for id in ids: if getattr(self.datasources,id,False): - perfConf = self.device().getPerformanceServer() - perfConf.deleteRRDFiles(device=self.device().id, datasource=id) + #perfConf = self.device().getPerformanceServer() + #perfConf.deleteRRDFiles(device=self.device().id, datasource=id) self.datasources._delObject(id) clean(self.graphs, id) |
From: <sv...@ze...> - 2007-04-04 23:59:16
|
Author: jstevens Date: 2007-04-04 19:59:17 -0400 (Wed, 04 Apr 2007) New Revision: 4508 Added: trunk/Products/ZenUtils/Step.py Log: Step is a utility for synchronizing routines that return deferreds. Similar in intent to Drive Added: trunk/Products/ZenUtils/Step.py Property changes on: trunk/Products/ZenUtils/Step.py ___________________________________________________________________ Name: svn:executable + * |
From: <sv...@ze...> - 2007-04-04 23:47:08
|
Author: jstevens Date: 2007-04-04 19:47:08 -0400 (Wed, 04 Apr 2007) New Revision: 4507 Modified: trunk/Products/ZenHub/HubService.py Log: Added getMonitor method Modified: trunk/Products/ZenHub/HubService.py =================================================================== --- trunk/Products/ZenHub/HubService.py 2007-04-04 20:31:03 UTC (rev 4506) +++ trunk/Products/ZenHub/HubService.py 2007-04-04 23:47:08 UTC (rev 4507) @@ -12,6 +12,10 @@ self.instance = instance self.listeners = [] + def getMonitor(monitorType='Performance'): + container = getattr(self.dmd.Monitors, monitorType, None) + return container and container._getOb(self.instance) + def update(self, object): pass |
From: <sv...@ze...> - 2007-04-04 20:32:47
|
Author: ecn Date: 2007-04-04 16:31:03 -0400 (Wed, 04 Apr 2007) New Revision: 4506 Added: trunk/inst/externallibs/zc.queue-1.0.1.tar.gz Modified: trunk/inst/GNUmakefile Log: needed for async update of configs Modified: trunk/inst/GNUmakefile =================================================================== --- trunk/inst/GNUmakefile 2007-04-04 20:16:39 UTC (rev 4505) +++ trunk/inst/GNUmakefile 2007-04-04 20:31:03 UTC (rev 4506) @@ -82,6 +82,7 @@ ELEMENTTREE= $(call ROOT, elementtree) PYNETSNMP= $(call ROOT, pynetsnmp) CTYPES= $(call ROOT, ctypes) +QUEUE= $(call ROOT, zc.queue) # optional packages SENDPAGE= $(call ROOT, sendpage) @@ -139,6 +140,7 @@ ifeq ($(DARWIN),1) products-install: \ zope-install \ + zc.queue-install \ twistedsnmp-install \ mysql-python-install \ rrdtool-install \ @@ -151,6 +153,7 @@ else products-install: \ zope-install \ + zc.queue-install \ twistedsnmp-install \ mysql-python-install \ rrdtool-install \ @@ -223,6 +226,10 @@ elementtree-install: build/$(ELEMENTTREE)/.unpacked $(PYINSTALL) +zc.queue-install: build/$(QUEUE)/.unpacked + $(PYINSTALL) + @touch $(ZENHOME)/lib/python/zc/__init__.py + PYTHONVERSION=$(shell $(PYTHON) -c 'import sys; print "python%d.%d"%sys.version_info[:2]') BB=$(INSTDIR)/build/$(ZOPE)/build-base/$(PYTHONVERSION) zope-install: build/$(ZOPE)/.unpacked build/$(ZOPE)/makefile zenoss-install Added: trunk/inst/externallibs/zc.queue-1.0.1.tar.gz Property changes on: trunk/inst/externallibs/zc.queue-1.0.1.tar.gz ___________________________________________________________________ Name: svn:mime-type + application/octet-stream |
From: <sv...@ze...> - 2007-04-04 20:16:49
|
Author: ecn Date: 2007-04-04 16:16:39 -0400 (Wed, 04 Apr 2007) New Revision: 4505 Added: trunk/Products/ZenModel/migrate/hubqueue.py Modified: trunk/Products/ZenHub/HubService.py trunk/Products/ZenHub/zenhub.py trunk/Products/ZenModel/Device.py trunk/Products/ZenModel/DmdBuilder.py trunk/Products/ZenModel/migrate/__init__.py trunk/Products/ZenRRD/RRDDaemon.py trunk/Products/ZenRRD/zenperfsnmp.py Log: * push device to zenperfsnmp Modified: trunk/Products/ZenHub/HubService.py =================================================================== --- trunk/Products/ZenHub/HubService.py 2007-04-04 20:14:25 UTC (rev 4504) +++ trunk/Products/ZenHub/HubService.py 2007-04-04 20:16:39 UTC (rev 4505) @@ -12,8 +12,12 @@ self.instance = instance self.listeners = [] + def update(self, object): + pass + def addListener(self, remote): remote.notifyOnDisconnect(self.removeListener) + log.info("adding listener") self.listeners.append(remote) def removeListener(self, listener): Modified: trunk/Products/ZenHub/zenhub.py =================================================================== --- trunk/Products/ZenHub/zenhub.py 2007-04-04 20:14:25 UTC (rev 4504) +++ trunk/Products/ZenHub/zenhub.py 2007-04-04 20:16:39 UTC (rev 4505) @@ -31,6 +31,7 @@ from Products.ZenUtils.ZCmdBase import ZCmdBase from Products.ZenEvents.Event import Event, EventHeartbeat from Products.ZenEvents.ZenEventClasses import App_Start, App_Stop +import transaction from XmlRpcService import XmlRpcService @@ -95,7 +96,6 @@ self.hubAvitar = HubAvitar(hub) def requestAvatar(self, collName, mind, *interfaces): - log.debug('collName %s' % collName) if pb.IPerspective not in interfaces: raise NotImplementedError return pb.IPerspective, self.hubAvitar, lambda:None @@ -124,7 +124,25 @@ self.sendEvent(eventClass=App_Start, summary="%s started" % self.name, severity=0) + self.processQueue() + def processQueue(self): + self.syncdb() + try: + if self.dmd.hubQueue: + self.doProcessQueue(self.dmd.hubQueue) + except Exception: + self.log.exception("Exception processing queue") + transaction.commit() + reactor.callLater(1, self.processQueue) + + def doProcessQueue(self, q): + object = q.pull() + from Products.ZenUtils.Utils import getObjByPath + object = getObjByPath(self.dmd, object) + for s in self.services.values(): + s.update(object) + def sendEvent(self, **kw): if not 'device' in kw: kw['device'] = getfqdn() @@ -179,14 +197,8 @@ if reactor.running: reactor.stop() - def _wakeUpReactorAndHandleSignals(self): - self.syncdb() - reactor.callLater(1.0, self._wakeUpReactorAndHandleSignals) - - def main(self): reactor.addSystemEventTrigger('before', 'shutdown', self.finish) - self._wakeUpReactorAndHandleSignals() reactor.run(installSignalHandlers=False) Modified: trunk/Products/ZenModel/Device.py =================================================================== --- trunk/Products/ZenModel/Device.py 2007-04-04 20:14:25 UTC (rev 4504) +++ trunk/Products/ZenModel/Device.py 2007-04-04 20:16:39 UTC (rev 4505) @@ -961,6 +961,7 @@ """Set the changed datetime for this device. value default is now. """ self._lastChange.setDate(value) + self.dmd.hubQueue.put(self.getPrimaryPath()) security.declareProtected('Change Device', 'setSnmpLastCollection') Modified: trunk/Products/ZenModel/DmdBuilder.py =================================================================== --- trunk/Products/ZenModel/DmdBuilder.py 2007-04-04 20:14:25 UTC (rev 4504) +++ trunk/Products/ZenModel/DmdBuilder.py 2007-04-04 20:16:39 UTC (rev 4505) @@ -163,3 +163,6 @@ history=True) manage_addUserSettingsManager(self.dmd) manage_addIpNetwork(self.dmd, "Networks") + from zc.queue import PersistentQueue + self.dmd.hubQueue = PersistentQueue() + Modified: trunk/Products/ZenModel/migrate/__init__.py =================================================================== --- trunk/Products/ZenModel/migrate/__init__.py 2007-04-04 20:14:25 UTC (rev 4504) +++ trunk/Products/ZenModel/migrate/__init__.py 2007-04-04 20:16:39 UTC (rev 4505) @@ -71,3 +71,4 @@ import zlocal import evenbetterstandarderrormessage import zCollectorPlugins +import hubqueue Added: trunk/Products/ZenModel/migrate/hubqueue.py Modified: trunk/Products/ZenRRD/RRDDaemon.py =================================================================== --- trunk/Products/ZenRRD/RRDDaemon.py 2007-04-04 20:14:25 UTC (rev 4504) +++ trunk/Products/ZenRRD/RRDDaemon.py 2007-04-04 20:16:39 UTC (rev 4505) @@ -27,6 +27,7 @@ from twisted.cred import credentials from twisted.internet import reactor, defer from twisted.python import failure +from twisted.spread import pb from Products.ZenUtils.ZenDaemon import ZenDaemon as Base @@ -119,7 +120,7 @@ def __iter__(self): return iter(self.thresholds.values()) -class RRDDaemon(Base): +class RRDDaemon(Base, pb.Referenceable): 'Holds the code common to performance gathering daemons.' startevt = {'eventClass':App_Start, @@ -153,15 +154,15 @@ def go(driver): "Fetch the services we want" self.log.debug("Getting event service") - yield perspective.callRemote('getService', 'EventService', - self.options.monitor) + yield perspective.callRemote('getService', 'EventService') self.zem = driver.next() if not self.zem: raise failure.Failure("Cannot get EventManager Service") self.log.debug("Getting Perf service") yield perspective.callRemote('getService', self.hubService, - self.options.monitor) + self.options.monitor, + self) self.model = driver.next() if not self.model: raise failure.Failure("Cannot get %s Service" % Modified: trunk/Products/ZenRRD/zenperfsnmp.py =================================================================== --- trunk/Products/ZenRRD/zenperfsnmp.py 2007-04-04 20:14:25 UTC (rev 4504) +++ trunk/Products/ZenRRD/zenperfsnmp.py 2007-04-04 20:16:39 UTC (rev 4505) @@ -359,7 +359,11 @@ for name, proxy in self.proxies.items(): proxy.snmpStatus.count = countMap.get(name, 0) + def remote_updateDeviceConfig(self, snmpTargets): + self.log.debug("Async device update") + self.updateDeviceConfig(snmpTargets) + def updateDeviceConfig(self, snmpTargets): 'Save the device configuration and create an SNMP proxy to talk to it' last, identity, oidData, maxOIDs = snmpTargets |
From: <sv...@ze...> - 2007-04-04 20:14:25
|
Author: ecn Date: 2007-04-04 16:14:25 -0400 (Wed, 04 Apr 2007) New Revision: 4504 Modified: trunk/Products/ZenHub/services/SnmpPerfConfig.py Log: * push device changes Modified: trunk/Products/ZenHub/services/SnmpPerfConfig.py =================================================================== --- trunk/Products/ZenHub/services/SnmpPerfConfig.py 2007-04-04 17:59:28 UTC (rev 4503) +++ trunk/Products/ZenHub/services/SnmpPerfConfig.py 2007-04-04 20:14:25 UTC (rev 4504) @@ -7,3 +7,14 @@ def remote_getDeviceUpdates(self, devices): return self.config.getDeviceUpdates(devices) + + def update(self, object): + from Products.ZenModel.Device import Device + if not self.listeners: + return + if isinstance(object, Device): + if object.perfServer().id != self.instance: + return + cfg = object.getSnmpOidTargets() + for listener in self.listeners: + listener.callRemote('updateDeviceConfig', cfg) |
From: <sv...@ze...> - 2007-04-04 17:59:27
|
Author: edahl Date: 2007-04-04 13:59:28 -0400 (Wed, 04 Apr 2007) New Revision: 4503 Modified: trunk/Products/DataCollector/plugins/zenoss/snmp/HRSWRunMap.py trunk/Products/ZenRRD/zenprocess.py Log: * use full path in process monitoring not process name Modified: trunk/Products/DataCollector/plugins/zenoss/snmp/HRSWRunMap.py =================================================================== --- trunk/Products/DataCollector/plugins/zenoss/snmp/HRSWRunMap.py 2007-04-04 17:52:39 UTC (rev 4502) +++ trunk/Products/DataCollector/plugins/zenoss/snmp/HRSWRunMap.py 2007-04-04 17:59:28 UTC (rev 4503) @@ -30,7 +30,7 @@ GetTableMap('hrSWRunEntry', '.1.3.6.1.2.1.25.4.2.1', { '.1': 'snmpindex', - '.2': 'procName', + '.4': 'procName', '.5': 'parameters', } ), Modified: trunk/Products/ZenRRD/zenprocess.py =================================================================== --- trunk/Products/ZenRRD/zenprocess.py 2007-04-04 17:52:39 UTC (rev 4502) +++ trunk/Products/ZenRRD/zenprocess.py 2007-04-04 17:59:28 UTC (rev 4503) @@ -45,7 +45,7 @@ HOSTROOT ='.1.3.6.1.2.1.25' RUNROOT = HOSTROOT + '.4' -NAMETABLE = RUNROOT + '.2.1.2' +NAMETABLE = RUNROOT + '.2.1.4' ARGSTABLE = RUNROOT + '.2.1.5' PERFROOT = HOSTROOT + '.5' CPU = PERFROOT + '.1.1.1.' # note trailing dot |
From: <sv...@ze...> - 2007-04-04 17:52:39
|
Author: ecn Date: 2007-04-04 13:52:39 -0400 (Wed, 04 Apr 2007) New Revision: 4502 Modified: trunk/Products/ZenHub/HubService.py trunk/Products/ZenHub/services/Beat.py Log: * gracefully handle connection breakage even more gracefully Modified: trunk/Products/ZenHub/HubService.py =================================================================== --- trunk/Products/ZenHub/HubService.py 2007-04-04 17:45:15 UTC (rev 4501) +++ trunk/Products/ZenHub/HubService.py 2007-04-04 17:52:39 UTC (rev 4502) @@ -1,6 +1,9 @@ - from twisted.spread import pb +import logging +log = logging.getLogger("zenhub") + + class HubService(pb.Referenceable): def __init__(self, dmd, instance): @@ -10,4 +13,12 @@ self.listeners = [] def addListener(self, remote): + remote.notifyOnDisconnect(self.removeListener) self.listeners.append(remote) + + def removeListener(self, listener): + log.warning("removing listener") + try: + self.listeners.remove(listener) + except ValueError: + self.warning("Unable to remove listener... ignoring") Modified: trunk/Products/ZenHub/services/Beat.py =================================================================== --- trunk/Products/ZenHub/services/Beat.py 2007-04-04 17:45:15 UTC (rev 4501) +++ trunk/Products/ZenHub/services/Beat.py 2007-04-04 17:52:39 UTC (rev 4502) @@ -12,16 +12,10 @@ def beat(self): secs = time.time() for listener in self.listeners: - try: - d = listener.callRemote('beat', secs) - d.addErrback(self.error, listener) - except pb.DeadReferenceError, ex: - self.error(ex, listener) + d = listener.callRemote('beat', secs) + d.addErrback(self.error) reactor.callLater(1, self.beat) def error(self, reason, listener): - try: - self.listeners.remove(listener) - except ValueError: - pass + reason.printTraceback() |
From: <sv...@ze...> - 2007-04-04 17:45:16
|
Author: ecn Date: 2007-04-04 13:45:15 -0400 (Wed, 04 Apr 2007) New Revision: 4501 Modified: trunk/Products/ZenHub/services/Beat.py Log: * gracefully handle connection breakage Modified: trunk/Products/ZenHub/services/Beat.py =================================================================== --- trunk/Products/ZenHub/services/Beat.py 2007-04-04 17:25:11 UTC (rev 4500) +++ trunk/Products/ZenHub/services/Beat.py 2007-04-04 17:45:15 UTC (rev 4501) @@ -1,5 +1,6 @@ from HubService import HubService from twisted.internet import reactor +from twisted.spread import pb import time class Beat(HubService): @@ -11,8 +12,11 @@ def beat(self): secs = time.time() for listener in self.listeners: - d = listener.callRemote('beat', secs) - d.addErrback(self.error, listener) + try: + d = listener.callRemote('beat', secs) + d.addErrback(self.error, listener) + except pb.DeadReferenceError, ex: + self.error(ex, listener) reactor.callLater(1, self.beat) def error(self, reason, listener): |
From: <sv...@ze...> - 2007-04-04 17:25:36
|
Author: ecn Date: 2007-04-04 13:25:11 -0400 (Wed, 04 Apr 2007) New Revision: 4500 Added: trunk/Products/ZenHub/pbClient3.py trunk/Products/ZenHub/services/Beat.py Log: * test service listener callbacks Added: trunk/Products/ZenHub/pbClient3.py Added: trunk/Products/ZenHub/services/Beat.py |
From: <sv...@ze...> - 2007-04-04 16:16:52
|
Author: ecn Date: 2007-04-04 12:16:54 -0400 (Wed, 04 Apr 2007) New Revision: 4499 Modified: trunk/Products/ZenHub/zenhub.py Log: * track remote collectors as listeners * allow service name to be optional Modified: trunk/Products/ZenHub/zenhub.py =================================================================== --- trunk/Products/ZenHub/zenhub.py 2007-04-04 16:16:20 UTC (rev 4498) +++ trunk/Products/ZenHub/zenhub.py 2007-04-04 16:16:54 UTC (rev 4499) @@ -78,8 +78,14 @@ def __init__(self, hub): self.hub = hub - def perspective_getService(self, serviceName, instance): - return self.hub.getService(serviceName, instance) + def perspective_getService(self, + serviceName, + instance = None, + listener = None): + service = self.hub.getService(serviceName, instance) + if listener: + service.addListener(listener) + return service class HubRealm(object): |
From: <sv...@ze...> - 2007-04-04 16:16:20
|
Author: ecn Date: 2007-04-04 12:16:20 -0400 (Wed, 04 Apr 2007) New Revision: 4498 Modified: trunk/Products/ZenHub/HubService.py Log: * track remote collectors as listeners * allow service name to be optional Modified: trunk/Products/ZenHub/HubService.py =================================================================== --- trunk/Products/ZenHub/HubService.py 2007-04-04 15:55:09 UTC (rev 4497) +++ trunk/Products/ZenHub/HubService.py 2007-04-04 16:16:20 UTC (rev 4498) @@ -3,8 +3,11 @@ class HubService(pb.Referenceable): - def __init__(self, dmd, instance = None): + def __init__(self, dmd, instance): self.dmd = dmd self.zem = dmd.ZenEventManager self.instance = instance + self.listeners = [] + def addListener(self, remote): + self.listeners.append(remote) |
From: <sv...@ze...> - 2007-04-04 15:55:08
|
Author: ecn Date: 2007-04-04 11:55:09 -0400 (Wed, 04 Apr 2007) New Revision: 4497 Modified: trunk/Products/ZenHub/zenhub.py Log: * allow zenhub services to come from zenpacks Modified: trunk/Products/ZenHub/zenhub.py =================================================================== --- trunk/Products/ZenHub/zenhub.py 2007-04-04 15:49:49 UTC (rev 4496) +++ trunk/Products/ZenHub/zenhub.py 2007-04-04 15:55:09 UTC (rev 4497) @@ -139,7 +139,10 @@ return self.services[name, instance] except KeyError: from Products.ZenUtils.Utils import importClass - ctor = importClass('services.%s' % name, name) + try: + ctor = importClass(name) + except ImportError: + ctor = importClass('services.%s' % name, name) svc = ctor(self.dmd, instance) self.services[name, instance] = svc return svc |
From: <sv...@ze...> - 2007-04-04 15:50:17
|
Author: ecn Date: 2007-04-04 11:49:49 -0400 (Wed, 04 Apr 2007) New Revision: 4496 Modified: trunk/Products/ZenHub/xmlClient.py trunk/Products/ZenHub/zenhub.py Log: * add crude xmlrpc authentificationality Modified: trunk/Products/ZenHub/xmlClient.py =================================================================== --- trunk/Products/ZenHub/xmlClient.py 2007-04-04 13:12:53 UTC (rev 4495) +++ trunk/Products/ZenHub/xmlClient.py 2007-04-04 15:49:49 UTC (rev 4496) @@ -5,7 +5,7 @@ from zenhub import XML_RPC_PORT def main(): - proxy = ServerProxy('http://localhost:%d' % XML_RPC_PORT) + proxy = ServerProxy('http://zenoss:zenoss@localhost:%d' % XML_RPC_PORT) proxy.sendEvent(dict(summary='This is an event', device=getfqdn(), Class='/Status/Ping', Modified: trunk/Products/ZenHub/zenhub.py =================================================================== --- trunk/Products/ZenHub/zenhub.py 2007-04-04 13:12:53 UTC (rev 4495) +++ trunk/Products/ZenHub/zenhub.py 2007-04-04 15:49:49 UTC (rev 4496) @@ -18,12 +18,12 @@ import os -from twisted.cred import portal, checkers +from twisted.cred import portal, checkers, error, credentials from twisted.spread import pb from twisted.internet import reactor, defer from twisted.python import failure -from twisted.web import server +from twisted.web import server, xmlrpc from zope.interface import implements import Globals @@ -40,7 +40,39 @@ XML_RPC_PORT = 8081 PB_PORT = 8789 +class AuthXmlRpcService(XmlRpcService): + def __init__(self, dmd, checker): + XmlRpcService.__init__(self, dmd) + self.checker = checker + + def doRender(self, avatar, request): + return XmlRpcService.render(self, request) + + def unauthorized(self, request): + self._cbRender(xmlrpc.Fault(self.FAILURE, "Unauthorized"), request) + + def render(self, request): + auth = request.received_headers.get('authorization', None) + if not auth: + self.unauthorized(request) + else: + try: + type, encoded = auth.split() + if type not in ('Basic',): + self.unauthorized(request) + else: + user, passwd = encoded.decode('base64').split(':') + c = credentials.UsernamePassword(user, passwd) + d = self.checker.requestAvatarId(c) + d.addCallback(self.doRender, request) + def error(reason, request): + self.unauthorized(request) + d.addErrback(error, request) + except Exception: + self.unauthorized() + return server.NOT_DONE_YET + class HubAvitar(pb.Avatar): def __init__(self, hub): @@ -50,7 +82,6 @@ return self.hub.getService(serviceName, instance) - class HubRealm(object): implements(portal.IRealm) @@ -63,7 +94,6 @@ raise NotImplementedError return pb.IPerspective, self.hubAvitar, lambda:None - class ZenHub(ZCmdBase): 'Listen for xmlrpc requests and turn them into events' @@ -78,10 +108,11 @@ self.services = {} er = HubRealm(self) - pt = portal.Portal(er, self.loadCheckers()) + checker = self.loadChecker() + pt = portal.Portal(er, [checker]) reactor.listenTCP(self.options.pbport, pb.PBServerFactory(pt)) - xmlsvc = XmlRpcService(self.dmd) + xmlsvc = AuthXmlRpcService(self.dmd, checker) reactor.listenTCP(self.options.xmlrpcport, server.Site(xmlsvc)) self.sendEvent(eventClass=App_Start, @@ -95,9 +126,9 @@ kw['component'] = self.name self.zem.sendEvent(Event(**kw)) - def loadCheckers(self): + def loadChecker(self): try: - return [checkers.FilePasswordDB(self.options.passwordfile)] + return checkers.FilePasswordDB(self.options.passwordfile) except Exception, ex: log.exception("Unable to load %s", self.options.passwordfile) return [] |