mrtsec / laravel-health-check
Laravel的健康检查包
1.1.0
2024-09-13 15:21 UTC
Requires
- php: ^8.2
- laravel/framework: ^11.0
Requires (Dev)
- phpunit/phpunit: ^10.0
README
✅ 快速为您的Laravel应用程序设置健康检查页面
- 灵感来自Levelsio的Lex Friedman播客,并从All Goods复制
安装
您可以通过composer安装此包
composer require mrtsec/laravel-health-check
用法
安装后,您可以在/health
访问健康检查页面。
配置
发布配置文件
php artisan vendor:publish --provider="MRTSec\HealthCheck\HealthCheckServiceProvider"
这将创建一个位于您的config
目录下的health-check.php
文件。以下是配置选项的解释
<?php use MRTSec\HealthCheck\Checkers\DatabaseConnectionChecker; use MRTSec\HealthCheck\Checkers\DatabaseQueryChecker; use MRTSec\HealthCheck\Checkers\MigrationStatusChecker; use MRTSec\HealthCheck\Checkers\CacheChecker; use MRTSec\HealthCheck\Checkers\DiskSpaceChecker; use MRTSec\HealthCheck\Checkers\LogFileChecker; return [ // The route prefix for the health check page 'route_prefix' => 'health', // Middleware to apply to the health check route 'middleware' => ['web'], // Define your health checks here 'checkers' => [ 'Database Connection' => [ 'class' => DatabaseConnectionChecker::class, 'config' => [], ], [...] ], ];
自定义检查
您可以在checkers
数组中添加、删除或修改健康检查。每个检查由一个键值对定义,其中
- 键是健康检查页面上显示的检查名称。
- 值是一个包含以下内容的数组:
class
:检查器的完整类名。config
:针对该检查器的特定配置选项数组。
要添加自定义检查
- 创建一个新的检查器类,实现
MRTSec\HealthCheck\Contracts\HealthCheckerInterface
。 - 将您的检查器添加到配置文件中的
checkers
数组。
添加自定义检查的示例
use App\HealthCheckers\MyCustomServiceChecker; 'checkers' => [ // ... existing checkers ... 'My Custom Service' => [ 'class' => MyCustomServiceChecker::class, 'config' => [ // Any configuration your checker might need ], ], ],
可用检查器
- DatabaseConnectionChecker:验证数据库连接。
- DatabaseQueryChecker:执行简单的数据库查询。
- MigrationStatusChecker:检查所有迁移是否最新。
- CacheChecker:验证缓存系统是否正常工作。
- DiskSpaceChecker:检查可用磁盘空间。
- LogFileChecker:确保日志文件可写。
更新日志
有关最近更改的更多信息,请参阅更新日志。
许可证
MIT许可证(MIT)。有关更多信息,请参阅许可证文件。