Archived community.zenoss.org | full text search
Skip navigation
Currently Being Moderated

Displaying System count per Group organizer

VERSION 2  Click to view document history
Created on: Nov 11, 2010 1:38 PM by mloven - Last Modified:  Nov 11, 2010 1:51 PM by mloven

I had a request recently to provide a count of devices assigned to a particular System organizer, per Group organizer.  An example:

 

Group1 has 2 Routers that are each in the System organizer of "Routers", and 4 Switches each in the System organizer of "Switches"

Group2 has 1 Router in the System organizer of "Routers", and one Server in the System organizer of "Servers"

 

I needed a zendmd script that would output a list like this:

 

Group1:

Routers: 2

Switches: 4

 

Group2:

Routers: 1

Servers: 1

 

and so on.

 

I posed this question to the irc chat room and rmatte came up with this

 

 

for g in dmd.Groups.getSubOrganizers():
groupcount = {}
for d in g.getSubDevices():
  if d.getSystemNames():
   try:
    groupcount[d.getSystemNames()[0].split('/')[1]] = groupcount[d.getSystemNames()[0].split('/')[1]] + 1
   except KeyError:
    groupcount[d.getSystemNames()[0].split('/')[1]] = 1
print "%s:" % (g.id)
for a, b in groupcount.iteritems():
  print "   %s: %s" % (a, b)
print ""

 

 

 

This works perfectly for my needs.  With rmatte's blessing, I'm dropping it here so it can help out some other folks as well.

Comments (0)

More Like This

  • Retrieving data ...

More by mloven