bml / sentry-symfony-cron-monitor
Sentry 的 Symfony cron 监控集成 (http://getsentry.com)
Requires
- php: ^7.2||^8.0
- nyholm/psr7: ^1.8
- sentry/sentry-symfony: 4.*
- symfony/dependency-injection: ^4.4.20||^5.0.11||^6.0
- symfony/http-client: ^5.4
- symfony/http-kernel: ^4.4.20||^5.0.11||^6.0
Requires (Dev)
- friendsofphp/php-cs-fixer: ^2.19||<=3.16.0
- phpunit/phpunit: ^8.5.14||^9.3.9
- symfony/framework-bundle: ^4.4.20||^5.0.11||^6.0
- symfony/phpunit-bridge: ^5.2.6||^6.0
- symfony/yaml: ^4.4.20||^5.0.11||^6.0
README
关于
此扩展允许您使用几乎任何计划任务提供程序配置 Sentry cron 监控。
设置
- 确保您已设置基本 sentry-symfony 扩展 https://github.com/getsentry/sentry-symfony
composer require bml/sentry-symfony-cron-monitor
- 在您的
bundles.php
或Kernel
中启用SentryCronMonitorBundle
(它可能已被 SF flex 自动添加)
使用方法
将 cron 监控短标识符和计划添加到您的命令参数。参考。
--cron-monitor-slug=CRON-MONITOR-SLUG if command should be monitored then pass cron monitor slug --cron-monitor-schedule=CRON-MONITOR-SCHEDULE if command should be monitored then pass cron monitor schedule --cron-monitor-max-time=CRON-MONITOR-MAX-TIME if command should be monitored then pass cron monitor max execution time --cron-monitor-check-margin=CRON-MONITOR-CHECK-MARGIN if command should be monitored then pass cron monitor check margin
在 crontab 中的示例用法
0 0 * * * user /app/bin/console app:statistics:update --cron-monitor-slug=statistics_update_midnight --cron-monitor-schedule "0 0 * * *"
可选地,您还可以设置最大运行时间和检查边缘(参见 https://docs.sentry.io/platforms/php/crons/for 参考)
0 0 * * * user /app/bin/console app:statistics:update --cron-monitor-slug=statistics_update_midnight --cron-monitor-schedule "0 0 * * *" --cron-monitor-max-time=5 --cron-monitor-check-margin=2
Crontab 辅助命令
bml:sentry-symfony-cron-monitor:add-schedule-argument-to-crontab
命令将获取 crontab 文件路径,并将 --cron-monitor-schedule=THE_SCHEDULE
添加到包含 --cron-monitor-slug
的行。
这样,crontab 文件可以更简洁,因为您不需要保留 --cron-monitor-schedule=THE_SCHEDULE
。相反,它会在部署/构建期间自动添加。只需在您的 ci/cd 中使用此命令即可。
开发
设置
运行 .docker/bin/setup-dev.sh {PHP_VERSION}
例如: .docker/bin/setup-dev.sh 8.1
默认 PHP 版本为 7.2 .docker/bin/setup-dev.sh
测试
运行 .docker/bin/run-tests.sh
要获得 xdebug 的体验,请运行 .docker/bin/run-tests-xdebug.sh
要针对特定 PHP 版本运行测试,请使用
.docker/bin/setup-dev.sh 7.4
.docker/bin/run-tests.sh
php-cs-fixer
运行 .docker/bin/run-php-cs-fixer.sh
请注意,此命令内部运行 .docker/bin/setup-dev.sh 8.1
(更改容器 PHP 版本)