lezhnev74 / http-analyzer-laravel-adapter
Laravel 包,用于跟踪每个 HTTP 请求/响应并将它们发送到 apideveloper.io
Requires
- php: >=5.6.4
- guzzlehttp/guzzle: ~6.0|~5.0
- illuminate/support: ~5.4|~5.5|~5.6
Requires (Dev)
- orchestra/testbench: ^3.4|^3.5|^3.6
- phpunit/phpunit: ~5.0|~6.0|~7.0
This package is auto-updated.
Last update: 2022-02-01 13:08:10 UTC
README
Laravel 包用于将 HTTP 请求输出到您的仪表板
Laravel API 适配器,用于跟踪每个处理的应用程序 HTTP 请求。
安装
版本兼容性
Laravel 版本 | 包版本 | Composer 命令 |
---|---|---|
5.3.x | 3.0.x | composer require "lezhnev74/apideveloperio-laravel=~3.0" |
5.4.x, 5.5.x, 5.6.x | 4.0.x | composer require "lezhnev74/apideveloperio-laravel=~4.0" |
步骤
1. 安装包
composer require "lezhnev74/apideveloperio-laravel=~3.0"
2. 将服务提供者添加到您的 config/app.php
'providers' => [ ... '\HttpAnalyzer\Laravel\HttpAnalyzerServiceProvider' ],
3. 运行此命令以将配置文件发布到您的 /config
文件夹。
php artisan vendor:publish --provider="HttpAnalyzer\Laravel\HttpAnalyzerServiceProvider"
4. 设置 cron 命令
为了将记录的请求输出到仪表板。打开您的 app/Console/Kernel.php
并将类添加到命令列表中。
#app/Console/Kernel.php .... protected $commands = [ ... '\HttpAnalyzer\Laravel\DumpRecordedRequests', ]; ... protected function schedule(Schedule $schedule) { // you can set how often you want it to dump your requests to the Dashboard // every minute is the most frequent mode $schedule->command('http_analyzer:dump')->everyMinute(); }
5. 完成!
配置
发布后,配置文件将位于 config/http_analyzer.php
并自行说明。唯一需要的配置是将您的 API 密钥放入 api_key
字段。
常见问题解答
它是如何工作的?
它挂钩到 Laravel 应用程序并记录请求、响应和其他数据,您将在仪表板中看到这些数据。
- 传入请求
- 响应
- 数据库查询
- 日志条目
您可以选择将哪些信息发送到仪表板。
您已设置的 http_analyzer:dump
命令将发送所有记录的请求到您的仪表板。
我在屏幕上没有看到任何错误,但在我的仪表板中看不到任何请求。为什么?
此包设计为静默失败。如果在记录您的请求时出现问题,插件不会中断您的请求生命周期。打开您的日志并查看包是否在其中附加了任何关键信息。
同时检查 tmp 存储文件夹中是否有任何过期的转储文件。
建议
如果用户IP总是127.0.0.1
这种情况是由于某些Symfony的Request问题引起的。尝试使用这个包 - https://github.com/fideloper/TrustedProxy。应该能解决问题。
最好的方法是什么来跟踪每个请求?
当某人提到特定的请求/响应应用周期时,最好知道它的唯一ID。知道了这个ID,你就可以很容易地在仪表板中找到它。只需添加一个中间件(例如这个 https://github.com/softonic/laravel-middleware-request-id),它将为你的应用提供的每个响应附加一个唯一ID。
🏆 贡献者
- Owen Melbourne - 改进了日期转换
- Mark Topper - 增加了Laravel 5.6的支持
支持
只需在此处打开一个新问题并获取帮助。