prevplan / laravel-heartbeat-status
监控Laravel队列和定时任务状态
v1.0.1
2023-02-19 17:31 UTC
Requires
- php: ^8.1
- illuminate/contracts: ^9.0|^10.0
- spatie/laravel-package-tools: ^1.14.1
Requires (Dev)
- laravel/pint: ^1.5
- nunomaduro/collision: ^6.4
- nunomaduro/larastan: ^2.4.1
- orchestra/testbench: ^7.22
- pestphp/pest: ^1.22
- pestphp/pest-plugin-laravel: ^1.4
- phpstan/extension-installer: ^1.2
- phpstan/phpstan-deprecation-rules: ^1.1
- phpstan/phpstan-phpunit: ^1.3
- phpunit/phpunit: ^9.6
- spatie/laravel-ray: ^1.32
- dev-main
- v1.0.x-dev
- v1.0.1
- v1.0.0
- dev-renovate/pestphp-pest-3.x
- dev-renovate/pestphp-pest-plugin-laravel-3.x
- dev-dependabot/composer/nunomaduro/collision-tw-8.4
- dev-dependabot/composer/pestphp/pest-tw-2.35
- dev-dependabot/composer/laravel/pint-tw-1.17
- dev-dependabot/composer/orchestra/testbench-tw-9.2
- dev-dependabot/composer/phpunit/phpunit-tw-11.2
- dev-dependabot/composer/larastan/larastan-tw-2.9.8
- dev-dependabot/github_actions/dependabot/fetch-metadata-2.2.0
- dev-renovate/dependabot-fetch-metadata-2.x
- dev-dependabot/composer/spatie/laravel-ray-tw-1.37
- dev-dependabot/composer/phpstan/extension-installer-tw-1.4
- dev-dependabot/composer/phpstan/phpstan-deprecation-rules-tw-1.2
- dev-dependabot/composer/phpstan/phpstan-phpunit-tw-1.4
- dev-renovate/phpunit-phpunit-11.x
This package is auto-updated.
Last update: 2024-09-09 11:41:53 UTC
README
这是一个简单的包,用于监控Laravel网站的队列心跳和定时任务。
它提供了一个带有状态和200或503 HTTP状态的路由,可以被像 upptime 这样的在线状态服务监控。
已测试于Laravel 9 + 10。
安装
您可以通过composer安装此包
composer require prevplan/laravel-heartbeat-status
标准URL是 yoursite.com/heartbeat
。如果您想更改此URL,请在 routes/web.php
中添加以下内容:
Route::heartbeat_status('new-folder');
您可以选择使用以下命令发布配置文件:
php artisan vendor:publish --tag="laravel-heartbeat-status-config"
这是已发布配置文件的内容
return [ /* |-------------------------------------------------------------------------- | Heartbeat Interval Time |-------------------------------------------------------------------------- | | Time in minutes between queued heartbeatStatusCommand jobs. | */ 'heart-rate' => env('HEARTBEAT_HEART_RATE', 2), /* |-------------------------------------------------------------------------- | Heartbeat Emergency Time |-------------------------------------------------------------------------- | | Time in minutes to report failure/change to status 503, if the | last heartbeatStatusCommand is older than this value | */ 'emergency_time' => env('HEARTBEAT_EMERGENCY', 5), /* |-------------------------------------------------------------------------- | Schedule Leeway |-------------------------------------------------------------------------- | | Time for schedule running tolerance in seconds | */ 'schedule_leeway' => env('HEARTBEAT_SCHEDULE_LEEWAY', 10), /* |-------------------------------------------------------------------------- | Queue Leeway |-------------------------------------------------------------------------- | | Time for queue running tolerance in seconds | */ 'queue_leeway' => env('HEARTBEAT_QUEUE_LEEWAY', 20), ];
您还可以选择使用以下命令发布视图:
php artisan vendor:publish --tag="laravel-heartbeat-status-views"
使用方法
状态页面自动发布在您的网站 /heartbeat 或其他您更改的URL。
它会检查定时任务和队列的最后运行状态。
如果一切正常,它将响应200 HTTP状态。如果存在问题,将显示503 HTTP状态。
您可以使用upptime或其他您选择的在线状态服务监控此心跳页面。
测试
composer test
变更日志
请参阅 CHANGELOG 了解最近更改的详细信息。
贡献
请参阅 CONTRIBUTING 了解详细信息。
安全漏洞
请参阅 我们的安全策略 了解如何报告安全漏洞。
致谢
许可证
MIT许可证(MIT)。请参阅 许可证文件 了解更多详细信息。