Troubleshooting

Due to the nature of web-based software, various server environments and dependencies, sometimes things don't work as expceted. When they don't, it can be tricky to find the source of the problem and fix it.

Logging

Classroombookings includes the ability to write information to log files at various thresholds; ranging from 0 (turned off completely) through to 4 (log everything possible). During installation, this threshold is set to 4 to ensure that any issues during installation are logged for troubleshooting purposes. After installation, this value is changed to 1 (errors only), so that log files don't fill up unnecessarily and maintain fast page load times.

If there are any problems, the generated log files are the first place to check. These are located in the local/logs folder, and a new file is saved for each day where the date is part of the filename. Inspect the log file with a text editor.

If this doesn't include any useful or obvious detail, increase the log threshold to 4. To do this, open the local/config.php file in a text editor, adjust the value for log_threshold and save it. Try again to complete the action that prouduced the error or unexpected behaviour, and re-open and inspect the current log file again for more clues.

<?php
defined('BASEPATH') OR exit('No direct script access allowed');

return array(

    'config' => array(
        'base_url' => 'http://classroombookings.local/',
        'log_threshold' => 4,
        'index_page' => 'index.php',
        'uri_protocol' => 'REQUEST_URI',
    ),

    ...

);

Displaying errors

By default, detailed technical errors aren't displayed, but this can be turned on.

To do this, create a plain text file called .env in the main classroombookings folder (same place as index.php). The contents of this file should just be the word development.

This tells the application to run in development mode, which will display errors when they are encountered. Once you have encountered an error and fixed the cause, turn off development mode by deleting the .env file, or changing the contents of it from development to production.

Server logs

Sometimes, classroombookings might not even load. This is sometimes due to missing or non-installed extensions that are required, or your server configuration not being detected or supported by classroombookings. Check your server error logs for more information.