Search in sources :

Example 1 with Rrd

use of org.opennms.netmgt.config.poller.Rrd in project opennms by OpenNMS.

the class PollerConfigFactoryIT method testIncludeUrl.

public void testIncludeUrl() throws Exception {
    TestPollerConfigManager factory = new TestPollerConfigManager(POLLER_CONFIG, "localhost", false);
    assertNull(factory.getPackage("TestPkg"));
    Package pkg = new Package();
    pkg.setName("TestPkg");
    Filter filter = new Filter();
    filter.setContent("IPADDR != '0.0.0.0'");
    pkg.setFilter(filter);
    Rrd rrd = new Rrd();
    rrd.setStep(300);
    rrd.addRra("RRA:AVERAGE:0.5:1:2016");
    pkg.setRrd(rrd);
    Service svc = new Service();
    svc.setName("TestService");
    svc.setInterval(300000l);
    pkg.addService(svc);
    Downtime dt = new Downtime();
    dt.setBegin(0l);
    pkg.addDowntime(dt);
    File iplistFile = new File(System.getProperty("java.io.tmpdir"), "iplist.txt");
    FileWriter fw = new FileWriter(iplistFile);
    fw.write("#192.168.1.1");
    fw.write(System.lineSeparator());
    fw.write("123.12.123.121");
    fw.write(System.lineSeparator());
    fw.write("123.12.123.122");
    fw.close();
    pkg.addIncludeUrl("file:" + iplistFile.getAbsolutePath());
    factory.addPackage(pkg);
    factory.save();
    assertNotNull(factory.getPackage("TestPkg"));
    TestPollerConfigManager newFactory = new TestPollerConfigManager(factory.getXml(), "localhost", false);
    Package p = newFactory.getPackage("TestPkg");
    assertNotNull(p);
    System.out.println(factory.getXml());
    assertTrue("Expect 123.12.123.121 to be part of the package", newFactory.isInterfaceInPackage("123.12.123.121", p));
    assertTrue("Expect 123.12.123.122 to be part of the package", newFactory.isInterfaceInPackage("123.12.123.122", p));
    assertFalse("Expected 192.168.1.1 to be excluded from the package", newFactory.isInterfaceInPackage("192.168.1.1", p));
    iplistFile.delete();
}
Also used : Filter(org.opennms.netmgt.config.poller.Filter) Rrd(org.opennms.netmgt.config.poller.Rrd) Downtime(org.opennms.netmgt.config.poller.Downtime) FileWriter(java.io.FileWriter) Service(org.opennms.netmgt.config.poller.Service) Package(org.opennms.netmgt.config.poller.Package) File(java.io.File)

Example 2 with Rrd

use of org.opennms.netmgt.config.poller.Rrd in project opennms by OpenNMS.

the class PollerConfigFactoryIT method testSpecific.

public void testSpecific() throws Exception {
    TestPollerConfigManager factory = new TestPollerConfigManager(POLLER_CONFIG, "localhost", false);
    assertNull(factory.getPackage("TestPkg"));
    Package pkg = new Package();
    pkg.setName("TestPkg");
    Filter filter = new Filter();
    filter.setContent("IPADDR != '0.0.0.0'");
    pkg.setFilter(filter);
    Rrd rrd = new Rrd();
    rrd.setStep(300);
    rrd.addRra("RRA:AVERAGE:0.5:1:2016");
    pkg.setRrd(rrd);
    Service svc = new Service();
    svc.setName("TestService");
    svc.setInterval(300000l);
    pkg.addService(svc);
    Downtime dt = new Downtime();
    dt.setBegin(0l);
    pkg.addDowntime(dt);
    pkg.addSpecific("123.12.123.121");
    pkg.addSpecific("123.12.123.122");
    factory.addPackage(pkg);
    factory.save();
    assertNotNull(factory.getPackage("TestPkg"));
    TestPollerConfigManager newFactory = new TestPollerConfigManager(factory.getXml(), "localhost", false);
    Package p = newFactory.getPackage("TestPkg");
    assertNotNull("package 'TestPkg' from new factory", p);
    assertTrue("Expect 123.12.123.121 to be part of the package", newFactory.isInterfaceInPackage("123.12.123.121", p));
    assertTrue("Expect 123.12.123.122 to be part of the package", newFactory.isInterfaceInPackage("123.12.123.122", p));
    assertFalse("Expected 192.168.1.1 to be excluded from the package", newFactory.isInterfaceInPackage("192.168.1.1", p));
}
Also used : Filter(org.opennms.netmgt.config.poller.Filter) Rrd(org.opennms.netmgt.config.poller.Rrd) Downtime(org.opennms.netmgt.config.poller.Downtime) Service(org.opennms.netmgt.config.poller.Service) Package(org.opennms.netmgt.config.poller.Package)

Example 3 with Rrd

use of org.opennms.netmgt.config.poller.Rrd in project opennms by OpenNMS.

the class PollerConfigFactoryIT method testPollerConfigFactory.

public void testPollerConfigFactory() throws Exception {
    TestPollerConfigManager factory = new TestPollerConfigManager(POLLER_CONFIG, "localhost", false);
    assertNull(factory.getPackage("TestPkg"));
    Package pkg = new Package();
    pkg.setName("TestPkg");
    Filter filter = new Filter();
    filter.setContent("IPADDR IPLIKE *.*.*.*");
    pkg.setFilter(filter);
    Rrd rrd = new Rrd();
    rrd.setStep(300);
    rrd.addRra("RRA:AVERAGE:0.5:1:2016");
    pkg.setRrd(rrd);
    Service svc = new Service();
    svc.setName("TestService");
    svc.setInterval(300000l);
    pkg.addService(svc);
    Downtime dt = new Downtime();
    dt.setBegin(0l);
    pkg.addDowntime(dt);
    IncludeRange inclde = new IncludeRange();
    inclde.setBegin("192.169.0.0");
    inclde.setEnd("192.169.255.255");
    pkg.addIncludeRange(inclde);
    factory.addPackage(pkg);
    factory.save();
    assertNotNull(factory.getPackage("TestPkg"));
    TestPollerConfigManager newFactory = new TestPollerConfigManager(factory.getXml(), "localhost", false);
    Package p = newFactory.getPackage("TestPkg");
    assertNotNull("package for 'TestPkg'", p);
    assertTrue("Expected 192.169.1.5 to be in the package", newFactory.isInterfaceInPackage("192.169.1.5", p));
    assertFalse("Expected 192.168.1.5 to *not* be in the package", newFactory.isInterfaceInPackage("192.168.1.5", p));
}
Also used : IncludeRange(org.opennms.netmgt.config.poller.IncludeRange) Filter(org.opennms.netmgt.config.poller.Filter) Rrd(org.opennms.netmgt.config.poller.Rrd) Downtime(org.opennms.netmgt.config.poller.Downtime) Service(org.opennms.netmgt.config.poller.Service) Package(org.opennms.netmgt.config.poller.Package)

Example 4 with Rrd

use of org.opennms.netmgt.config.poller.Rrd in project opennms by OpenNMS.

the class PollerBackEndTest method testSaveResponseTimeDataWithLocaleThatUsesCommasForDecimals.

public void testSaveResponseTimeDataWithLocaleThatUsesCommasForDecimals() throws Exception {
    Properties p = new Properties();
    p.setProperty("org.opennms.netmgt.ConfigFileConstants", "ERROR");
    MockLogAppender.setupLogging(p);
    Locale.setDefault(Locale.FRENCH);
    // Make sure we actually have a valid test
    NumberFormat nf = NumberFormat.getInstance();
    assertEquals("ensure that the newly set default locale (" + Locale.getDefault() + ") uses ',' as the decimal marker", "1,5", nf.format(1.5));
    OnmsMonitoredService svc = new OnmsMonitoredService();
    OnmsServiceType svcType = new OnmsServiceType();
    svcType.setName("HTTP");
    svc.setServiceType(svcType);
    OnmsIpInterface intf = new OnmsIpInterface();
    intf.setIpAddress(InetAddressUtils.addr("1.2.3.4"));
    svc.setIpInterface(intf);
    Package pkg = new Package();
    Service pkgService = new Service();
    pkgService.setName("HTTP");
    addParameterToService(pkgService, "ds-name", "http");
    addParameterToService(pkgService, "rrd-repository", "/foo");
    pkg.addService(pkgService);
    Rrd rrd = new Rrd();
    rrd.setStep(300);
    rrd.addRra("bogusRRA");
    pkg.setRrd(rrd);
    // TODO: Figure out why these mock calls aren't being invoked
    //expect(m_rrdStrategy.createDefinition(isA(String.class), isA(String.class), isA(String.class), anyInt(), isAList(RrdDataSource.class), isAList(String.class))).andReturn(new Object());
    //m_rrdStrategy.createFile(isA(Object.class));
    //expect(m_rrdStrategy.openFile(isA(String.class))).andReturn(new Object());
    //m_rrdStrategy.updateFile(isA(Object.class), isA(String.class), endsWith(":1.5"));
    //m_rrdStrategy.closeFile(isA(Object.class));
    expect(m_pollerConfig.getServiceInPackage("HTTP", pkg)).andReturn(m_httpSvcConfig);
    expect(m_pollerConfig.parameters(m_httpSvcConfig)).andReturn(m_httpSvcConfig.getParameters()).atLeastOnce();
    m_mocks.replayAll();
    m_backEnd.saveResponseTimeData("Tuvalu", svc, 1.5, pkg);
}
Also used : OnmsIpInterface(org.opennms.netmgt.model.OnmsIpInterface) Rrd(org.opennms.netmgt.config.poller.Rrd) OnmsServiceType(org.opennms.netmgt.model.OnmsServiceType) OnmsMonitoredService(org.opennms.netmgt.model.OnmsMonitoredService) Service(org.opennms.netmgt.config.poller.Service) Package(org.opennms.netmgt.config.poller.Package) Properties(java.util.Properties) NumberFormat(java.text.NumberFormat) OnmsMonitoredService(org.opennms.netmgt.model.OnmsMonitoredService)

Example 5 with Rrd

use of org.opennms.netmgt.config.poller.Rrd in project opennms by OpenNMS.

the class LatencyStoringServiceMonitorAdaptorIT method executeThresholdTest.

private void executeThresholdTest(Double[] rtValues) throws Exception {
    Map<String, Object> parameters = new HashMap<String, Object>();
    parameters.put("rrd-repository", "/tmp");
    parameters.put("ds-name", "icmp");
    parameters.put("rrd-base-name", "icmp");
    parameters.put("thresholding-enabled", "true");
    FilterDao filterDao = m_mocks.createMock(FilterDao.class);
    expect(filterDao.getActiveIPAddressList((String) EasyMock.anyObject())).andReturn(Collections.singletonList(addr("127.0.0.1"))).anyTimes();
    filterDao.flushActiveIpAddressListCache();
    EasyMock.expectLastCall().anyTimes();
    FilterDaoFactory.setInstance(filterDao);
    MonitoredService svc = m_mocks.createMock(MonitoredService.class);
    expect(svc.getNodeId()).andReturn(1);
    expect(svc.getIpAddr()).andReturn("127.0.0.1").atLeastOnce();
    expect(svc.getSvcName()).andReturn("ICMP").atLeastOnce();
    expect(svc.getNodeLocation()).andReturn(MonitoringLocationDao.DEFAULT_MONITORING_LOCATION_ID).atLeastOnce();
    ServiceMonitor service = new MockServiceMonitor(rtValues);
    int step = 1;
    List<String> rras = Collections.singletonList("RRA:AVERAGE:0.5:1:2016");
    Package pkg = new Package();
    Rrd rrd = new Rrd();
    rrd.setStep(step);
    rrd.setRras(rras);
    pkg.setRrd(rrd);
    expect(m_pollerConfig.getRRAList(pkg)).andReturn(rras).anyTimes();
    expect(m_pollerConfig.getStep(pkg)).andReturn(step).anyTimes();
    m_mocks.replayAll();
    LatencyStoringServiceMonitorAdaptor adaptor = new LatencyStoringServiceMonitorAdaptor(m_pollerConfig, pkg, m_persisterFactory, m_resourceStorageDao);
    // Make sure that the ThresholdingSet initializes with test settings
    String previousOpennmsHome = System.setProperty("opennms.home", "src/test/resources");
    for (int i = 0; i < rtValues.length; i++) {
        adaptor.handlePollResult(svc, parameters, service.poll(svc, parameters));
        // Emulate the appropriate wait time prior inserting another value into the RRD files.
        Thread.sleep(1000 * step);
    }
    System.setProperty("opennms.home", previousOpennmsHome);
    m_mocks.verifyAll();
}
Also used : HashMap(java.util.HashMap) Rrd(org.opennms.netmgt.config.poller.Rrd) MonitoredService(org.opennms.netmgt.poller.MonitoredService) FilterDao(org.opennms.netmgt.filter.api.FilterDao) ServiceMonitor(org.opennms.netmgt.poller.ServiceMonitor) AbstractServiceMonitor(org.opennms.netmgt.poller.support.AbstractServiceMonitor) Package(org.opennms.netmgt.config.poller.Package)

Aggregations

Package (org.opennms.netmgt.config.poller.Package)5 Rrd (org.opennms.netmgt.config.poller.Rrd)5 Service (org.opennms.netmgt.config.poller.Service)4 Downtime (org.opennms.netmgt.config.poller.Downtime)3 Filter (org.opennms.netmgt.config.poller.Filter)3 File (java.io.File)1 FileWriter (java.io.FileWriter)1 NumberFormat (java.text.NumberFormat)1 HashMap (java.util.HashMap)1 Properties (java.util.Properties)1 IncludeRange (org.opennms.netmgt.config.poller.IncludeRange)1 FilterDao (org.opennms.netmgt.filter.api.FilterDao)1 OnmsIpInterface (org.opennms.netmgt.model.OnmsIpInterface)1 OnmsMonitoredService (org.opennms.netmgt.model.OnmsMonitoredService)1 OnmsServiceType (org.opennms.netmgt.model.OnmsServiceType)1 MonitoredService (org.opennms.netmgt.poller.MonitoredService)1 ServiceMonitor (org.opennms.netmgt.poller.ServiceMonitor)1 AbstractServiceMonitor (org.opennms.netmgt.poller.support.AbstractServiceMonitor)1