Skip to content

docs(java): Document Quartz monitor config upsert - #19777

Merged
wedamija merged 12 commits into
masterfrom
danf/quartz-cron-config-docs
Nov 11, 2026
Merged

wedamija merged 12 commits into
masterfrom
danf/quartz-cron-config-docs

Conversation

@wedamija

@wedamija wedamija commented Oct 2, 2026 •

Copy link
Copy Markdown
Member

DESCRIBE YOUR PR

Adds a "Monitor Config" section to the Quartz integration page. With SentryJobListener.SENTRY_UPSERT_MONITOR_CONFIG_KEY set to "true", SentryJobListener sends a monitor config derived from the job's trigger, so Sentry creates the monitor from code. The section covers how to turn it on, which triggers convert, and what happens to a monitor created in Sentry.

SDK PR: getsentry/sentry-java#6216

IS YOUR CHANGE URGENT?

  • Urgent deadline (GA date, etc.): YYYY-MM-DD
  • Other deadline: YYYY-MM-DD
  • No deadline: Not urgent, can wait up to 1 week+

PRE-MERGE CHECKLIST

  • Checked Vercel preview for correctness, including links
  • PR was reviewed and approved by any necessary SMEs (subject matter experts)
  • PR was reviewed and approved by a member of the Sentry docs team

@vercel

vercel Bot commented Oct 2, 2026 •

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated
sentry-docs Ready Ready Preview Nov 11, 2026 5:49pm UTC
1 Skipped Deployment
Project Deployment Actions Updated
develop-docs Ignored Ignored Preview Nov 11, 2026 5:49pm UTC

Request Review

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
A JDBC job store with useProperties only accepts String values.

Co-Authored-By: Claude <noreply@anthropic.com>
Co-Authored-By: Claude <noreply@anthropic.com>
@cursor

cursor Bot commented Oct 5, 2026 •

Copy link
Copy Markdown
Contributor

Services awaiting deployment · Rollout details

Warning

Rollouts can't watch this change after it deploys: every data source for this team needs to be signed in again, so a check has no telemetry to read. Sign in to your data sources, or ask a team admin to.

Status Service Environment
⚪ Not deployed yet sentry-docs

Mention @rollout in a comment to update the plan.

Co-Authored-By: Claude <noreply@anthropic.com>

## Monitor Config

From the next Sentry Java SDK release (after `8.59.0`), `SentryJobListener` sends a monitor config derived from the job's trigger with each check-in, so Sentry creates the monitor (or updates its schedule) from your code. This is on by default for every job that has a monitor slug.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
From the next Sentry Java SDK release (after `8.59.0`), `SentryJobListener` sends a monitor config derived from the job's trigger with each check-in, so Sentry creates the monitor (or updates its schedule) from your code. This is on by default for every job that has a monitor slug.
Starting with Sentry Java SDK 8.59.0, `SentryJobListener` now sends a monitor config derived from the job's trigger with each check-in, so Sentry creates the monitor (or updates its schedule) from your code. This is on by default for every job that has a monitor slug.

- `CronTrigger`: the cron expression and the trigger's time zone. The seconds field must be a fixed number, and the year field, if set, must be `*`.
- `SimpleTrigger` that repeats forever: the repeat interval, if it's a whole number of minutes.

Other triggers send no monitor config, and neither do triggers with a `Calendar`, jobs with more than one trigger, cron expressions with syntax Sentry doesn't support (such as `15W`, `L-3`, or wrap-around ranges like `FRI-MON`), a step after a day or month name (such as `MON/2`, which Quartz runs every Monday), or time zones that aren't IANA time zone IDs. For these, create the monitor in Sentry first. Whole-hour offsets such as `GMT+2` aren't affected: they're sent as `Etc/GMT-2`.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
Other triggers send no monitor config, and neither do triggers with a `Calendar`, jobs with more than one trigger, cron expressions with syntax Sentry doesn't support (such as `15W`, `L-3`, or wrap-around ranges like `FRI-MON`), a step after a day or month name (such as `MON/2`, which Quartz runs every Monday), or time zones that aren't IANA time zone IDs. For these, create the monitor in Sentry first. Whole-hour offsets such as `GMT+2` aren't affected: they're sent as `Etc/GMT-2`.
Monitor configuration isn't sent for any of the following:
- Other trigger types
- Triggers with a `Calendar`
- Jobs with multiple triggers
- Cron expressions that use syntax Sentry doesn't support, such as `15W`, `L-3`, or wraparound ranges like `FRI-MON`
- Cron expressions with a step after a day or month name, such as `MON/2` (which Quartz runs every Monday)
- Time zones that aren't IANA time zone IDs, except for whole-hour offsets such as `GMT+2`, which are sent as `Etc/GMT-2`
In these cases, create the monitor in Sentry first.

@coolguyzone coolguyzone left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Added a couple suggestions that I think help with clarity, besides that LGTM!

@linear-code

linear-code Bot commented Oct 21, 2026

Copy link
Copy Markdown

JAVA-9

@wedamija
wedamija marked this pull request as draft October 23, 2026 21:12
SentryJobListener sends the trigger's schedule only when
sentry-upsert-monitor-config is "true", so existing monitors aren't changed
on upgrade.
@wedamija
wedamija merged commit d98d5ea into master Nov 11, 2026
28 checks passed
@wedamija
wedamija deleted the danf/quartz-cron-config-docs branch November 11, 2026 17:52

This branch was successfully deployed

1 active deployment
Preview – sentry-docs — e6c9eb16 Deployed Nov 11, 2026 by vercel[bot]
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Priority: Normal Docs review has no urgent deadline

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants