Skip to content

Automation reliability monitoring for scheduled jobs

Your billing job failed at 2:00. Know before a customer does.

CronRadar discovers recurring Hangfire jobs from the scheduler you already use, watches every expected run, and alerts your team when work is missed, failed, stuck, or disappears.

14-day trial · no credit card · monitors appear after real telemetry arrives

billing-api / recurring jobs

Example production incident

Critical

generate-monthly-invoices

Failed during the scheduled 02:00 UTC run

FAILED

Schedule

0 2 1 * *

Last result

Failed

Source

Hangfire

Incident

Job reported failure

CronRadar received the run lifecycle and opened an active incident for this automation.

Turn it on, don't set it up

One integration discovers the work. Run signals reveal when it breaks.

CronRadar reads Hangfire's recurring-job metadata, synchronizes each schedule, and observes start, completion, failure, and heartbeat signals. There is no monitor to recreate by hand for every job.

Program.csHangfire
dotnet add package CronRadar.Hangfire

builder.Services.AddCronRadarHangfire();
Monitoring errors are contained. Exceptions from your job are still re-thrown after the failure is recorded.

Monitors

3 recurring jobs discovered from Hangfire

Synced

reconcile-payments

*/15 * * * *

Hangfire · auto-discoveredHealthy

send-daily-reports

0 17 * * 1-5

Hangfire · auto-discoveredHealthy

generate-monthly-invoices

0 2 1 * *

Hangfire · auto-discoveredCritical

The missing signal

Dashboards and logs help you investigate. They do not reliably tell you to start.

Protect recurring work with an independent expectation: this job should run on this schedule, and this run should finish successfully.

Alerts go to email, Slack, webhook, Discord, or PagerDuty

A scheduler dashboard waits for you to look

Hangfire is the system of record for its jobs. Its dashboard is useful during investigation, but it does not help when nobody knows there is something to investigate.

Logs explain events that happened

Logs can show an exception after a process runs. A job that never started may leave no useful event, and log search still depends on someone knowing to search.

CronRadar watches the expectation

CronRadar keeps the schedule outside the job process, interprets lifecycle signals, and opens an incident when an expected run is late, failed, stuck, or no longer reports.

Supported today

Framework-native where metadata exists. Simple lifecycle signals everywhere else.

Auto-discovery and base SDK coverage are different capabilities. CronRadar makes that distinction explicit so you know exactly what setup to expect.

Framework auto-discovery

Schedules synchronize from the framework.

Base SDKs and HTTP

Instrument a script or custom scheduler directly.

.NETNode.jsPythonPHPcurl / raw HTTP

Base SDK integrations report lifecycle events but do not claim framework-level auto-discovery.

Trust is product behavior

Built to watch production work without becoming its dependency.

Monitoring stays out of the way

SDK network errors are contained so CronRadar does not break the production job it watches.

Requests are bounded

SDK HTTP requests use a 5-second timeout instead of leaving scheduled work waiting indefinitely.

5 alert destinations

email, Slack, webhook, Discord, and PagerDuty are supported today.

No per-seat charge

The 14-day trial needs no card, and paid usage includes unlimited team members.

Protect the next run

Find out from CronRadar—not from the customer waiting on the result.

Create an application, copy its API key, and connect Hangfire. Your recurring jobs appear when CronRadar receives real telemetry.