Debugging and profiling the Ensembl website

$SiteDefs::ENSEMBL_DEBUG_FLAGS

In your plugins you can set the value of the EnsEMBL debug flags so that you can control what messages appear in the error logs.

  ## Turn on Perl profiling output.
  $SiteDefs::ENSEMBL_DEBUG_FLAGS |= $SiteDefs::ENSEMBL_PERL_PROFILER;
  ## Turn off Long process warnings
  $SiteDefs::ENSEMBL_DEBUG_FLAGS &= ~$SiteDefs::ENSEMBL_DEBUG_LONG_PROCESS;

A full list of flags are:

$SiteDefs::ENSEMBL_DEBUG_JAVASCRIPT_DEBUG
Include a Debug div in the webpage in which errors warnings and timings are logged.
$SiteDefs::ENSEMBL_DEBUG_MAGIC_MESSAGES
EnsEMBL::Web::Magic module displays a textual description of each request if this flag is set.
$SiteDefs::ENSEMBL_DEBUG_REFERER
For debugging AJAX etc - print out the parsed web-request
$SiteDefs::ENSEMBL_DEBUG_TREE_DUMPS
Textual dump of the image configuration trees.
$SiteDefs::ENSEMBL_DEBUG_TIMESTAMPED_LOGS
If set log files are stamped with the time the server is started.
$SiteDefs::ENSEMBL_DEBUG_PERL_PROFILER
At various points in the code there are in built profiling statements - set this flag to dump them to the logs at the end of the request.
$SiteDefs::ENSEMBL_DEBUG_LONG_PROCESS
Display information about requests that last more than a certain number of seconds.
$SiteDefs::ENSEMBL_DEBUG_HANDLER_ERRORS
Include some detailed error messages while the server is routing the request.
$SiteDefs::ENSEMBL_DEBUG_SD_AUTOLOADER
Various shouts in the EnsEMBL::Web::SpeciesDefs AUTOLOAD function.
$SiteDefs::ENSEMBL_DEBUG_DRAWING_CODE
Informational messages from the drawing code.
$SiteDefs::ENSEMBL_DEBUG_GENERAL_ERRORS
Show some general error messages

Profiling the code - EnsEMBL::Web::Timer

<p>On the 9th July tools (eg BLAST, VEP, etc) will be unavailable on this site for about 90 minutes starting at 1200 (UTC). This is needed for us to carry out essential maintenance. All other aspects of the site will be unnaffected. We apologise for any inconvenience this may cause.</p>