7. Troubleshooting


Check the error log of your web server.

Trouble getting Beltane to run is usually related to access problems. Potential problems are:

filesystem permissions

Check under which UID Beltane is executed, and make sure that filesystem permissions are correct.

helper programs

Beltane uses some helper programs written in C. One purpose of this is to allow you (completely optionally) to switch the effective user by setting these helper programs SUID.

Please note that these helper programs can only be used by one (compiled-in) UID, set with the --with-user option. Obviously this must be the UID under which the Beltane PHP scripts will run.


PHP will refuse to open files if open_basedir is in effect, and the file is not located under one of the directories listed in the open_basedir path.

safe mode

If safe mode is in effect, you may want to take care that Beltanes C helper programs are in a directory listed in safe_mode_exec_dir.

Also, remember that safe mode does a UID (or GID, with safe_mode_gid) check when opening files.

7.1. Other popular problems

No client reports in database

Logging to a relational database (required for beltane) only works if both server and client are using XML for logging. Clients not logging in XML format will result in missing client data.

File timestamps do not get updated

Using the option 'UseLocalTime = yes' for clients does not work with Beltane. Specifically, updates of file timestamps in the baseline database(s) will not work correctly. Beltane is designed to be able to handle clients in different time zones, and thus expects that GMT is used for file timestamps.

No database access

Problems so far encountered include: no database support in PHP (missing PHP module), wrong password/userid, or wrong hostname, e.g. left over from a previous test installation. Also, loading a PHP module twice in the Apache configuration may cause problems (see Section 7.2 below).

PHP resource limits

See Section 8.2 for help.

7.2. Obscure problems

Module loaded twice in Apache configuration

Loading a PHP module twice in the Apache configuration (e.g. having twice the directive 'extension=pgsql.so') may register its php functions twice. As a result, the function are callable, but always fail (discovered by A. Reid).