roman444uk/laravel-apilogger

一个用于查看API日志的小型Laravel包,可用于调试。

1.0.7 2024-02-03 22:24 UTC

This package is not auto-updated.

Last update: 2024-09-29 20:39:50 UTC


README

这是一个小型的包,可以帮助调试API日志。它可以记录请求方法、URL、持续时间、请求负载、获取的模型、控制器和方法。

screenshot

安装

  1. 通过Composer安装包
composer require awt/apilogger @dev

用法

  1. Laravel 5.5及以上版本使用包自动发现,因此不需要您手动添加ServiceProvider。如果您使用的是Laravel的较低版本,您必须在您的app.php文件中注册它
RMN\Providers\ApiLogServiceProvider::class
  1. 使用以下命令发布配置文件
php artisan vendor:publish --tag=config --provider="RMN\Providers\ApiLogServiceProvider"

配置文件名为apilogs.php。当前支持的驱动程序是dbfile

默认情况下,记录器将使用file来记录数据。但如果你想使用数据库进行记录,可以通过以下命令迁移表

您还可以配置不应记录的字段,如密码、机密等。

如果您只是使用文件驱动,则不需要迁移

php artisan migrate
  1. 将名为apilogger的中介件添加到您想要记录数据的路由或控制器中
//in route.php or web.php
Route::middleware('apilogger')->post('/test',function(){
    return response()->json("test");
});
  1. 仪表板可以通过yourdomain.com/apilogs访问

清除日志

您可以使用以下命令永久清除日志。

php artisan apilog:clear

实现自己的日志驱动

  1. 您的驱动类必须实现ApiLoggerInterface以保存、检索和删除日志。
  2. 您的驱动类可以继承AbstractLogger类,它提供了如logData和mapArrayToModel等有用的方法。
  3. 用您的新类名代替dbfile作为驱动。例如:\App\Apilogs\CustomLogger::class

安全

添加认证

在config/apilog.php中,您有'route'选项,您可以更改前缀并添加认证中介件或其他中介件

'route'          => [
    'prefix'     => 'apilogs',
    'middleware' => null,//Can be change to ['auth'] or others
]

如果您发现任何与安全相关的问题,请通过电子邮件agwinthant@gmail.com联系,而不是使用问题跟踪器。

许可证

MIT许可证(MIT)。有关更多信息,请参阅许可证文件