Skip to content

Hangfire Job Dashboard

Autotask Mirror uses Hangfire for background job processing. The Hangfire Dashboard provides detailed visibility into job execution.

Accessing the Dashboard

Click Job Dashboard in the left sidebar or navigate to /hangfire. The dashboard opens in a new browser tab.

Note

When authentication is enabled, the Hangfire Dashboard requires sign-in using the same identity provider as the main application.

Dashboard Sections

Recurring Jobs

Lists all scheduled entity sync jobs. Each row shows:

  • Job ID — The entity name
  • Cron expression — The schedule in cron format
  • Next execution — When the job will next run
  • Last execution — When the job last ran

Jobs

Browse jobs by state:

  • Enqueued — Jobs waiting to be picked up by a worker
  • Processing — Jobs currently running
  • Succeeded — Completed jobs (retained for 24 hours by default)
  • Failed — Jobs that threw an exception
  • Scheduled — Jobs scheduled for future execution (e.g., retries)

Retries

Failed sync jobs are automatically retried up to 5 times with exponential backoff:

Attempt Delay
1st retry 1 minute
2nd retry 5 minutes
3rd retry 15 minutes
4th retry 30 minutes
5th retry 1 hour

After 5 failed attempts, the job remains in the Failed state until the next scheduled run.

Servers

Shows the active Hangfire server and its worker count. The number of workers determines how many sync jobs can run simultaneously. See Preferences to adjust the worker count.

Distributed Locking

Each entity sync job acquires a distributed lock before running. This prevents the same entity from being synced by multiple workers simultaneously. If a lock cannot be acquired (because a previous run is still in progress), the job is skipped.