Boost Update Interval

Post general support questions here that do not specifically fall into the Linux or Windows categories.

Moderators: Developers, Moderators

pradeepspa
Cacti User
Posts: 67
Joined: Wed Nov 25, 2015 2:35 pm

Boost Update Interval

Post by pradeepspa »

I have confusion in understanding how boost plugin update works. As per my understanding, spine poller will poll each host in cacti every 5 minutes (Poller Interval) then Boost will update the rrd and depicts graphs. So even boost will update rrd every 5 minutes? The reason I am confused is from the boost setting i can see lots of parameters like below,
1.PNG
1.PNG (57.15 KiB) Viewed 2948 times
The boost status is,
2.PNG
2.PNG (23.15 KiB) Viewed 2948 times

BY seeing that i convinced the boost will update rrd by every 2 hours or if it reaches 500,000 records. However from the log, i can see its updating every 5 minutes (approx). Could some give me an overview the flow of how it works?

Oct 25 12:04:20 cacti3 Cacti[5577]: SYSTEM: BOOST STATS: Time:224.1100 RRDUpdates:95038
Oct 25 12:08:44 cacti3 Cacti[31714]: SYSTEM: BOOST STATS: Time:190.2200 RRDUpdates:95081
Oct 25 12:16:26 cacti3 Cacti[41070]: SYSTEM: BOOST STATS: Time:86.5000 RRDUpdates:25250
Oct 25 12:23:02 cacti3 Cacti[26537]: SYSTEM: BOOST STATS: Time:148.1000 RRDUpdates:190152
Oct 25 12:28:49 cacti3 Cacti[52129]: SYSTEM: BOOST STATS: Time:196.6800 RRDUpdates:95022
Oct 25 12:34:48 cacti3 Cacti[12886]: SYSTEM: BOOST STATS: Time:259.0900 RRDUpdates:95075
Oct 25 12:39:42 cacti3 Cacti[38253]: SYSTEM: BOOST STATS: Time:232.8300 RRDUpdates:95092
cigamit
Developer
Posts: 3369
Joined: Thu Apr 07, 2005 3:29 pm
Location: B/CS Texas
Contact:

Re: Boost Update Interval

Post by cigamit »

No, boost was made so that you don't actually do lots of small writes / seeks to the rrd files every 5 minutes (which requires lots of disk I/O and can add lots of polling time to the poller causing it to overrun on slower disked systems). Instead it delays all the writes and saves them into a memory table, them it does bulk updates.

1. Poller grabs the data from the host
2. Normally it would go in the poller output table
3. Instead boost grabs the data from there and sticks it in its table
4. It will continue to do them until 1 of 2 things happen
5. If you view a grab, before the graph image is created, it will do a quick bulk update of all that graphs data to its rrd, that way you see the latest data
6. Once any of the conditions in the settings are met, meaning it either hits the time limit or it hits X number of records in the table, it will go ahead and flush all that data back to the rrds.

The one thing you do have to do is ensure that you are using a memory table for the poller_output and the boost poller output table (otherwise you are just making those writes to mysql!) and ensure that the memory limits are setup properly. If you ever need to reboot the server, you will then need to disable boost, and wait until the boost table is flushed (I run the command manually instead of waiting for the poller) otherwise all data in the memory table will be lost.
pradeepspa
Cacti User
Posts: 67
Joined: Wed Nov 25, 2015 2:35 pm

Re: Boost Update Interval

Post by pradeepspa »

First of all thanks for your response. I really appreciate it.

From you explanation. the boost will gather poller data and keep in its table and update it , if the time limit (2hours in my case) expires or it hits X number of records (500,000) in the table.

Then how i am seeing latest data on graph every 5 minutes interval?



Also , I keep watching the boost status
4.PNG
4.PNG (3.7 KiB) Viewed 2929 times

where Boost updating this record every 5 minutes which still I couldnt understand why.

Am i confusing with multiple unrelated events? I need some understanding on this before i start some work. Any comment would be great.
Attachments
3.PNG
3.PNG (4.49 KiB) Viewed 2929 times
cigamit
Developer
Posts: 3369
Joined: Thu Apr 07, 2005 3:29 pm
Location: B/CS Texas
Contact:

Re: Boost Update Interval

Post by cigamit »

First, it seems that you have boost disabled (you have to check that box up top) so I am not even sure why it is running at all. What version of Cacti / Spine?
pradeepspa
Cacti User
Posts: 67
Joined: Wed Nov 25, 2015 2:35 pm

Re: Boost Update Interval

Post by pradeepspa »

I have just disabled the "On demand Updating" feature from boost. We had an issue that cacti graphs only when the graphs was displayed. Disabling it fixed the issue but I am still seeing some gaps which am trying to fix.

You can find cacti details below,
5.PNG
5.PNG (29.19 KiB) Viewed 2928 times
cigamit
Developer
Posts: 3369
Joined: Thu Apr 07, 2005 3:29 pm
Location: B/CS Texas
Contact:

Re: Boost Update Interval

Post by cigamit »

Its been a while since I used the old boost plugin. In Cacti 1.0, Boost is integrated directly into the Core, so a lot of things have changed. But in 1.0 "Enable On Demand RRD Updating" is just the checkbox for Enabling Boost (ya the wording is really weird), is there another checkbox on the old plugin for directly enabling Boost?

The reason that I ask, is that it appears that there may be a bug. It honestly seems like your Boost is disabled (normally this just means that it wouldn't try to pull the data from the poller_output table itself), but Spine is set to directly inject into the Boost Poller table (that setting is set and the bug may be that its ignoring the fact that boost is disabled though). So that basically Spine keeps injecting the values. Boost, even when disabled, will pull out any data in its poller table (as it should, that is how it cleans itself up when you disable it).

So basically Boost is running every 5 minutes, because Spine is improperly injecting data into the Boost table. It sees that it shouldn't be there (its disabled) so it cleans them out.
pradeepspa
Cacti User
Posts: 67
Joined: Wed Nov 25, 2015 2:35 pm

Re: Boost Update Interval

Post by pradeepspa »

I see a separate option to enable boost server . You can find that below.
1.PNG
1.PNG (57.15 KiB) Viewed 2924 times
Also what i can see is, initially "Poller_output" table is populated then it directs to "poller_output_boost" . So this correlates your explanation on working of boost. So i believe "On Demand Update" is just the one of the feature on boost. You think enabling it will solve by issue of seeing gaps in graphs?
6.PNG
6.PNG (6.6 KiB) Viewed 2924 times
cigamit
Developer
Posts: 3369
Joined: Thu Apr 07, 2005 3:29 pm
Location: B/CS Texas
Contact:

Re: Boost Update Interval

Post by cigamit »

No, Boost Server is technically different also. Its a separate process that always stays running.
pradeepspa
Cacti User
Posts: 67
Joined: Wed Nov 25, 2015 2:35 pm

Re: Boost Update Interval

Post by pradeepspa »

So whats the difference in enabling/disabling "On demand Update" if boost is always running?

Anyway I have enabled the feature again and see how it trends.
7.PNG
7.PNG (27.66 KiB) Viewed 2912 times
cigamit
Developer
Posts: 3369
Joined: Thu Apr 07, 2005 3:29 pm
Location: B/CS Texas
Contact:

Re: Boost Update Interval

Post by cigamit »

"On Demand Update" is really just the long name for "Boost". Boost was built as an "On Demand Updater" instead of the classic "Update everything Immediately every time" design of the poller.

Initially, its key feature was to store all data until needed and update the graphs on demand, and then periodically update the rest of the graphs. The key is that this was 1 feature, not 2 separate so there is no option to just disable the on demand updating of the graphs (even though it appears that way because its really badly worded). The only way its even working for you now is that there appears to be a bug in Spine.

Generally your gaps in the graphs are most likely caused by a different issue (its a bit hard to diagnose without some more info). Usually rrd files are owned by the user the poller runs as, and then when boost comes along and tried to "On Demand Update" them, it can't because it doesn't have write access as the web server user. It attempted to write it though, so it clears that data from the table, and thus you get the gaps. The Boost Server was made to fix that problem, as it would be ran as the specified root user, and Boost (as the web server) would contact it to tell it to update the files (as the root user) instead of it doing it.

First thing to check is whether the boost server process is running. If I remember correctly, for the plugin, in order to use boost server you had to take its service init script as shown here (it comes with the plugin)
http://svn.cacti.net/viewvc/boost/trunk ... iew=markup
and create the linux service with it. Then start it.
pradeepspa
Cacti User
Posts: 67
Joined: Wed Nov 25, 2015 2:35 pm

Re: Boost Update Interval

Post by pradeepspa »

This solved most of my doubts. Just have one stupid question.
Initially, its key feature was to store all data until needed and update the graphs on demand, and then periodically update the rest of the graphs
From this, the graphs will be updated by boost for every 2 hours or if it hits the record limit. If thats the case how am i able to see graphs of continous flow? I should be expecting some wait time till the update is done for the graphs to plot right?


Speaking about boost process, i can see it is running using init script.


/etc/init.d/cacti_rrdsvc status
Status of Cacti RRDTool Process: running ...

ls -l /etc/init.d/cacti_rrdsvc
-rwxr-xr-x 1 root root 1337 Jul 15 14:11 /etc/init.d/cacti_rrdsvc


My rrd files are own by "cacti" user. I am keeping my graphs on trend now to see if i could find gaps after enabling "On demand Update". I am happy to provide more details if required.
cigamit
Developer
Posts: 3369
Joined: Thu Apr 07, 2005 3:29 pm
Location: B/CS Texas
Contact:

Re: Boost Update Interval

Post by cigamit »

5. If you view a grab, before the graph image is created, it will do a quick bulk update of all that graphs data to its rrd, that way you see the latest data
When you view a graph, meaning that any time a graph image is loaded, Boost will automatically pull the data from the boost poller table, update the rrd file for that graph (using boost server if its running) so that the graph image always has the latest data. This was one of the whole points / compromises of Boost. Store the data (to save on seeks/writes) BUT make it user friendly so that graphs are updated automatically if we go to look at them. That is the "On Demand" part of Boost. No one really wants to wait 30 minutes for a graph to update when they are troubleshooting.
pradeepspa
Cacti User
Posts: 67
Joined: Wed Nov 25, 2015 2:35 pm

Re: Boost Update Interval

Post by pradeepspa »

The reason i asked you that question is I had an issue, where i never looked at the graphs lets say for 2 days and on the third day when i open , i saw it started graphing from that point. However the previous two days was blank.

One feature of boost is it start updating the rrd whenever we looked into it - (This part I understood)

Second feature is, it update periodically either by time or record - My doubt is over here. For an example if my boost update time is 2 hours. I see last update is at 1pm and second update will be at 3pm. However if I open the graphs at 2pm i can see the trend since 1pm. I mean to say its continous from 1pm where boost haven't updated the rrd. From where its getting those values as boost will provide only at 3pm?

If my question seems so trivial i apologies for that. I am trying to understand better by asking some simple questions.
cigamit
Developer
Posts: 3369
Joined: Thu Apr 07, 2005 3:29 pm
Location: B/CS Texas
Contact:

Re: Boost Update Interval

Post by cigamit »

That is what I am saying.

If you view the imagine at 2pm, it is going to have every data point from 1pm to 2pm also, because you are viewing the graph. When you view the graph, boost intercepts the request, updates the rrd with the latest data (all the data from 1pm to 2pm) from the poller table, and then allows the image to be created with all the data.
pradeepspa
Cacti User
Posts: 67
Joined: Wed Nov 25, 2015 2:35 pm

Re: Boost Update Interval

Post by pradeepspa »

ah got it now. Thanks a lot for helping me out.

Now i have to work on actual issue (Gaps in graphs) by knowing what am doing.
Post Reply

Who is online

Users browsing this forum: No registered users and 1 guest