Thanks guys,
Unfortunately in this case disabling modules won't help, as it's the ports module that is taking all the time, and we can't really live without that :)
Adams reply got me thinking, and I went on a deep dive of RRD internals, and found the answer - heartbeat! by default, it's 10 minutes. I've pushed it out to 30 minutes for the affected devices, and they're graphing now, with them only being polled every
15 minutes!
Incase it's useful, I did the following for each device's rrd directory:
for
rrdfilename in *.rrd; do
rrdinfo $rrdfilename | grep ds.*heartbeat | cut -d'[' -f 2 | cut -d']' -f 1 | while read dsname; do
rrdtool tune --heartbeat $dsname:1800 $rrdfilename ;
done ;
done
And of course, don't forget to shutdown rrdcache before, and start it back up after ;)
The graphs for those devices aren't quite as pretty with 15 minute polling, but it's better than no graphs at all, so we'll live with it until the vendor figures out what in earth
is going on :D
Oh, btw, Adam - I found an issue with
poller-wrapper.py - the -d debug does not actually work, as it's not able to log to the file (the file handle needs to be passed to subprocess.check_call, not the name of the
file. I'm not really a python dev, so this might not be the nicest way to fix it, but this got it working:
@@ -844,7 +844,7 @@
command_args.extend(command_list)
command_args.append(device_id)
if debug:
- command_out = temp_path + '/observium_' + process + '_' + str(device_id) + '.debug'
+ command_out = open(temp_path + '/observium_' + process + '_' + str(device_id) + '.debug', 'w')
#print(command_args) #debug
subprocess.check_call(map(str, command_args), stdout=command_out, stderr=subprocess.STDOUT)
Thanks,
Damien
Damien Gardner Jnr
Senior Dev Ops
P: (02) 8115 8812
4 Amy Close, Wyong, NSW 2259
Need assistance? We are here 24/7 +61 2 8115 8888 |