状态 草稿
Todo Needs to be expanded with examples maybe
官方最后更新时间 2008/08/27 06:38

分析库(Profiler Library)

为调试和优化的目的分析有用的信息到当前页面的底部。

  • Benchmarks: 使用基准测试类(Benchmark Class)的时间和内存使用率的基准。
  • Database 查询:通过数据库库(Database Library)执行的 SQL 语句花费的时间和所影响的行数。
  • POST Data: 所有提交当前页的 POST 数据的数据名和数值。
  • Session Data: 如果使用了 Session 库则显示当前 session 的所有数据。
  • Cookie Data: 搜索当前域名所有的 cookies 的名称和值。

如何使用

加载库以开启分析输出到当前页面:

$this->profiler = new Profiler;

当加载了分析库,它自身会添加到 system.display 事件中,当需要显示和附件输出页面底部时调用 render() 方法。

如何关闭

使有下面的语句就会关闭自动输出显示。

$this->profiler->disable()

这个也是非常有用的当为某些页面自动加载分析显示被关闭。

获得输出

在为 render() 参数设置为 TRUE 时在页面执行期间任何时间可能会把显示输出返回一个字符串。

$output = $this->profiler->render(TRUE)

注意:这可能会停止当前所有的基准运行。仅基准和查询以及运行直到在输出中调用显示。

配置分析项

编辑 config/profiler.php 配置分析设置项(POST,Cookie,Session,数据库,基准)。

这变化由 application/config/profiler.php 构成,以便只适用于特定的应用。

/**
 * 显示一切除了数据库查询。(其他想默认为 TRUE,从系统分析配置读取)
 */
$config['database'] = FALSE;

完整的 profiler.php 文件:

<?php defined('SYSPATH') or die('No direct script access.');
 
$config['post'] = FALSE;
$config['cookie'] = FALSE;
$config['session'] = FALSE;
$config['database'] = FALSE;
$config['benchmarks'] = TRUE;

记住设置上面配置项时需要至少一项为 TRUE,否则分析库会在死在追踪错误里。

libraries/profiler.txt · 最后更改: 2008/11/05 01:20 由 icyleaf