academe / laravel-queue-monitor
一个用于监控队列任务的 Laravel 扩展包。
2.0.2
2019-12-20 00:42 UTC
This package is auto-updated.
Last update: 2024-09-20 11:21:45 UTC
README
Laravel Queue Monitor
一个用于监控队列任务的 Laravel 扩展包。将有关 队列任务 的某些信息记录到数据库表中
- 任务包括开始和结束时间戳的经过时间
- 如果使用
--tries
,则每个任务的尝试次数 - 如果任务失败,则提供的异常(如果有的话)
- 自定义数据(可选)
需求
- Laravel 5.5+
这是 gilbitron/laravel-queue-monitor 的一个分支,我有一些特定的项目需求,但没有时间为每个更改生成单独的 PR,也没有保证它们会被接受。所以请根据您的需求选择分支 :-)
安装
安装 composer 包
composer require academe/laravel-queue-monitor
在 config/app.php
中添加服务提供者(对于 Laravel 5.5+,此步骤不是必需的)
/* * Package Service Providers... */ Academe\LaravelQueueMonitor\LaravelQueueMonitorProvider::class,
运行迁移以设置 queue_monitor
数据库表
php artisan migrate
使用方法
所有队列任务现在将被监控,并将结果存储到 queue_monitor
数据库表中。不需要其他配置。
自定义数据
要将自定义数据与队列监控结果一起保存,您需要在您的任务中包含 QueueMonitorData
特性,并使用 saveQueueMonitorData()
方法。例如
<?php namespace App\Jobs; use Academe\LaravelQueueMonitor\Jobs\QueueMonitorData; use Illuminate\Bus\Queueable; use Illuminate\Queue\SerializesModels; use Illuminate\Queue\InteractsWithQueue; use Illuminate\Contracts\Queue\ShouldQueue; class ExampleJob implements ShouldQueue { use InteractsWithQueue, Queueable, SerializesModels, QueueMonitorData; protected $results = 0; /** * Create a new job instance. * * @return void */ public function __construct() { // } /** * Execute the job. * * @return void */ public function handle() { $this->results = rand(1, 100); $this->saveQueueMonitorData([ 'results' => $this->results, ]); // ... } }
致谢
Laravel Queue Monitor 由 Gilbert Pellegrom 从 Dev7studios 创建。在 MIT 许可下发布。