lezhnev74 / apideveloperio-laravel

Laravel 包,用于跟踪每个 HTTP 请求/响应并将它们发送到 apideveloper.io

4.0.7 2018-02-09 12:15 UTC

README

Packagist GitHub license Build Status

Laravel 包,用于将 HTTP 请求输出到您的仪表板

Laravel API 适配器,用于跟踪每个应用程序处理的 HTTP 请求。

安装

版本兼容性

步骤

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 请求问题导致的。请尝试使用此包 - https://github.com/fideloper/TrustedProxy。应该可以解决问题。

跟踪每个请求的最佳方式是什么?

当某人提到特定的请求/响应应用程序周期时,最好知道它的唯一 ID。知道了它,您就可以轻松地在仪表板中找到它。只需添加一个中间件(如这个https://github.com/softonic/laravel-middleware-request-id),它将为应用程序提供的每个响应附加一个唯一 ID。

🏆 贡献者

支持

只需在此处打开一个新的问题并获取帮助。