Ad blocker detected: Our website is made possible by displaying online advertisements to our visitors. Please consider supporting us by disabling your ad blocker on our website.
Seriously.
I had "When Index Count Chages" set up and was reindexing when a switch had ports coming up or down. Good.
On one such device (whit a lot of ports coming up or down often) I deliberately changed, through the gui, by removing and re-adding the interface query, from Index Count to Verify All. The device still was reindex when ports came up and down. Good.
On a few other devices I had "Verify All Fields". Those devices were down. They came up, they Did Not get reindexed. Isn't uptime part of the conditions that'll trigger when Verify All is used? Even such, those devices had only 3 graphs (Cisco template mem/cpu/procmem) Clearly they had a LOT more stuff cached up when the queries started working. No stuff cached < (less than) Many stuff. Why wasn't a reindex event triggered then?? No indexed items is less than "some" indexed items right?
What Exactly are the differences between those methods? Do you have any flowcharts or whatever depicting when things happen depending on input/conditions?
General Information
Date Fri, 27 Sep 2013 16:32:42 +0100
Cacti Version 0.8.8a
Cacti OS unix
SNMP Version NET-SNMP version: 5.5
RRDTool Version RRDTool 1.3.x
Hosts 179
Graphs 3760
Data Sources SNMP: 715
SNMP Query: 3245
Script - Script Server (PHP): 6
Script Query - Script Server: 12
Total: 3978
Poller Information
Interval 60
Type SPINE 0.8.8 Copyright 2002-2012 by The Cacti Group
Items Action[0]: 7205
Action[2]: 34
Total: 7239
Concurrent Processes 1
Max Threads 30
PHP Servers 10
Script Timeout 180
Max OID 50
Last Run Statistics Time:9.8951 Method:spine Processes:1 Threads:30 Hosts:180 HostsPerProcess:180 DataSources:7239 RRDsProcessed:0
PHP Information
PHP Version 5.3.3
PHP OS Linux
PHP uname Linux cati-internal 2.6.32-279.9.1.el6.x86_64 #1 SMP Tue Sep 25 21:43:11 UTC 2012 x86_64
PHP SNMP Installed
max_execution_time 180
memory_limit 512M
The "Verify All Fields" is a bit misleading. It should better named "Verify All Index Fields", where the index fields are defined by the XML for that data query in the order listed.
R.
A "check all" condition, uptime, index count change, indexed fields altogether. So a host will be recached when virtually any change has been detected.
This would be an option, but at high costs. And I fear that some will use that as a swiss knife. Please know, that reindexing is not threaded right now and may cause issues when run too often.
So I won't say "no" to this approach, even if I personally dislike it a bit
R.
Do you refer to the possibility of statistically increasing the re-index events because more conditions can match? Interesting. I have one cacti with hosts being reindexed quite often and it's fine as long it takes less than a second (and AUTOM8 runs as well just to see that actually no graphs needed creating I suppose that'll have its performance hit). On another I had a very big host with the same thing but since the indexed items were so many (212960 Items, 26616 Rows atm lol) it sometimes took more than 30 seconds to reindex it and that happening every few minutes was a bit detrimental indeed. (so I set that one to Uptime Goes Backwards..)
Yeah I can deffo confirm the behaviour in the following conditions:
Host was not up as of adding to cacti. (Re-index: "Verify All Fields")
- The host comes up. Not reindexed.
Host was not up as of adding to cacti. (Re-index: "Index Count Changed")
- The host comes up. Host reindexed, my various AUTOM8 rules get applied.
When the number of indexed items changes for both cases (on hosts already Up) they get reindexed. It's a bit more complicated for me to test if changes to the contents of the indexed fields though. (I suppose this is here post is more a documentation to myself rather than anything else lol)