foolz / profiler
基于monolog的性能分析器
Requires
- php: >=5.4.0
- monolog/monolog: ~1.9
This package is auto-updated.
Last update: 2024-09-21 06:11:06 UTC
README
此软件包提供了一个简单易用的性能分析器,具有monolog的强大功能。
要求
- PHP 5.4 或更高版本
- Monolog(由composer自动安装)
安装
以任何composer软件包的方式安装。
设置
您应该在代码的早期阶段加载性能分析器。
<?php $profiler = new Profiler(); $profiler->enable();
直到启用运行之前,没有请求会被记录。您可以设置monolog处理器以有自定义输出选项
<?php $profiler = new Profiler(); $profiler->pushHandler(new ChromePHPHandler()); $profiler->enable(); $profiler->log("Profiler enabled");
HTML输出
在插入HTML性能分析面板之前,请记住检查您是否有text/html
请求。
您可以使用$profiler->getHtml()
在任何时候打印当前日志。
如果您使用框架,您可能有一个$response
变量来处理发送到客户端的数据。为了将性能分析器放在页面底部,您可能尝试以下类似操作。
<?php $content = explode('</body>', $response->getContent()); if (count($content) == 2) { $response->setContent($content[0].$this->profiler->getHtml().$content[1]); } $response->send();
方法
-
pushHandler()
与Monolog的pushHandler()函数类似,允许向记录器添加日志处理器 -
getLogger()
返回Monolog记录器,以便可以自定义 -
enable()
启用性能分析器并打印自脚本开始以来经过的时间 -
isEnabled()
告知性能分析器是否已启用 -
log($string, $context)
记录自脚本开始以来的经过时间以及总内存使用情况。$string变量允许设置一个字符串以标识日志中的条目。$context变量允许向条目添加任意数据 -
logMem($string, $variable, $context)
记录$variable
的内存使用情况。在检查时,将创建一个$variable的克隆(这是不可避免的),因此请谨慎使用。对于其余部分,它的工作方式类似于log()
-
logStart($string, $context)
与log()
类似,但会启动一个计时器 -
logStop($string, $context)
与log()
类似,但如果在logStart()
之后调用,则$context
将包含经过时间 -
getHtml()
返回已记录条目的HTML表示形式