Menu

#14 cron-less continuous polling

0.95
moved-to-github
nobody
Netdisco (1)
2014-08-02
2007-11-01
Justin A
No

This is half patch half feature request.

It is still in a "proof of concept" phase, but I have had this running for a number of months now. The main issues it has are in dealing with failures and getting suck...

What this new process_all function does is continuously polls the network, ensuring that no devices are out of date, and that only one process is touching the database at a time. This is sort of the opposite of the threading support I saw. The main goal was to be self tuning and keep the load on the database low, even though polling multiple devices would be fater.

With about 900 devices and 30,000 ports this loop keeps every device macsucked at least once an hour, with currently about 400 of them polled in the last 30 minutes. It also ensures that an arpwalk is run every 25 minutes.

I did notice the memory usage was going up a bit, so that is why I have it only run through the loop 1000 times before being restarted.

It definitely needs some work, but I think the idea is solid... feedback would be nice :)

Discussion

  • Justin A

    Justin A - 2007-11-01

    patch that adds process_all

     
  • Justin A

    Justin A - 2007-11-01

    Logged In: YES
    user_id=547833
    Originator: YES

    File Added: fping.pm

     
  • Justin A

    Justin A - 2007-11-01

    simple module that uses fping to get the status of an IP

     
  • Oliver Gorwits

    Oliver Gorwits - 2014-08-02

    Ticket moved from /p/netdisco/patches/14/

    Can't be converted:

    • _milestone: 0.95
    • _priority: 5
     
  • Oliver Gorwits

    Oliver Gorwits - 2017-02-02
    • Status: open --> moved-to-github