1
2
3
4
5
6
7
8
9
10
11
12
13
14
15 from pprint import pformat
16
17 from Products.DataCollector.plugins.CollectorPlugin import CommandPlugin
18
19
21 """
22 Base class for Linux and AIX command plugins for parsing ps command output
23 and modeling processes.
24 """
25
26 compname = "os"
27 relname = "processes"
28 modname = "Products.ZenModel.OSProcess"
29 classname = "createFromObjectMap"
30
31 - def process(self, device, results, log):
32
33 log.info('Collecting process information for device %s' % device.id)
34 relMap = self.relMap()
35
36 for line in results.splitlines():
37
38 words = line.split()
39
40 relMap.append(self.objectMap({
41 "procName": words[0],
42 "parameters": " ".join(words[1:])}))
43
44 log.debug("First three modeled processes:\n%s" %
45 pformat(relMap.maps[:3]))
46
47 return relMap
48