seantrane / profiler
为 Laravel 4 开发的分析器。这是 sebklaus/profiler 的定制版本,它继承自已退休的 juy/profiler。
Requires
- php: >=5.3.0
- illuminate/support: ~4
README
为 Laravel 4.0.x 和 4.1.x 提供的 PHP 5.3 分析器。
基于 sebklaus/profiler 以及其他...
后端基于 sorora/omni,前端基于 loic-sharma/profiler。一些功能受到 papajoker/profiler 的启发,一些功能由 juy/profiler 提供,并添加了我自己的改进。
继承
这是 juy/profiler 的延续。
它包括 Pull Requests #34 & #6。
不同主题
暗色
浅色
功能
- Laravel 环境信息,兼容 4.0.x 和 4.1.x
- 总内存使用量
- 当前控制器/操作信息
- 路由
- 日志事件
- 带有语法高亮的 SQL 查询日志
- 总执行时间
- 自定义“检查点”,更多详细信息请参阅 自定义计时器。
- 包含所有应用程序文件
- 传递给当前视图的所有变量
- 会话变量
- Laravel 配置设置
- Laravel 网络服务器错误日志
- Laravel 身份验证变量(如果使用)
- Sentry 身份验证变量(如果使用)
- 通过 URL 启用/禁用(在任意 URL 的末尾添加 /_profiler,例如 https:///folder/_profiler)
- 两种不同的主题;暗色和浅色。
安装
要将 Profiler 添加到您的 Laravel 应用程序中,请将以下行添加到您的 composer.json 文件中的 "require": { … }
"sebklaus/profiler" : "dev-master"
然后运行 composer update 或 composer install,如果是第一次安装包。
最后一步是将以下行添加到 app/config/app.php 文件中的 providers 数组末尾(或适当的环境 app.php)
'Sebklaus\Profiler\Providers\ProfilerServiceProvider',
配置
为了能够更改 Profiler 的默认设置,请运行以下命令发布配置文件:
php artisan config:publish sebklaus/profiler
要更改默认设置,请编辑 app/config/packages/sebklaus/profiler/config.php。
Profiler
将此选项设置为 FALSE 以禁用 Profiler 或 TRUE 以启用它。默认 NULL 使用 app/config/app.php(或适当的环境 app.php)中的 debug 设置来启用/禁用。
// config.php
'profiler' => NULL,
要能够通过 URL 启用/禁用 Profiler(在任意 URL 的末尾添加 /_profiler,例如 https:///folder/_profiler)),请将 urlToggle 选项设置为 TRUE
// config.php
'urlToggle' => FALSE,
您将被重定向回您发起请求的页面(例如 https:///folder)。
如果您在版本 v1.6.0 之前安装了 Profiler 并发布了配置设置,请将上述
urlToggle元素添加到/app/config/packages/sebklaus/profiler/config.php中的数组,或者再次运行php artisan config:publish sebklaus/profiler。运行php artisan config:publish sebklaus/profiler将替换配置文件,因此请确保您已恢复所需的设置。
// config.php
'urlTogglePassword' => \Hash::make((string) mt_rand(0, microtime(true))),
如果 profiler 是 NULL 或 FALSE,并且 urlToggle 是 TRUE,并且您的应用程序正在 production 环境中运行,您将需要输入为 urlTogglePassword 设置的密码以启用 Profiler。
在密码验证成功后,Profiler 将在会话期间保持启用状态。
将 (string) mt_rand(0, microtime(true)) 更改为您首选的密码以启用 Profiler。
如果您在版本 v1.7.0 之前安装了 Profiler 并发布了配置设置,请将上述
urlTogglePassword元素添加到/app/config/packages/sebklaus/profiler/config.php中的数组,或者再次运行php artisan config:publish sebklaus/profiler。运行php artisan config:publish sebklaus/profiler将替换配置文件,因此请确保您已恢复所需的设置。
如果您希望在运行时禁用 Profiler,请将以下代码添加到您的脚本中
Config::set('profiler::profiler', false);
您可以通过编辑 btns 数组的值来对 Profiler 的各种信息部分的顺序、禁用和调整标签和标题进行排序、禁用和调整
// config.php
'btns' => array(
'environment' => array('label'=>'ENV','title'=>'Environment'),
'memory' => array('label'=>'MEM','title'=>'Memory'),
'controller' => array('label'=>'CTRL','title'=>'Controller'),
'routes' => array('label'=>'ROUTES'),
'log' => array('label'=>'LOG'),
'sql' => array('label'=>'SQL'),
'checkpoints' => array('label'=>'TIME'),
'file' => array('label'=>'FILES'),
'view' => array('label'=>'VIEW'),
'session' => array('label'=>'SESSION'),
'server' => array('label'=>'SERVER'),
'config' => array('label'=>'CONFIG'),
'storage' => array('label'=>'LOGS','title'=>'Logs in storage'),
'auth' => array('label'=>'AUTH'),
'auth-sentry' => array('label'=>'AUTH')
),
通过更改 doc 的值,添加到您首选的(Laravel)文档的链接(或您想要的任何地方)。
该链接在打开的 Profiler 的左侧 Laravel 标志上激活。
// config.php
'doc'=>'https://laravel.net.cn/docs',
jQuery
Profiler 使用 jQuery,如果检测不到,则会自动下载和包含。
用法
自定义计时器
要开始计时器,您只需这样做
Profiler::start('my timer key');
要结束计时器,只需像这样调用结束函数即可
Profiler::end('my timer key');
记录
Profiler 利用 Laravel 内置的日志系统并捕获记录的事件。要记录事件,您可以使用(就像使用 Laravel 一样)以下任何一种
Log::debug('Your message here');
Log::info('Your message here');
Log::notice('Your message here');
Log::warning('Your message here');
Log::error('Your message here');
Log::critical('Your message here');
Log::alert('Your message here');
Log::emergency('Your message here');
这些在 Profiler 的 Log 部分中按颜色编码 - 颜色可能会在未来更准确地反映日志类型。