承接 gocpa/laravel-request-time-logger 相关项目开发

从需求分析到上线部署,全程专人跟进,保证项目质量与交付效率

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

gocpa/laravel-request-time-logger

最新稳定版本:1.0.2

Composer 安装命令:

composer require gocpa/laravel-request-time-logger

包简介

Package for logging request time

README 文档

README

Установка

composer require gocpa/laravel-request-time-logger
php artisan vendor:publish --provider="GoCPA\LaravelRequestTimeLogger\ServiceProvider" --tag=config

Конфигурация

# Сбор логов о долгих HTTP/DB запросах
GOCPA_REQUEST_TIME_LOGGER_LOG_CHANNEL=default
GOCPA_REQUEST_TIME_LOGGER_DATABASE_QUERY_SECONDS=2
GOCPA_REQUEST_TIME_LOGGER_SCRIPT_EXECUTION_SECONDS=4

Сбор данных

Для начала сбора данных по медленным запросам - необходимо подключить middleware.

// ВНИМАНИЕ! Нужно использовать только один вариант подключения сбора данных, иначе записи в лог будут дублироваться для каждого запроса

// 1. Глобально для всех роутов - пропишите в секцию $middleware
protected $middleware = [
    // ...
    \GoCPA\LaravelRequestTimeLogger\LongQueryLoggerMiddleware::class,
    \GoCPA\LaravelRequestTimeLogger\RequestTimeLoggerMiddleware::class,
];

// 2. Только для определенной группы роутов - пропишите в секцию $middlewareGroups
protected $middlewareGroups = [
    'web' => [
        // ...
        \GoCPA\LaravelRequestTimeLogger\LongQueryLoggerMiddleware::class,
        \GoCPA\LaravelRequestTimeLogger\RequestTimeLoggerMiddleware::class,
    ],
];

// 3. Только для определенного роута - пропишите в секцию $middlewareAliases
protected $middlewareAliases = [
    // ...
    'log-long-queries' => \GoCPA\LaravelRequestTimeLogger\LongQueryLoggerMiddleware::class,
    'log-long-requests' => \GoCPA\LaravelRequestTimeLogger\RequestTimeLoggerMiddleware::class,
];

Проверка:

Перейдите на любой долгий роут, если таких нет, можно создать новый со следующим кодом, перейдите на него, проверьте наличие строчек в файле логов. Удалите тестовый роут

Route::middleware(['log-long-queries', 'log-long-requests'])->get('long-route-test', function () {
    \Illuminate\Support\Facades\DB::select('SELECT SLEEP(3)');
    sleep(2);
    return 'ok';
});

统计信息

  • 总下载量: 2.56k
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 1
  • 点击次数: 1
  • 依赖项目数: 0
  • 推荐数: 0

GitHub 信息

  • Stars: 1
  • Watchers: 0
  • Forks: 0
  • 开发语言: PHP

其他信息

  • 授权协议: MIT
  • 更新时间: 2024-04-16