Pre-synchronized
Registered jobs appear from the scheduler inventory before waiting for their first execution.
scheduler → bulk sync
Quartz.NET reliability
CronRadar walks registered Quartz jobs and triggers, declares their schedules, and listens for start, completion, and failure events without changing IJob execution. The published 0.1.0 monitors jobs on repeating simple triggers; cron-trigger translation ships in 0.1.1.
Runnable setup
Call MonitorAll after registering jobs and triggers. The extension declares jobs when the scheduler starts and registers one Quartz job listener for execution telemetry. Review the package release note above.
dotnet add package CronRadar.Quartz
# Set this in your deployment environment
CRONRADAR_API_KEY=ck_app_xxxxxxxxxxxxxxxxxxxx
using CronRadar.Quartz;
using Quartz;
IScheduler scheduler = await schedulerFactory.GetScheduler();
await scheduler.ScheduleJob(myJob, myTrigger);
await scheduler.MonitorAll();
await scheduler.Start();Verified behavior
The integration is deliberately smaller than an observability agent: it records enough lifecycle context to detect broken scheduled work.
Registered jobs appear from the scheduler inventory before waiting for their first execution.
scheduler → bulk sync
Repeating simple triggers are declared as five-field schedules. 0.1.0 sends cron triggers unchanged and CronRadar rejects them; translating them requires the pending 0.1.1.
every 15 min → */15 * * * *
One IJobListener records start, completion, and failure for every included job.
start / complete / fail
A missed expected signal or a start without completion can move an automation into a critical timeout state.
30-second evaluator cadence
Schedules that cannot be represented safely are logged and skipped; other jobs continue to be monitored.
no invented schedule
Monitoring errors are caught, while exceptions from your job remain Quartz’s responsibility.
HTTP timeout: 5 seconds
Product evidence

Fit and migration
No. Quartz still owns scheduling, persistence, misfires, and retries. CronRadar independently records whether scheduled work started and finished.
In the published 0.1.0, only repeating simple triggers are monitored; a cron trigger is sent unchanged and rejected without a warning. Until 0.1.1, give a cron-triggered job [SkipMonitor] and report it with the base SDK and a five-field UTC schedule.
No. The listener catches its own errors and never short-circuits IJob.Execute. Quartz continues its normal failure and retry handling.
Enable MonitorAll in one application, confirm the discovered job list and a normal execution, run a safe test failure, then retire equivalent manual heartbeats job by job.
Running scheduled work outside Quartz? See the general integration path.
Guides
Protect up to ten active automations on Free, with every supported alert channel included. Development and staging jobs count too.