chris-ware/ pulse-health-check
结合Laravel Pulse和Spatie的Health Checks的功能
1.0
2023-12-12 23:30 UTC
Requires
- php: ^8.1
- illuminate/contracts: ^10.0
- laravel/pulse: ^1.0@beta
- spatie/laravel-health: ^1.23
- spatie/laravel-package-tools: ^1.14.0
Requires (Dev)
- larastan/larastan: ^2.0.1
- laravel/pint: ^1.0
- nunomaduro/collision: ^7.8
- orchestra/testbench: ^8.8
- pestphp/pest: ^2.20
- pestphp/pest-plugin-arch: ^2.0
- pestphp/pest-plugin-laravel: ^2.0
- phpstan/extension-installer: ^1.1
- phpstan/phpstan-deprecation-rules: ^1.0
- phpstan/phpstan-phpunit: ^1.0
- spatie/laravel-ray: ^1.26
README
结合Laravel Pulse和Spatie的Health Checks的功能
安装
您可以通过composer安装此包
composer require chris-ware/pulse-health-check
用法
缓存命中率检查
此检查会在缓存命中率达到一定百分比阈值时发出警告或失败。默认情况下,10%的命中率将失败,25%的命中率将发出警告。
use ChrisWare\PulseHealthCheck\Checks\PulseCacheHitRatioCheck; PulseCacheHitRatioCheck::new();
配置失败和警告级别
use ChrisWare\PulseHealthCheck\Checks\PulseCacheHitRatioCheck; PulseCacheHitRatioCheck::new()->failWhenSizeRatioBelow(25)->warnWhenSizeRatioBelow(50);
通用检查
此通用检查将适应Pulse聚合的多数基本场景。每个检查都必须定义一个for
方法,以便它知道使用哪种聚合类型。
慢查询聚合的示例
use ChrisWare\PulseHealthCheck\Checks\PulseCheck; PulseCheck::new() ->for('slow_query') ->failWhenAbove(5) ->warnWhenAbove(3) ->interval(\Carbon\CarbonInterval::minutes(5));
用户请求聚合的示例
use ChrisWare\PulseHealthCheck\Checks\PulseCheck; PulseCheck::new() ->for('user_request') ->aggregate('count') ->failWhenAbove(500) ->warnWhenAbove(300) ->interval(\Carbon\CarbonInterval::minutes(5));
可用方法
for:确定要使用的聚合类型
aggregate:确定要使用的聚合值(默认为max
)
failWhenAbove:设置值,如果大于或等于则失败
failWhenBelow:设置值,如果小于或等于则失败
warnWhenAbove:设置值,如果大于或等于则发出警告
warnWhenBelow:设置值,如果小于或等于则发出警告
interval:用于评估聚合的CarbonInterval(默认为1小时)
测试
composer test
变更日志
请参阅CHANGELOG了解最近更改的更多信息。
鸣谢
许可
MIT许可(MIT)。有关更多信息,请参阅许可文件。