Ez debugging levels question

Author Message

Paul Forsyth

Friday 16 July 2004 8:38:16 am

I want to use a more sophisticated way of logging events and items in my code. For that i want to use levels and loggers.

Looking in ezdebug.php there seems to be support for levels but i haven't seen any examples of debug lines being incorporated into code in a way that allows for settings to influence what is displayed.

I tend to use debug lines as print statements, which isnt good. Are there examples someone could point me to that illustrate how to best use the eZ debug tools?

paul

--
http://www.visionwt.com

Björn Dieding@xrow.de

Friday 16 July 2004 8:53:44 am

ezdebug is related to php errors.

you might wanna look at eZLogger though.

I implemented my own class

<?php
<?php
/*! \file ezsimpleobject.php
*/

/*!
  \class eZSimpleObject ezsimpleobject.php
  \brief The class eZSimpleObject provide could be the super class of any regular object 
 		 you can also parse this Object to the tempalte engine
*/
include_once( "kernel/classes/ezpersistentobject.php" );
class eZSimpleObject extends eZPersistentObject
{
	function eZSimpleObject()
	{
	}
	function hasattribute($name)
	{
		$classname = get_class($this);
		$vars = get_class_vars($classname);
		if ( array_key_exists($name,$vars) )
			return true;
		else
			return false;
	}
	function toString()
	{
		return;
	}
	function setAttribute( $name, &$value )
	{
		$this->$name = & $value;
	}
	function & attribute($name)
	{
		return $this->$name;
	}
	function &instance($keys = null,$classname=__CLASS__)
	{
		if (is_array($keys) and count($keys))
		{
			$keystring=implode("", $array);
		}
		else if ($keys and (is_string($keys) or is_integer($keys) ) )
		{
			$keystring="$keys";
		}
		else
		{
			$keystring="";
		}
		$impl =& $GLOBALS[__CLASS__."GlobalInstance".$keystring];
        $class =& get_class( $impl );
        if ( $class != __CLASS__ )
        {
            $impl = new $classname( $keys );
            $GLOBALS[__CLASS__."GlobalInstance".$keystring]=$impl;
        }
        return $impl;
	}
}
?>
class eZError extends eZSimpleObject
{
	function eZError( $text, $type=null,$number=null)
	{
		if ($text)
			$this->text=$text;
		if ($type)
			$this->error['type']=$type;
		if ($number)
			$this->error['number']=$number;
		if (isset($GLOBALS['eZErrors']))
		{
			$GLOBALS['eZErrors'][] = & $this;
		}
	}
	function hasErrors()
	{
		if ( isset($GLOBALS['eZErrors']) and count( $GLOBALS['eZErrors'] ) > 0)
		{
			return true;
		}
		else
		{
			return false;
		}
	}
	function clearAll()
	{
		unset($GLOBALS['eZErrors']);
	}
	function initGlobal( &$tpl )
	{
		if ( !isset($GLOBALS['eZErrors']) )
		{	
			$GLOBALS['eZErrors'] = array();
			if ( $tpl )
			{
				$tpl->setVariableRef('ezerrors',$GLOBALS['eZErrors'],'siteskins');
			}
			return true;
		}
		else
		{
			return false;
		}
	}
	function &instance($id)
	{
		return parent::instance($id,"ezerror");
	}
	var $text;
	var $error;
}
?>
{default warning_list=array()}
{section show=or(and(is_array($warning_list),$warning_list|count|gt(0) ), and(is_array($siteskins:ezerrors), $siteskins:ezerrors|count|gt(0) ) )}
<div class="warning">
	<h2>{"Warning"|i18n("design/siteskins")}</h2>
    <ul>
        {section name=Warning loop=$warning_list}
        <li>{$Warning:item.text} {section show=is_set($Warning:item.error.type)} {$Warning:item.error.type} ({$Warning:item.error.number}){/section}</li>
        {/section}
        {section name=Warning loop=$siteskins:ezerrors}
        <li>{$Warning:item.text} {section show=is_set($Warning:item.error.type)} {$Warning:item.error.type} ({$Warning:item.error.number}){/section}</li>
        {/section}
    </ul>
</div>
{/section}
{/default}

Looking for a new job? http://www.xrow.com/xrow-GmbH/Jobs
Looking for hosting? http://hostingezpublish.com
-----------------------------------------------------------------------------
GMT +01:00 Hannover, Germany
Web: http://www.xrow.com/

Powered by eZ Publish™ CMS Open Source Web Content Management. Copyright © 1999-2014 eZ Systems AS (except where otherwise noted). All rights reserved.

eZ debug

Timing: Jan 19 2025 13:58:18
Script start
Timing: Jan 19 2025 13:58:18
Module start 'layout'
Timing: Jan 19 2025 13:58:18
Module start 'content'
Timing: Jan 19 2025 13:58:19
Module end 'content'
Timing: Jan 19 2025 13:58:19
Script end

Main resources:

Total runtime0.9067 sec
Peak memory usage4,096.0000 KB
Database Queries54

Timing points:

CheckpointStart (sec)Duration (sec)Memory at start (KB)Memory used (KB)
Script start 0.00000.0043 589.1563152.6250
Module start 'layout' 0.00430.0020 741.781339.4453
Module start 'content' 0.00630.8988 781.2266534.0938
Module end 'content' 0.90510.0016 1,315.320312.1641
Script end 0.9067  1,327.4844 

Time accumulators:

 Accumulator Duration (sec) Duration (%) Count Average (sec)
Ini load
Load cache0.00290.3174160.0002
Check MTime0.00120.1291160.0001
Mysql Total
Database connection0.00050.053210.0005
Mysqli_queries0.867595.6684540.0161
Looping result0.00050.0514520.0000
Template Total0.879997.020.4399
Template load0.00190.212520.0010
Template processing0.877996.824220.4390
Template load and register function0.00020.025310.0002
states
state_id_array0.00100.106310.0010
state_identifier_array0.00140.155720.0007
Override
Cache load0.00160.1714160.0001
Sytem overhead
Fetch class attribute can translate value0.00050.054120.0002
Fetch class attribute name0.00100.108230.0003
XML
Image XML parsing0.00050.053120.0002
class_abstraction
Instantiating content class attribute0.00000.000730.0000
General
dbfile0.00100.1103160.0001
String conversion0.00000.000840.0000
Note: percentages do not add up to 100% because some accumulators overlap

Templates used to render the page:

UsageRequested templateTemplateTemplate loadedEditOverride
1node/view/full.tplfull/forum_topic.tplextension/sevenx/design/simple/override/templates/full/forum_topic.tplEdit templateOverride template
2content/datatype/view/ezxmltext.tpl<No override>extension/community_design/design/suncana/templates/content/datatype/view/ezxmltext.tplEdit templateOverride template
3content/datatype/view/ezxmltags/paragraph.tpl<No override>extension/ezwebin/design/ezwebin/templates/content/datatype/view/ezxmltags/paragraph.tplEdit templateOverride template
1content/datatype/view/ezxmltags/line.tpl<No override>design/standard/templates/content/datatype/view/ezxmltags/line.tplEdit templateOverride template
1content/datatype/view/ezimage.tpl<No override>extension/sevenx/design/simple/templates/content/datatype/view/ezimage.tplEdit templateOverride template
1content/datatype/view/ezxmltags/literal.tpl<No override>extension/community/design/standard/templates/content/datatype/view/ezxmltags/literal.tplEdit templateOverride template
1print_pagelayout.tpl<No override>extension/community/design/community/templates/print_pagelayout.tplEdit templateOverride template
 Number of times templates used: 10
 Number of unique templates used: 7

Time used to render debug report: 0.0002 secs