getsentry / getsentry/sentry-ruby

Enable setting Cron monitor name

Aperta
#2,290 0 commenti 0 reazioni 1 assegnatario Rivendicata da @sl0thentr0py Vedi su GitHub
Crons Improvement Ruby
Lingua principale
Ruby
Stelle
987
Fork
541
Merge medio
17h 40m
PR unite (30g)
19

Descrizione

Cron monitors created via Ruby use the slug as the name, and there isn't a way to programatically set the name.

There should be a way to set the name in `sentry_monitor_check_ins` via the `monitor_config`.

And ideally, the name should be the name of the class by default (rather than the slug)

**Why do you think it's beneficial to most of the users**

Slugs are much less readable, because they're only lower case, than the job name.

We've gone through and updated the Cron monitor names to be the job names in Sentry - but having to do that seems unreasonable.

**Possible implementation**

I don't know what the server API is like, but maybe this can just be added to the `Sentry::Cron::MonitorCheckIns` `sentry_monitor_check_ins` method?

```ruby
def sentry_monitor_check_ins(slug: nil, monitor_config: nil)
name = monitor_config&.dig(:name) || self.name

if monitor_config && Sentry.configuration
cron_config = Sentry.configuration.cron
monitor_config.checkin_margin ||= cron_config.default_checkin_margin
monitor_config.max_runtime ||= cron_config.default_max_runtime
monitor_config.timezone ||= cron_config.default_timezone
end

@sentry_monitor_slug = slug
@sentry_monitor_name = name
@sentry_monitor_config = monitor_config

prepend Patch
end
```

Guida per i contributori

Apri la guida per i contributori

Valutazione

Questa issue non è ancora stata valutata.

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.