Fix "Webalizer not Updating" Problem in cPanel

The Webalizer is a fast, free web server log file analysis program. It produces highly detailed, easily configurable usage reports in HTML format, for viewing with a standard web browser. This brief tutorial will show you how to fix Webalizer not updating properly.

Updating Webalizer Stats Manually

Try to manually update your Webalizer stats, if there are problems, the update process should explain what the issue is. That is information you don't get when cPanel runs the update automatically.

You'll need to run this from the command line as the cPanel user that is having issues with Webalizer. You can log in directly as the cPanel user via SSH or you can descend to that user account from the root user. 

If the cPanel user doesn't have shell access and you want to descend to that user's shell from root, execute the following command first:

Execute this as the root user:
su CPANELUSER -s /bin/bash
whoami

Replace CPANELUSER with the cPanel username of the account with the Webalizer problem.

If the whoami command doesn't show that you are now the cPanel user, you've done something wrong. Please check your command and try again before continuing.

Now that you are the correct user, execute the following command to manually update Webalizer:

Execute this as the cPanel user:
/usr/local/cpanel/3rdparty/bin/webalizer -d -T -N 10 -D /home/CPANELUSER/tmp/webalizer/dns_cache.db -R 250 -p -n DOMAIN.COM -o /home/CPANELUSER/tmp/webalizer/ /usr/local/apache/domlogs/DOMAIN.COM


Replace CPANELUSER with the cPanel username of the user who is having problems with Webalizer.
Replace DOMAIN.COM with the domain or subdomain for which you'd like to update the stats.

If you want to update the stats for the SSL/TLS visits to a domain or subdomain, append -ssl_log to the end of the domain name at the end of the command above.

Examples:

/usr/local/cpanel/3rdparty/bin/webalizer -d -T -N 10 -D /home/cpguy/tmp/webalizer/dns_cache.db -R 250 -p -n superspecialdomain12.com -o /home/cpguy/tmp/webalizer/ /usr/local/apache/domlogs/superspecialdomain12.com
^ This updates the Webalizer stats for the domain superspecialdomain12.com that is owned by the user cpguy for non SSL/TLS traffic.

/usr/local/cpanel/3rdparty/bin/webalizer -d -T -N 10 -D /home/cpguy/tmp/webalizer/dns_cache.db -R 250 -p -n superspecialdomain12.com -o /home/cpguy/tmp/webalizer/ /usr/local/apache/domlogs/superspecialdomain12.com-ssl_log
^ This updates the Webalizer stats for the domain superspecialdomain12.com that is owned by the user cpguy for SSL/TLS traffic.


A successful run will look something like this:

Webalizer V2.23-08 (Linux 3.10.0-957.12.2.el7.x86_64 x86_64) English
Using logfile /usr/local/apache/domlogs/superspecialdomain12.com (clf)
DNS Lookup (10): Giving 16 bytes to Child 0
Giving 16 bytes to Child 1
Child 9 got closed input, shutting down
Reaped Child 428
Child 8 got closed input, shutting down
Child 1 getnameinfo failed!
Child 0 getnameinfo failed!
Child 1 could not resolve: 175.143.230.1 (no cache)
Child 1 back in task pool
Child 0 could not resolve: 39.97.32.1 (no cache)
Child 0 back in task pool
Reaped Child 427
Child 7 got closed input, shutting down
Reaped Child 426
Child 6 got closed input, shutting down
Reaped Child 425
Child 5 got closed input, shutting down
Reaped Child 424
Child 4 got closed input, shutting down
Reaped Child 423
Child 3 got closed input, shutting down
Reaped Child 422
Child 2 got closed input, shutting down
Reaped Child 421
Child 1 got closed input, shutting down
Reaped Child 420
Child 0 got closed input, shutting down
Reaped Child 419
2 addresses in 1 seconds, 2/sec
Using DNS cache file /home/cpguy/tmp/webalizer/dns_cache.db
Creating output in /home/cpguy/tmp/webalizer/
Hostname for reports is 'superspecialdomain12.com'
Reading history file... webalizer.hist
Reading previous run data.. webalizer.current
Generating summary report
3 records (3 ignored) in 1 seconds, 3/sec



Common Issues and What to Do About Them

Here are some common issues you may run across. We'll explain what to do (or investigate) in each case.

Webalizer Corrupted or not Installed User File Access Issue Domlog Issue Unable to Run

Recovery

Once you've found and potentially fixed the issue, you'll want to try processing stats again and ensure that everything is working as expected.

Of course you could manually run the Webalizer log processing feature again as you did above when you were first trying to diagnose the issue, but you really should let cPanel's standard statistics processor run to ensure the problem won't reoccur the next time stats are processed.

To trigger another run by cPanel for one or more users, you should:

  1. Log into WHM as root if you aren't already.
  2. Click on Statistics Software Configuration from the Server Configuration section of the WHM sidebar.
  3. In the Process Statistics for User box, select the user you want to process stats for from the drop-down list and click the Go button. If you want to process more than one user, repeat this step for each user you want to process.
  4. The processing will take place in the background. Wait until it is complete and check the account's Webalizer stats again.

    If you prefer to run updates for all cPanel users for all active web statistics programs, you can do so by logging into your server via SSH as root and executing the following command:
    /usr/local/cpanel/scripts/runstatsonce

If you don't get any errors but you don't see new statistics in Webalizer make sure there are several additional hits on the website before you process stats again.