use of org.opennms.netmgt.config.collectd.Package in project opennms by OpenNMS.
the class CollectdConfigFactoryIT method testGetName.
@Test
public void testGetName() {
String pkgName = "example1";
Package wpkg = m_factory.getPackage(pkgName);
assertNotNull(wpkg);
assertEquals(pkgName, wpkg.getName());
}
use of org.opennms.netmgt.config.collectd.Package in project opennms by OpenNMS.
the class ScheduledOutagesRestService method updateCollectd.
private void updateCollectd(ConfigAction action, String outageName, String packageName) {
// Validate if outageName exists.
getOutage(outageName);
if (action.equals(ConfigAction.ADD)) {
Package pkg = getCollectdPackage(packageName);
if (!pkg.getOutageCalendars().contains(outageName))
pkg.addOutageCalendar(outageName);
}
if (action.equals(ConfigAction.REMOVE)) {
Package pkg = getCollectdPackage(packageName);
pkg.removeOutageCalendar(outageName);
}
if (action.equals(ConfigAction.REMOVE_FROM_ALL)) {
for (Package pkg : m_collectdConfigFactory.getCollectdConfig().getPackages()) {
pkg.removeOutageCalendar(outageName);
}
}
try {
m_collectdConfigFactory.saveCurrent();
} catch (Exception e) {
throw getException(Status.INTERNAL_SERVER_ERROR, "Can't save collector's configuration: {}", e.getMessage());
}
}
use of org.opennms.netmgt.config.collectd.Package in project opennms by OpenNMS.
the class CollectdIntegrationTest method createGetPackagesExpectation.
private void createGetPackagesExpectation(OnmsMonitoredService svc) {
String rule = "ipaddr = '" + str(svc.getIpAddress()) + "'";
// EasyMock.expect(m_filterDao.getActiveIPAddressList(rule)).andReturn(Collections.singletonList(svc.getIpAddress()));
final Package pkg = new Package();
pkg.setName("testPackage");
Filter filter = new Filter();
filter.setContent(rule);
pkg.setFilter(filter);
final Service collector = new Service();
collector.setName("SNMP");
collector.setStatus("on");
collector.setInterval(3000l);
Parameter parm = new Parameter();
parm.setKey(TEST_KEY_PARM_NAME);
parm.setValue(m_key);
collector.setParameters(Collections.singletonList(parm));
pkg.addService(collector);
EasyMock.expect(m_collectdConfiguration.getPackages()).andReturn(Collections.singletonList(pkg));
EasyMock.expect(m_collectdConfigFactory.interfaceInPackage(anyObject(OnmsIpInterface.class), eq(pkg))).andReturn(true);
}
use of org.opennms.netmgt.config.collectd.Package in project opennms by OpenNMS.
the class DuplicatePrimaryAddressIT method createGetPackagesExpectation.
/**
* Creates the get packages expectation.
*/
private void createGetPackagesExpectation() {
final Package pkg = new Package();
pkg.setName("testPackage");
Filter filter = new Filter();
filter.setContent("ipaddr != '0.0.0.0'");
pkg.setFilter(filter);
final Service collector = new Service();
collector.setName("SNMP");
collector.setStatus("on");
collector.setInterval(1000l);
collector.addParameter("thresholding-enabled", "false");
pkg.addService(collector);
EasyMock.expect(m_collectdConfiguration.getPackages()).andReturn(Collections.singletonList(pkg)).anyTimes();
EasyMock.expect(m_collectdConfigFactory.interfaceInPackage(anyObject(OnmsIpInterface.class), eq(pkg))).andReturn(true).anyTimes();
}
use of org.opennms.netmgt.config.collectd.Package in project opennms by OpenNMS.
the class PersistRegexSelectorStrategyTest method setUp.
@Before
public void setUp() throws Exception {
ipInterfaceDao = EasyMock.createMock(IpInterfaceDao.class);
String localhost = InetAddress.getLocalHost().getHostAddress();
NetworkBuilder builder = new NetworkBuilder();
builder.addNode("myNode");
builder.addInterface(localhost).setIsManaged("M").setIsSnmpPrimary("P");
OnmsNode node = builder.getCurrentNode();
node.setId(1);
OnmsIpInterface ipInterface = node.getIpInterfaces().iterator().next();
EasyMock.expect(ipInterfaceDao.load(1)).andReturn(ipInterface).anyTimes();
EasyMock.replay(ipInterfaceDao);
Package pkg = new Package();
pkg.setName("junitTestPackage");
Filter filter = new Filter();
filter.setContent("IPADDR != '0.0.0.0'");
pkg.setFilter(filter);
Service service = new Service();
service.setName("SNMP");
pkg.addService(service);
Map<String, Object> map = new TreeMap<String, Object>();
List<org.opennms.netmgt.config.collectd.Parameter> params = pkg.getService("SNMP").getParameters();
for (org.opennms.netmgt.config.collectd.Parameter p : params) {
map.put(p.getKey(), p.getValue());
}
map.put("collection", "default");
serviceParams = new ServiceParameters(map);
LocationAwareSnmpClient locationAwareSnmpClient = new LocationAwareSnmpClientRpcImpl(new MockRpcClientFactory());
PlatformTransactionManager ptm = new MockPlatformTransactionManager();
SnmpCollectionAgent agent = DefaultSnmpCollectionAgent.create(1, ipInterfaceDao, ptm);
OnmsSnmpCollection snmpCollection = new OnmsSnmpCollection(agent, serviceParams, new MockDataCollectionConfigDao(), locationAwareSnmpClient);
org.opennms.netmgt.config.datacollection.ResourceType rt = new org.opennms.netmgt.config.datacollection.ResourceType();
rt.setName("myResourceType");
StorageStrategy storageStrategy = new StorageStrategy();
storageStrategy.setClazz("org.opennms.netmgt.collection.support.IndexStorageStrategy");
rt.setStorageStrategy(storageStrategy);
PersistenceSelectorStrategy persistenceSelectorStrategy = new PersistenceSelectorStrategy();
persistenceSelectorStrategy.setClazz("org.opennms.netmgt.collectd.PersistRegexSelectorStrategy");
Parameter param = new Parameter();
param.setKey(PersistRegexSelectorStrategy.MATCH_EXPRESSION);
param.setValue("#name matches '^agalue.*$'");
persistenceSelectorStrategy.addParameter(param);
rt.setPersistenceSelectorStrategy(persistenceSelectorStrategy);
GenericIndexResourceType resourceType = new GenericIndexResourceType(agent, snmpCollection, rt);
resourceA = new GenericIndexResource(resourceType, rt.getName(), new SnmpInstId("1.2.3.4.5.6.7.8.9.1.1"));
AttributeGroupType groupType = new AttributeGroupType("mib2-interfaces", AttributeGroupType.IF_TYPE_ALL);
MibObject mibObject = new MibObject();
mibObject.setOid(".1.2.3.4.5.6.7.8.9.2.1");
mibObject.setInstance("1");
mibObject.setAlias("name");
mibObject.setType("string");
StringAttributeType attributeType = new StringAttributeType(resourceType, snmpCollection.getName(), mibObject, groupType);
SnmpValue snmpValue = new Snmp4JValueFactory().getOctetString("agalue rules!".getBytes());
resourceA.setAttributeValue(attributeType, snmpValue);
resourceB = new GenericIndexResource(resourceType, rt.getName(), new SnmpInstId("1.2.3.4.5.6.7.8.9.1.2"));
}
Aggregations