This document contains information for an outdated version (3.1) and may not be maintained any more. If some of your projects still use this version, consider upgrading as soon as possible.
SilverStripe can be a large and complex framework to debug, but there are ways to make debugging less painful. In this guide we show the basics on defining the correct Environment Type for your application and other built-in helpers for dealing with application errors.
See the Profiling documentation for more information on profiling SilverStripe to track down bottle-necks and identify slow moving parts of your application chain.
The Debug class contains a number of static utility methods for more advanced debugging.
Debug::show($myVariable); // similar to print_r($myVariable) but shows it in a more useful format. Debug::message("Wow, that's great"); // prints a short debugging message. SS_Backtrace::backtrace(); // prints a calls-stack