Watch jobs that run — and schedule calls that should
MOJAQ combines heartbeat monitoring for your own cron jobs with scheduled HTTP calls, then connects failures to logs, errors and uptime in one Helsinki-hosted suite.
EU-hosted in Helsinki · GDPR-native · free during the private beta, no fixed end date
MOJAQ vs Cronitor
| MOJAQ | Cronitor | |
|---|---|---|
| Heartbeat monitoring | Dead-man checks for your jobs | Cron and job monitoring |
| Scheduled HTTP calls | Included | Product focus differs |
| Run visibility | Status and duration | Job telemetry available |
| Incident context | Logs, errors, uptime and deploys | Monitoring-focused workflow |
| Data residency | Helsinki, Finland | Depends on service arrangement |
| DPA | Included | Available terms |
| Access now | Free during the private beta | Free and paid tiers |
There are two opposite cron failures
A scheduled task can fail in two directions. A job under your control may never start, crash before completion, or stop sending evidence that it ran. That is the dead-man problem: silence is the failure signal. A heartbeat URL solves it by giving the job a simple completion ping and alerting when the expected signal does not arrive.
The other direction is an action that needs an external scheduler. MOJAQ can call an HTTP endpoint on an interval and record status and duration for the run. This is useful for triggering a cache refresh, report build or maintenance route without keeping a separate cron host. Housing scheduled calls and incoming heartbeats together makes the distinction explicit instead of treating every timer as the same mechanism.
Design heartbeats around outcomes
A ping at the start proves only that a process began. For backups, exports and cleanup tasks, send the success heartbeat after the important work completes. Name the check after the business outcome, include enough schedule tolerance for normal variance, and test the failure path by deliberately withholding a ping. Those choices prevent a reassuring dashboard from hiding incomplete work.
When a heartbeat is missed, the next question is why. MOJAQ places heartbeat and scheduled-call state beside log ingestion and search, error tracking, uptime monitoring and the deployment timeline. A responder can inspect whether a release coincided with the missed run or whether the downstream endpoint was unavailable, all within one account.
Cron metadata is infrastructure data
Job names, schedules and callback addresses can map the shape of a production system. Run output can be even more sensitive. MOJAQ hosts service data in Helsinki with an included DPA, giving EU teams a direct residency answer for both heartbeat records and the related operational signals they choose to send.
Good data hygiene still applies. Heartbeat URLs should be treated as secrets, logs should not contain credentials, and scheduled endpoints should authenticate requests appropriately. MOJAQ's EU-hosted managed model removes the work of operating the monitoring service; it does not remove your responsibility to secure the jobs and endpoints themselves.
How to move cron monitoring
Inventory each Cronitor monitor with its schedule, grace period, timezone, notification path and the exact point where success is reported. Create the corresponding MOJAQ heartbeat and add its ping only after the job's real work succeeds. For externally triggered tasks, decide whether a MOJAQ scheduled HTTP call is simpler than retaining a separate scheduler. Test one missed heartbeat and one failing endpoint intentionally, then remove old pings only after the new alerts reach the right people.
Questions
What is the difference between a heartbeat and a scheduled call?
A heartbeat is sent by a job you already run, proving that it completed. A scheduled call is an HTTP request MOJAQ sends on an interval to trigger an endpoint. Many systems use both.
When should a cron job send its heartbeat?
For outcome monitoring, send the success ping after the important work finishes. A ping at startup proves the process began but not that a backup, export or cleanup completed.
Is cron monitoring hosted in the EU?
Yes. MOJAQ hosts service data in Helsinki, Finland, and includes a GDPR DPA.
Does migration require changing the job itself?
For heartbeat monitoring, replace or add the final ping URL in the job. Test the new failure alert before removing the existing monitor.
Catch the cron job that goes silent
Use heartbeats and scheduled calls beside the logs, errors and deploys that explain a failed run.
Request beta access →