`
hudeyong926
  • 浏览: 2031601 次
  • 来自: 武汉
社区版块
存档分类
最新评论

Yii 日志与调试 debugtoolbar

 
阅读更多

1系统自带调试

index.php开启调试模式

// remove the following lines when in production mode
defined('YII_DEBUG') or define('YII_DEBUG',true);
// specify how many levels of call stack should be shown in each log message
defined('YII_TRACE_LEVEL') or define('YII_TRACE_LEVEL',3);
//app use time
//defined('YII_BEGIN_TIME') or define('YII_BEGIN_TIME',microtime(true));

 main.php

'errorHandler'=>array(
	// use 'site/error' action to display errors
    'errorAction'=>'site/error',
),
'log'=>array(
    'class'=>'CLogRouter',
    'routes'=>array(
		array(
		    'class'=>'CFileLogRoute',
		    'levels'=>'error, warning',
		),
		// 下面显示页面日志
		array(
		    'class'=>'CWebLogRoute',
		    'levels'=>'trace',     //级别为trace
		    'categories'=>'system.db.*' //只显示关于数据库信息,包括数据库连接,数据库执行语句
		),		
    ),
),

YII_TRACE_LEVEL的数字越大,信息越清楚

 

Yii 提供了一个灵活可扩展的日志功能。记录的日志可以通过日志级别和信息分类进行归类。通过使用级别和分类过滤器,所选的信息还可以进一步路由到不同的目的地,例如一个文件,Email,浏览器窗口等。

 在Yii 中有下列几种日志路由可用:
CDbLogRoute: 将信息保存到数据库的表中。
CEmailLogRoute: 发送信息到指定的 Email 地址。
CFileLogRoute: 保存信息到应用程序 runtime 目录中的一个文件中。
CWebLogRoute: 将 信息 显示在当前页面的底部。
CProfileLogRoute: 在页面的底部显示概述(profiling)信息。

 

YII中日志的基本使用:
可以通过YII提供的Yii::log和Yii::trace进行日志信息的输出,两者的区别看看定义就知道了。
函数定义

Yii::log($message, $level, $category);
Yii::trace($message, $category);

$msg:你要输出的日志信息
$category:日志信息所属分类
$level:日志信息的级别:

const LEVEL_TRACE='trace';用于调试环境,追踪程序执行流程
const LEVEL_WARNING='warning';警告信息
const LEVEL_ERROR='error';致命错误信息
const LEVEL_INFO='info';普通提示信息
const LEVEL_PROFILE='profile';性能调试信息

YII::log基本使用例子

<?php
 class DefaultController extends Controller
 {
     public function actionCache ()
     {
         $category='system.testmod.defaultController';
         $level=CLogger::LEVEL_INFO;
         $msg='action begin ';
         Yii::log($msg,$level,$category);

根据不同功能模块定制log日志

array(
    'components' => array(
        'log' => array(
            'class' => 'CLogRouter',
            'routes' => array(
                array( //数据库日志记录到db.log中
                    'class' => 'CFileLogRoute',
                    'categories' => 'db.*',
                    'logFile' => 'db.log',
                ),
                array( //所有错误日志记录到error.log中
                    'class' => 'CFileLogRoute',
                    'levels' => 'error',
                    'logFile' => 'error.log',
                ),
                array( //所有用户中心错误日志发邮件
                    'class' => 'CEmailLogRoute',
                    'categories' => 'uc.*',
                    'levels' => 'error',
                    'emails' => 'admin@example.com',
                ),
                array( //开发过程中所有日志直接页面打印,这样不需要登录服务器看日志了
                    'class' => 'CWebLogRoute',
                    'levels' => 'trace,info,profile,warning,error',
                ),
            ),
        ),
    ),
),

2调试插件

debugtoolbar http://www.yiiframework.com/extension/yiidebugtb

 点击YII可以折叠

 

 

 

  • 大小: 27.8 KB
分享到:
评论

相关推荐

    yii2使用SeasLog写日志

    本篇文章将详细介绍如何在Yii2框架中使用SeasLog扩展来替换原生的日志模块,以提高写日志的效率。 首先,让我们了解SeasLog。SeasLog是一款高性能、易用的日志库,适用于PHP环境。它支持多级别日志、自定义日志格式...

    Yii框架调试辅助扩展

    4. **会话和cookie信息**:开发者可以查看当前请求的会话数据和cookie值,这对于理解和调试与用户状态相关的逻辑非常有帮助。 5. **路由信息**:展示当前请求的路由处理过程,包括控制器、操作和参数,有助于理解...

    yii框架的debug调试工具

    Yii框架的Debug调试工具是开发过程中非常实用的一个组件,它为开发者提供了详细的性能分析和错误追踪功能。在PHP编程环境中,Yii框架以其高效、灵活和易于扩展的特点深受开发者喜爱。而Yii Debug Toolbar则是该框架...

    整合日志,权限,方便高效开发的yii项目

    开发者可能已经设置好了不同的日志目标,如文件、数据库、邮件等,以便记录不同级别的信息(如错误、警告、调试等),这对于调试和问题追踪至关重要。 2. **权限管理**:Yii2提供了一个强大的RBAC(基于角色的访问...

    YII Framework框架教程之日志用法详解

    两者的区别在于`Yii::trace`在非调试模式下不会输出日志,而`Yii::log`在任何情况下都会记录信息。 使用`Yii::log`或`Yii::trace`记录日志时,你可以指定消息内容、消息级别和消息类别。消息级别是区分不同类型日志...

    yii2-debug:Yii 1.1的调试面板(从Yii 2移植)

    yii2-调试 Yii 1.1的调试面板(从Yii 2移植)。 安装 该扩展名可在packagist.org上找到,并且可以通过以下命令通过composer安装: composer require --dev zhuravljov/yii2-debug 。 如果要手动安装此扩展,只需将...

    yii2-telegram-log:Yii 2的电报日志目标

    Yii 2的电报日志目标 Yii 2的日志目标。 安装 安装此扩展的首选方法是通过 。 无论运行 composer require " sergeymakinen/yii2-telegram-log:^2.0 " 或添加 " sergeymakinen/yii2-telegram-log " : " ^2.0 " 到...

    Yii调试查看执行SQL语句的方法

    通过设置`categories`为`'system.db.*'`,我们可以确保只显示与数据库相关的日志,包括数据库连接和执行的SQL语句。 在配置完成并重启应用后,当你访问网页时,如果触发了`trace`级别的日志,将会在页面底部看到一...

    yii2swoole让yii2运行在swoole上

    1. **Yii2框架与Swoole的集成**:Yii2swoole是将Yii2框架与Swoole进行整合的扩展,允许Yii2应用利用Swoole的高性能特性。它提供了在Swoole环境下运行Yii2的基础设施,包括请求处理、事件监听、session和cookie管理等...

    Yii框架日志记录Logging操作示例

    Yii框架提供了强大的日志记录功能,下面将详细介绍Yii框架日志记录Logging的操作示例以及相关配置和使用技巧。 首先,Yii框架的日志记录可以通过多种方式实现,官方文档中提供了丰富的API调用方法。例如: 1. Yii:...

    yii-debug-toolbar

    6. **日志**:显示Yii的日志消息,便于理解程序运行过程中的错误和警告。 7. **模板**:显示视图渲染时间和模板使用的变量。 8. **Gii**:Yii的代码生成工具,允许快速生成CRUD操作或其他基础代码。 使用Yii Debug ...

    Yii框架实现记录日志到自定义文件的方法

    本文实例讲述了Yii框架实现记录日志到自定义文件的方法。分享给大家供大家参考,具体如下: 默认情况下,Yii::log($msg, $level, $category)会把日志记录到runtime/application.log文件中 日志格式如下: [时间] – ...

    yii1.1.10 开发包(包含yii权威指南以及yii博客例子讲解)

    10. **错误和日志管理**:Yii 提供了详细的错误报告和日志记录功能,有助于开发者追踪和修复问题。 在提供的“yii权威指南”中,你将找到关于Yii框架全面而深入的介绍,包括如何安装和配置环境,创建项目,理解框架...

    Yii权威指南思维导图

    Active Record允许开发者直接与数据库中的表进行交互,通过对象化的操作方式大大简化了数据操作。另外,Yii还提供了CDbConnection和CDbCommand类来支持更底层的SQL操作。 路由管理是Yii框架的重要特性,它决定了URL...

    Yii框架学习笔记.pdf

    index.php脚本会设置两个关键常量YII_DEBUG和YII_TRACE_LEVEL,分别用于控制调试模式的开启和调试日志的堆栈层级。通过Yii::createWebApplication($config)方法创建Web应用实例,并通过run()方法启动运行。 2. **类...

    yii2 通用后台系统

    除此之外,Yii2 后台系统可能还包括了日志记录、错误处理、API接口开发、邮件发送等功能。Yii2 的 `yii\log` 组件可以帮助记录和分析系统运行中的事件和异常,而 `yii\swiftmailer` 可以方便地发送邮件通知。API接口...

    Yii2.0视频教程

    #### 七、调试与日志 - **调试工具**:Yii提供了多种调试工具,帮助开发者快速定位问题。 - Profiler:用于监控程序运行时的性能指标。 - Debugger:提供代码跟踪和断点调试功能。 - **日志记录**:通过配置日志...

    Yii2.0 视频教程

    - **日志记录**:学会使用 Yii2.0 的日志记录功能,以便于调试和维护应用程序。 - **错误处理与异常管理**:掌握 Yii2.0 的错误处理机制,提高应用的健壮性。 - **安全特性**:深入了解 Yii2.0 的安全特性,例如...

Global site tag (gtag.js) - Google Analytics