How can I speed up my Logaholic?

2011-10-04 15:47:35Tags: speed-up
I got alot of traffic and Logaholic is starting to get slow.

Answer:

With massive amounts of traffic, Logaholic may become slow.

Logaholic becomes slow when handling large amounts of data because of the way it stores information in the Mysql database. Although it may appear inefficient, ALL data is stored, including relationships between visitors, pages, referrers etc. Logaholic's unique and powerful reporting power must come from this data; it is worth the little extra disk space and computational power.

To speed up Logaholic:

The key to speed is database size, the bigger it gets the slower it becomes. Deleting old data will greatly increase speed. Consider keeping only a few months of data in the database.

Also, consider adding more pages to the Skip Files field in your profile. Anything you are not really intereted in (i.e background php scripts that get requested a lot) can be added to the Skip Files field.

You could always set up an additional profile to hold all the data, updating it only once in a while, and keep the profile you use most often small and fast. You could also export the data back to log file format (check the delete options in your profile) so you can re-import any old data if you need to look back on it.

Another thing that will help is to give MySql more memory for inserts and queries. Add options like this to the my.cnf file:

bulk_insert_buffer_size=128M
key_buffer_size=512MB

Please check the MySql documentation first and apply the amount of memory accordingly. To get the maximum speed benefit, make the key_buffer_size at least as big as all the MySql index files (you can usually find these in /var/lib/mysql)

Also, you could also give PHP more memory as this will speed up the update process. This is done in the PHP.ini file.

Finally, when Logaholic Update runs, it takes up quite a lot of processing power. If your server is already heavily loaded, updating will remain slow in any case.

Therefore, if Logaholic is running on the same machine as the website, and the server is very busy just serving web pages to visitors (a server load consistently over 1.0 on Linux, for example) it might be a good idea to only run the update process once a day, during a slow period. Or you could install and run Logaholic from a separate server.

The information on this page relates to older Logaholic versions (prior to Logaholic 6) and may be outdated.