bml/sentry-symfony-cron-monitor

Sentry 的 Symfony cron 监控集成 (http://getsentry.com)

1.0.4 2023-11-21 09:19 UTC

This package is auto-updated.

Last update: 2024-09-21 11:02:06 UTC


README

关于

此扩展允许您使用几乎任何计划任务提供程序配置 Sentry cron 监控。

设置

  1. 确保您已设置基本 sentry-symfony 扩展 https://github.com/getsentry/sentry-symfony
  2. composer require bml/sentry-symfony-cron-monitor
  3. 在您的 bundles.phpKernel 中启用 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 版本)