0 follower

CWebLogRoute

Package system.logging
Inheritance class CWebLogRoute » CLogRoute » CComponent
Subclasses CProfileLogRoute
Since 1.0
Source Code framework/logging/CWebLogRoute.php
CWebLogRoute shows the log content in Web page.

The log content can appear either at the end of the current Web page or in FireBug console window (if showInFireBug is set true).

Public Properties

Hide inherited properties

PropertyTypeDescriptionDefined By
categories mixed array of categories, or string list separated by comma or space. CLogRoute
collapsedInFireBug boolean whether the log should be collapsed by default in Firebug. CWebLogRoute
enabled boolean whether to enable this log route. CLogRoute
except mixed array of categories, or string list separated by comma or space, to EXCLUDE from logs. CLogRoute
filter mixed the additional filter (eg CLogFilter) that can be applied to the log messages. CLogRoute
ignoreAjaxInFireBug boolean whether the log should be ignored in FireBug for ajax calls. CWebLogRoute
ignoreFlashInFireBug boolean whether the log should be ignored in FireBug for Flash/Flex calls. CWebLogRoute
levels string list of levels separated by comma or space. CLogRoute
logs array the logs that are collected so far by this log route. CLogRoute
showInFireBug boolean whether the log should be displayed in FireBug instead of browser window. CWebLogRoute

Public Methods

Hide inherited methods

MethodDescriptionDefined By
__call() Calls the named method which is not a class method. CComponent
__get() Returns a property value, an event handler list or a behavior based on its name. CComponent
__isset() Checks if a property value is null. CComponent
__set() Sets value of a component property. CComponent
__unset() Sets a component property to be null. CComponent
asa() Returns the named behavior object. CComponent
attachBehavior() Attaches a behavior to this component. CComponent
attachBehaviors() Attaches a list of behaviors to the component. CComponent
attachEventHandler() Attaches an event handler to an event. CComponent
canGetProperty() Determines whether a property can be read. CComponent
canSetProperty() Determines whether a property can be set. CComponent
collectLogs() Retrieves filtered log messages from logger for further processing. CLogRoute
detachBehavior() Detaches a behavior from the component. CComponent
detachBehaviors() Detaches all behaviors from the component. CComponent
detachEventHandler() Detaches an existing event handler. CComponent
disableBehavior() Disables an attached behavior. CComponent
disableBehaviors() Disables all behaviors attached to this component. CComponent
enableBehavior() Enables an attached behavior. CComponent
enableBehaviors() Enables all behaviors attached to this component. CComponent
evaluateExpression() Evaluates a PHP expression or callback under the context of this component. CComponent
getEventHandlers() Returns the list of attached event handlers for an event. CComponent
hasEvent() Determines whether an event is defined. CComponent
hasEventHandler() Checks whether the named event has attached handlers. CComponent
hasProperty() Determines whether a property is defined. CComponent
init() Initializes the route. CLogRoute
processLogs() Displays the log messages. CWebLogRoute
raiseEvent() Raises an event. CComponent

Protected Methods

Hide inherited methods

MethodDescriptionDefined By
formatLogMessage() Formats a log message given different fields. CLogRoute
render() Renders the view. CWebLogRoute

Property Details

collapsedInFireBug property (available since v1.1.13.)
public boolean $collapsedInFireBug;

whether the log should be collapsed by default in Firebug. Defaults to false.

ignoreAjaxInFireBug property
public boolean $ignoreAjaxInFireBug;

whether the log should be ignored in FireBug for ajax calls. Defaults to true. This option should be used carefully, because an ajax call returns all output as a result data. For example if the ajax call expects a json type result any output from the logger will cause ajax call to fail.

ignoreFlashInFireBug property (available since v1.1.11)
public boolean $ignoreFlashInFireBug;

whether the log should be ignored in FireBug for Flash/Flex calls. Defaults to true. This option should be used carefully, because an Flash/Flex call returns all output as a result data. For example if the Flash/Flex call expects an XML type result any output from the logger will cause Flash/Flex call to fail.

showInFireBug property
public boolean $showInFireBug;

whether the log should be displayed in FireBug instead of browser window. Defaults to false.

Method Details

processLogs() method
public void processLogs(array $logs)
$logs array list of log messages
Source Code: framework/logging/CWebLogRoute.php#50 (show)
public function processLogs($logs)
{
    
$this->render('log',$logs);
}

Displays the log messages.

render() method
protected void render(string $view, array $data)
$view string the view name (file name without extension). The file is assumed to be located under framework/data/views.
$data array data to be passed to the view
Source Code: framework/logging/CWebLogRoute.php#60 (show)
protected function render($view,$data)
{
    
$app=Yii::app();
    
$isAjax=$app->getRequest()->getIsAjaxRequest();
    
$isFlash=$app->getRequest()->getIsFlashRequest();

    if(
$this->showInFireBug)
    {
        
// do not output anything for ajax and/or flash requests if needed
        
if($isAjax && $this->ignoreAjaxInFireBug || $isFlash && $this->ignoreFlashInFireBug)
            return;
        
$view.='-firebug';
        if((
$userAgent=$app->getRequest()->getUserAgent())!==null && preg_match('/msie [5-9]/i',$userAgent))
        {
            echo 
'<script type="text/javascript">';
            echo 
file_get_contents(dirname(__FILE__).'/../vendors/console-normalizer/normalizeconsole.min.js');
            echo 
"</script>\n";
        }
    }
    elseif(!(
$app instanceof CWebApplication) || $isAjax || $isFlash)
        return;

    
$viewFile=YII_PATH.DIRECTORY_SEPARATOR.'views'.DIRECTORY_SEPARATOR.$view.'.php';
    include(
$app->findLocalizedFile($viewFile,'en'));
}

Renders the view.