[AGENT++] how to better synch snmp table with exernal storage

Evgeny Sabelskiy evgeny.sabelskiy at gmail.com
Mon Mar 2 20:44:49 CET 2009


Hi,

i have a next two questions :)

1. how to better sync my snmp table with external source.
now i do

void XXXXEntry::update(Request* req)
{

if (currentRequest == req->get_request_id())
   return;

currentRequest = req->get_request_id();

time_t currentTime;
currentTime = time(0);

if ((currentTime - lastUpdated) < 5)
   return;

lastUpdated = currentTime;

start_synch();

while (!is_empty()) {
  remove_row(content.first()->get_index());
}

while ([iterate rows]) {
  Oidx ind;

  ind += myExternalRowIndex;
  MibTableRow *row = add_row(ind);

  set_row(row, .....);
}
end_synch();

but it is fires row_added, row_init, row_delete events, i think better
to use events to modify external source on SNMP commands.

2. question: where is better to catch add/set/delete row events. seems
like from row_added, row_init, row_delete but mb it is possible from
myRowStatus::set() method. i just think how to better support SET/UNDO
SET requests.

Thanks!
Evgeny



More information about the AGENTPP mailing list