Skip to content

docs(dotnet): Document monitoring all Hangfire recurring jobs - #20052

Open
wedamija wants to merge 4 commits into
danf/hangfire-cron-config-docsfrom
danf/hangfire-bulk-crons-docs
Open

wedamija wants to merge 4 commits into
danf/hangfire-cron-config-docsfrom
danf/hangfire-bulk-crons-docs

Conversation

@wedamija

@wedamija wedamija commented Oct 17, 2026 •

Copy link
Copy Markdown
Member

DESCRIBE YOUR PR

The .NET Hangfire Crons page now covers MonitorAllRecurringJobs and ExcludedRecurringJobs, which monitor every recurring job without the SentryMonitorSlug attribute.

SDK PR: getsentry/sentry-dotnet#5742

Stacked on #19781.

Merge after the SDK release that includes it.

IS YOUR CHANGE URGENT?

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

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

vercel Bot commented Oct 17, 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 Oct 21, 2026 10:45pm UTC
1 Skipped Deployment
Project Deployment Actions Updated
develop-docs Ignored Ignored Preview Oct 21, 2026 10:45pm UTC

Request Review

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

cursor Bot commented Oct 20, 2026 •

Copy link
Copy Markdown
Contributor

The Hangfire crons page now documents monitoring every recurring job. The plan checks the live page heading, Hangfire page loads, Hangfire page errors, and .NET docs 404s. An issue escalates when Hangfire page loads fall or those errors and 404s rise.

Services: sentry-docs.

Mention @change-monitor in a comment to update the plan.

Plan

What changed

Readers of the Hangfire crons page now see how to monitor every recurring job without the SentryMonitorSlug attribute. The page also documents ExcludedRecurringJobs and the derived monitor slug rules.

This change is live after sentry-docs deploys to production. The same MDX clones onto each .NET guide Hangfire URL. The deploy workflow maps the Vercel project sentry-docs to this catalog id. The runtime Sentry project tag is docs, which is not a catalog id.

Risk

A bad MDX compile can 404 the Hangfire page on the platform URL and every .NET guide clone. A client render error in the new code sample can throw on those pages. Readers then lose the Hangfire setup path while other crons pages still load.

Intended effect

This is a docs prose change. Sentry does not record whether the new heading is on the page. After deploy, fetch the live Hangfire URLs. Confirmed means the heading Monitor All Recurring Jobs is present. Absent means the old SentryMonitorSlug-only copy is still served.

Signal Baseline Window Source Rule
Live Hangfire page heading Heading absent. Page still requires SentryMonitorSlug on each job. Fetched 2026-10-20T17:28Z GET https://docs.sentry.io/platforms/dotnet/crons/hangfire/ and GET https://docs.sentry.io/platforms/dotnet/guides/aspnetcore/crons/hangfire/ Confirmed when both pages show Monitor All Recurring Jobs. Absent if that heading is still missing.

Regression watch

Hangfire traffic is sparse. Treat a 24h drop to zero as the volume regression, not a small count change. Pair Hangfire page loads with platforms page loads so a quiet day is not a false alarm. Client pageload traces did not return Hangfire rows. Use the page load metric instead.

Signal Baseline Window Source Rule
Hangfire page loads 10 loads. Share of platforms page loads 10/8117 (0.12%). 39 loads in the 7d window. 2026-10-19T17:28Z to 2026-10-20T17:28Z Sentry org sentry, project docs. Metric docs.page.load. Query environment:production path:*hangfire*. Platforms denominator: environment:production page_type:platforms. Hold 4-12 loads per 24h, or about 0.05-0.20% of platforms page loads. Detected if Hangfire loads fall to 0 while platforms loads stay near 8117.
Hangfire page errors 0 errors. 0 errors per 10 Hangfire page loads. 2026-10-19T17:28Z to 2026-10-20T17:28Z Sentry org sentry, project docs. Errors query environment:production AND (url:*hangfire* OR transaction:*hangfire*) with count(). Hold at 0. Detected if this count rises while Hangfire page loads continue.
.NET docs 404s 1 not-found. 2 in the 7d window. 2026-10-19T17:28Z to 2026-10-20T17:28Z Sentry org sentry, project docs. Metric docs.page.not_found. Query environment:production requested_path:"platforms/dotnet". Hold 0-2 per 24h. Detected if the count rises above 2. This metric keeps only the first two path segments, so it cannot isolate Hangfire.
MDX runtime not-found logs 0 logs. 2026-10-19T17:28Z to 2026-10-20T17:28Z Sentry org sentry, project docs. Logs query environment:production AND message:"*MDX file not found at runtime*" with count(). Hold at 0. This log is a fault when a static page misses the serverless bundle.

7d comparison window for the two volume metrics is 2026-10-13T17:28Z to 2026-10-20T17:28Z.

Not observable

Client pageload spans with url.path:*hangfire* returned 0 rows in 24h and 7d, even though docs.page.load recorded Hangfire loads. Client traces are sampled at 30 percent, and url.path may be unset on those pageloads. Do not use pageload span counts for this path.

The 404 metric cannot name the Hangfire slug. A Hangfire-only 404 can hide in other .NET 404s. Markdown export requests to /platforms/dotnet/crons/hangfire.md were not measured.

Get Slack DMs about this change: cursor.com/automations/rollouts

… a job

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

linear-code Bot commented Oct 21, 2026

Copy link
Copy Markdown

NET-880

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

This branch was successfully deployed

1 active deployment
Preview – sentry-docs — dbf27363 Deployed Oct 21, 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.

Crons: Hangfire option to monitor all recurring jobs

1 participant