Debugging Installation Problems
First, make sure your problem is not described in the FAQ!
Second, if you have a particular error message, try typing it into Google, or into the search box on this wiki.
DAViCal supports extensive debug logging, including many flags which are generally not useful for debugging actual live issues. In particular do NOT use the 'all' debug setting unless a developer recommends it as this level of debugging is so verbose as to be useless (megabytes / minute on even a lightly loaded server) and can cause further errors unrelated to the problem you are attempting to solve.
The most useful debugging level for resolving CalDAV problems is:
$c->dbg = array( 'statistics' => 1, 'request' => 1, 'response' => 1 );
This will cause the following to be written into the PHP error log (which by default will be the Apache error log):
- Complete request headers & body.
- Complete response headers & body.
- A line of statistics after each response has been sent.
Restricting Logging to a Single Client
It may be that you want the logging to be restricted to only a single client that is experiencing the problem, or just to limit the amount of logged data to understand the problem without all of the interspersed logging for unrelated clients. DAViCal's config file is PHP code, so this can be done relatively easily by something like the following:
$c->dbg = array(); // default debug logging to off if ( isset($_SERVER['REMOTE_ADDR']) && $_SERVER['REMOTE_ADDR'] == '172.18.219.2' ) $c->dbg = array( 'statistics' => 1, 'request' => 1, 'response' => 1 );
If you know that the problem applies for a particular user, and is only related to what happens to authenticated requests, you could use a different variable for the user, as follows:
$c->dbg = array(); // default debug logging to off if ( (isset($_SERVER['REMOTE_USER']) && $_SERVER['REMOTE_USER'] == 'andrew') || (isset($_SERVER['PHP_AUTH_USER']) && $_SERVER['PHP_AUTH_USER'] == 'andrew') ) $c->dbg = array( 'statistics' => 1, 'request' => 1, 'response' => 1 );