包 | system.logging |
---|---|
继承 | class CWebLogRoute » CLogRoute » CComponent |
子类 | CProfileLogRoute |
源自 | 1.0 |
版本 | $Id: CWebLogRoute.PHP 3001 2011-02-24 16:42:44Z alexander.makarow $ |
源码 |
CWebLogRoute显示日志内容到当前网页。
日志内容可以出现在当前页面的末尾, 或FireBug控制台窗口(如果showInFireBug 设置为true)。
日志内容可以出现在当前页面的末尾, 或FireBug控制台窗口(如果showInFireBug 设置为true)。
公共属性
属性 | 类型 | 描述 | 定义在 |
---|---|---|---|
categories | string | 被逗号或空格分隔的类别列表。默认为空,意味着所有类别。 | CLogRoute |
enabled | boolean | 是否启用这个日志路由。默认为true。 | CLogRoute |
filter | mixed | 附加过滤器 (例如 CLogFilter) 它被应用到日志信息。
这个属性的值被传递到 Yii::createComponent 创建一个日志过滤器对象。
结果,这可能是一个表示过滤器类名的字符串或一个表示过滤器配置的数组。
总之,日志过滤器类应该是 CLogFilter 或它的一个子类。 默认为null,意味着没有过滤器被使用。 |
CLogRoute |
ignoreAjaxInFireBug | boolean | 在Firebug中的Ajax调用的日志是否应该被忽略。默认为true。 这个选项要小心使用,,因为一个ajax调用返回所有的输出作为一个结果数据。 例如,如果ajax调用一个json格式的返回结果,任何来自日志记录器的输出将引起ajax调用失败。 | CWebLogRoute |
levels | string | 用逗号或空格分隔的等级列表。默认是空,意味着所有等级。 | CLogRoute |
logs | array | 到目前为止这个日志路由搜集的日志。 | CLogRoute |
showInFireBug | boolean | 是否此日期应该显示在FireBug而不是浏览器窗口。默认为false。 | CWebLogRoute |
公共方法
方法 | 描述 | 定义在 |
---|---|---|
__call() | 如果类中没有调的方法名,则调用这个方法。 | CComponent |
__get() | 返回一个属性值、一个事件处理程序列表或一个行为名称。 | CComponent |
__isset() | 检查一个属性是否为null。 | CComponent |
__set() | 设置一个组件的属性值。 | CComponent |
__unset() | 设置一个组件的属性为null。 | CComponent |
asa() | 返回这个名字的行为对象。 | CComponent |
attachBehavior() | 附加一个行为到组件。 | CComponent |
attachBehaviors() | 附加一个行为列表到组件。 | CComponent |
attachEventHandler() | 为事件附加一个事件处理程序。 | CComponent |
canGetProperty() | 确定属性是否可读。 | CComponent |
canSetProperty() | 确定属性是否可写。 | CComponent |
collectLogs() | 从日志记录器取回已过滤的日志信息以便进一步处理。 | CLogRoute |
detachBehavior() | 从组件中分离一个行为。 | CComponent |
detachBehaviors() | 从组件中分离所有行为。 | CComponent |
detachEventHandler() | 分离一个存在的事件处理程序。 | CComponent |
disableBehavior() | 禁用一个附加行为。 | CComponent |
disableBehaviors() | 禁用组件附加的所有行为。 | CComponent |
enableBehavior() | 启用一个附加行为。 | CComponent |
enableBehaviors() | 启用组件附加的所有行为。 | CComponent |
evaLuateExpression() | 计算一个PHP表达式,或根据组件上下文执行回调。 | CComponent |
getEventHandlers() | 返回一个事件的附加处理程序列表。 | CComponent |
hasEvent() | 确定一个事件是否定义。 | CComponent |
hasEventHandler() | 检查事件是否有附加的处理程序。 | CComponent |
hasProperty() | 确定属性是否被定义。 | CComponent |
init() | 初始化路由。 | CLogRoute |
processLogs() | 显示日志消息。 | CWebLogRoute |
raiseEvent() | 发起一个事件。 | CComponent |
受保护方法
方法 | 描述 | 定义在 |
---|---|---|
formatLogMessage() | 格式化一条日志信息已给定不同字段。 | CLogRoute |
render() | 渲染该视图。 | CWebLogRoute |
属性详细
ignoreAjaxInFireBug
属性
public boolean $ignoreAjaxInFireBug;
在Firebug中的Ajax调用的日志是否应该被忽略。默认为true。 这个选项要小心使用,,因为一个ajax调用返回所有的输出作为一个结果数据。 例如,如果ajax调用一个json格式的返回结果,任何来自日志记录器的输出将引起ajax调用失败。
showInFireBug
属性
public boolean $showInFireBug;
是否此日期应该显示在FireBug而不是浏览器窗口。默认为false。
方法详细
processLogs()
方法
public void processLogs(array $logs)
| ||
$logs | array | 日志消息列表 |
public function processLogs($logs)
{
$this->render('log',$logs);
}
显示日志消息。
render()
方法
protected void render(string $view, array $data)
| ||
$view | string | 视图名称(没有扩展名的文件名)。该文件假定位于framework/data/views下。 |
$data | array | 被传递到视图的数据 |
protected function render($view,$data)
{
$app=Yii::app();
$isAjax=$app->getRequest()->getIsAjaxRequest();
if($this->showInFireBug)
{
if($isAjax && $this->ignoreAjaxInFireBug)
return;
$view.='-firebug';
}
else if(!($app instanceof CWebApplication) || $isAjax)
return;
$viewFile=YII_PATH.DIRECTORY_SEPARATOR.'views'.DIRECTORY_SEPARATOR.$view.'.php';
include($app->findLocalizedFile($viewFile,'en'));
}
渲染该视图。