[AGENT++] Notification Filter configuration
Sardari, Darren
dsardari at harris.com
Fri Jun 10 15:33:22 CEST 2011
I'm having a little trouble setting up a filter for Notifications. I wrote this code real quick to try and test it out. I'm just trying to exclude some notifications I created from the manager but it seems like I am filtering all notifications (even the coldstart).If anyone can point me in the right direction, it would be greatly appreciated.
Thanks,
Darren Sardari
Code:
no.add_v3_trap_destination(dest, "defaultV3Trap", "v3trap", "test");
//Filter Profile Table
snmpNotifyFilterProfileEntry *filterProfileTable = (snmpNotifyFilterProfileEntry*)mib->get("1.3.6.1.6.3.13.1.2.1");
MibTableRow* filterProfileRow;
Oidx index = Oidx::from_string("defaultV3Trap", FALSE);
if(filterProfileTable->find_index(index))
{
printf("filterProfileTable already has index of %s\n",(index.as_string()).get_printable());
}
else
{
//Filter for .50
filterProfileRow = filterProfileTable->add_row(index);
if(filterProfileRow)
{
filterProfileRow->get_nth(0)->replace_value(new OctetStr("filter1"));
//filterProfileRow->get_nth(1)->replace_value(new SnmpInt32(3));
filterProfileRow->get_nth(2)->replace_value(new SnmpInt32(1));
}
else
{
printf("filterProfileRow: Could not add Row\n");
}
}
//Filter Table
snmpNotifyFilterEntry *filterTable = (snmpNotifyFilterEntry*)mib->get("1.3.6.1.6.3.13.1.3.1");
MibTableRow* filterRow;
//Filter .50 from notifications
index = Oidx::from_string("filter1", TRUE);
index+=Oidx::from_string(notificationOid, FALSE);
if(filterTable->find_index(index)){ printf("filterTable already has index of %s\n",(index.as_string()).get_printable());}else{ filterRow = filterTable->add_row(index); if(filterRow) { filterRow->get_nth(0)->replace_value(new OctetStr("")); filterRow->get_nth(1)->replace_value(new SnmpInt32(2)); filterRow->get_nth(2)->replace_value(new SnmpInt32(3)); filterRow->get_nth(3)->replace_value(new SnmpInt32(1)); } else { printf("filterRow: Could not add Row\n"); }}
More information about the AGENTPP
mailing list