sintonia/airtime_mvc/library/propel/runtime/lib/connection/DebugPDO.php

112 lines
4.5 KiB
PHP

<?php
/**
* This file is part of the Propel package.
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*
* @license MIT License
*/
/**
* PDO connection subclass that provides some basic support for query counting and logging.
*
* This class is ONLY intended for development use. This class is also a work in-progress
* and, as such, it should be expected that this class' API may change.
*
* The following runtime configuration items affect the behaviour of this class:
*
* - debugpdo.logging.enabled (default: true)
* Should any logging take place
*
* - debugpdo.logging.innerglue (default: ": ")
* String to use for combining the title of a detail and its value
*
* - debugpdo.logging.outerglue (default: " | ")
* String to use for combining details together on a log line
*
* - debugpdo.logging.realmemoryusage (default: false)
* Parameter to memory_get_usage() and memory_get_peak_usage() calls
*
* - debugpdo.logging.methods (default: DebugPDO::$defaultLogMethods)
* An array of method names ("Class::method") to be included in method call logging
*
* - debugpdo.logging.onlyslow (default: false)
* Suppress logging of non-slow queries.
*
* - debugpdo.logging.details.slow.enabled (default: false)
* Enables flagging of slow method calls
*
* - debugpdo.logging.details.slow.threshold (default: 0.1)
* Method calls taking more seconds than this threshold are considered slow
*
* - debugpdo.logging.details.time.enabled (default: false)
* Enables logging of method execution times
*
* - debugpdo.logging.details.time.precision (default: 3)
* Determines the precision of the execution time logging
*
* - debugpdo.logging.details.time.pad (default: 10)
* How much horizontal space to reserve for the execution time on a log line
*
* - debugpdo.logging.details.mem.enabled (default: false)
* Enables logging of the instantaneous PHP memory consumption
*
* - debugpdo.logging.details.mem.precision (default: 1)
* Determines the precision of the memory consumption logging
*
* - debugpdo.logging.details.mem.pad (default: 9)
* How much horizontal space to reserve for the memory consumption on a log line
*
* - debugpdo.logging.details.memdelta.enabled (default: false)
* Enables logging differences in memory consumption before and after the method call
*
* - debugpdo.logging.details.memdelta.precision (default: 1)
* Determines the precision of the memory difference logging
*
* - debugpdo.logging.details.memdelta.pad (default: 10)
* How much horizontal space to reserve for the memory difference on a log line
*
* - debugpdo.logging.details.mempeak.enabled (default: false)
* Enables logging the peak memory consumption thus far by the currently executing PHP script
*
* - debugpdo.logging.details.mempeak.precision (default: 1)
* Determines the precision of the memory peak logging
*
* - debugpdo.logging.details.mempeak.pad (default: 9)
* How much horizontal space to reserve for the memory peak on a log line
*
* - debugpdo.logging.details.querycount.enabled (default: false)
* Enables logging of the number of queries performed by the DebugPDO instance thus far
*
* - debugpdo.logging.details.querycount.pad (default: 2)
* How much horizontal space to reserve for the query count on a log line
*
* - debugpdo.logging.details.method.enabled (default: false)
* Enables logging of the name of the method call
*
* - debugpdo.logging.details.method.pad (default: 28)
* How much horizontal space to reserve for the method name on a log line
*
* The order in which the logging details are enabled is significant, since it determines the order in
* which they will appear in the log file.
*
* @example // Enable simple query profiling, flagging calls taking over 1.5 seconds as slow:
* $config = Propel::getConfiguration(PropelConfiguration::TYPE_OBJECT);
* $config->setParameter('debugpdo.logging.details.slow.enabled', true);
* $config->setParameter('debugpdo.logging.details.slow.threshold', 1.5);
* $config->setParameter('debugpdo.logging.details.time.enabled', true);
*
* @author Francois Zaninotto
* @author Cameron Brunner <cameron.brunner@gmail.com>
* @author Hans Lellelid <hans@xmpl.org>
* @author Christian Abegg <abegg.ch@gmail.com>
* @author Jarno Rantanen <jarno.rantanen@tkk.fi>
* @since 2006-09-22
* @package propel.runtime.connection
*/
class DebugPDO extends PropelPDO
{
public $useDebug = true;
}