1
2
3
4
5
6
7
8
9
10
11 import logging
12 log = logging.getLogger("zen.zenping.pingcollectionprefs")
13
14 import Globals
15 import zope.interface
16 import zope.component
17
18 from Products.ZenCollector import daemon
19 from Products.ZenCollector import interfaces
20 from Products.ZenCollector import tasks
21 from Products.ZenUtils import IpUtil
22 import Products.ZenStatus.interfaces
23
24
25 from Products.ZenUtils.Utils import unused
26 from Products.ZenCollector.services.config import DeviceProxy
27 from Products.ZenHub.services.PingPerformanceConfig import PingPerformanceConfig
28 unused(DeviceProxy)
29 unused(PingPerformanceConfig)
30
31
32 COLLECTOR_NAME = "zenping"
33 CONFIG_SERVICE = 'Products.ZenHub.services.PingPerformanceConfig'
34
35
37 zope.interface.implements(interfaces.ICollectorPreferences)
38
63
65 parser.add_option('--disable-correlator',
66 dest='correlator',
67 default=True,
68 action="store_false",
69 help="Disable the correlator.")
70
71 parser.add_option('--traceroute-interval',
72 dest='tracerouteInterval',
73 default=5,
74 type='int',
75 help="Traceroute every N ping intervals; default is 5, traceroute every time" \
76 " a ping is performed.")
77
78
79 pingBackends = []
80 for pingBackend, _ in zope.component.getUtilitiesFor(
81 Products.ZenStatus.interfaces.IPingTaskFactory):
82 pingBackends.append(pingBackend)
83 backendsHelp = "ping backend to use (%s)" % ", ".join(pingBackends)
84 parser.add_option('--ping-backend',
85 dest='pingBackend',
86 default='nmap',
87 help=backendsHelp + " default: %default")
88
89 - def postStartup(self):
91
94