phpsafari / health-checks
在您的 Laravel 应用中进行健康检查
Requires
- php: >=7.0.0
- illuminate/support: ~5.4|~5.3
- vistik/typed-collections: ^2.0
Requires (Dev)
- mockery/mockery: ^0.9.9
- orchestra/testbench: ~3.0
- phpmd/phpmd: ^2.6
- phpunit/phpunit: ~6.0
- squizlabs/php_codesniffer: *
This package is not auto-updated.
Last update: 2024-09-12 07:37:57 UTC
README
使用此包将健康检查添加到您的 Laravel 应用程序中。
示例
安装
首先,使用 Composer 安装此包。
$ composer require phpsafari/health-checks
包安装后,将 ``PhpSafari\ServiceProvider\HealthCheckServiceProvider::class`` 添加到您的 ``config/app.php`` 文件中。
执行此操作后,可以通过运行以下命令将 health.php
配置文件发布到您的 config
文件夹:
$ php artisan vendor:publish --tag=health
用法
在 ``config/health.php`` 文件中配置所有可用的健康检查。默认情况下,此包已包含一些检查
CorrectEnvironment
将检查您的应用程序环境是否设置为production
DatabaseOnline
将检查您的数据库连接DatabaseUpToDate
将检查您的应用程序是否有尚未迁移的迁移DebugModeOff
将检查是否已关闭调试模式QueueProcessing
将检查队列是否正在运行且作业正在处理PathIsWritable
将检查提供的路径是否可写LogLevel
将检查日志级别是否设置为给定的值MaxRatioOf500Responses
将检查 500 响应的比率是否高于给定的阈值(最后 60 分钟)MaxResponseTimeAvg
将检查所有请求的平均响应时间是否高于给定的阈值(最后 60 分钟)
要运行应用程序的健康检查,请运行
$ php artisan health:check
您还可以使用 Laravel 的调度器来安排健康检查
$schedule->command('health:check')->hourly();
基于 URL 的健康检查
您也可以通过在浏览器或使用 Pingdom 等工具中点击 https://<APP_URL>/_health
URL 来运行健康检查。
注意: 在 ``config/health.php`` 文件中,可以通过将 ``route.enabled`` 设置为 ``false`` 来禁用此功能。
您可以通过访问 https://<APP_URL>/_health/stats
来获取所有统计信息,包括平均响应时间
创建您自己的健康检查
为了创建您自己的健康检查,您只需扩展 PhpSafari\Checks\HealthCheck
类并实现 run()
方法。
示例
class IsFriday extends PhpSafari\Checks\HealthCheck { public function run(): bool { return Carbon::now()->isFriday(); } }
然后向 config/health.php
中的检查列表添加 new IsFriday()
。
测试
$ phpunit tests/
安全
如果您发现任何安全相关的问题,请通过电子邮件
鸣谢
许可证
MIT 许可证 (MIT)。有关更多信息,请参阅 许可证文件。