Cron Doctor · configuration analysis

Kubernetes CronJob validator

Check one Kubernetes CronJob YAML manifest for schedule and supported reliability settings. Then verify that the scheduled workload reports completion—not just that its configuration parses.

No signup needed for the checker. Need completion monitoring outside the cluster? Pro covers up to 50 jobs for $9.99/month, for one owner.

Open Cron Doctor

What you can check

  • Review a batch/v1 CronJob schedule and explicit spec.timeZone.
  • Inspect concurrencyPolicy, suspend, and startingDeadlineSeconds.
  • Read Job activeDeadlineSeconds and backoffLimit with source evidence.

What remains unknown

Selected-field analysis, not full Kubernetes schema or cluster validation. Supply one CronJob at a time. Missing timezone or unsupported input can limit the report. Admission policies, images, Secrets, permissions, network access, and output correctness are not verified.

Synthetic example

Synthetic example for analysis only: echo prints ok; it does not perform a backup. The manifest has no explicit concurrency policy or Job runtime deadline. Review those findings for your workload before deploying.

apiVersion: batch/v1
kind: CronJob
metadata:
  name: backup
spec:
  schedule: '0 2 * * *'
  timeZone: UTC
  jobTemplate:
    spec:
      template:
        spec:
          containers:
            - name: backup
              image: busybox:1.36
              command: [echo, ok]
          restartPolicy: Never

Your configuration is sent to PingCron for analysis. It is not saved and is never executed. A static report does not establish runtime health.

Official scheduler reference · Explore ongoing monitoring

Check the CronJob schedule before trusting the workload

The example above prints “ok”; it does not create a backup. Analyze it to see the default overlap policy and missing explicit Job runtime deadline. Those are settings to review against your workload, not proof that the job will fail.

  • Timezone: use spec.timeZone for an explicit IANA timezone. Without it, Kubernetes uses the controller’s local timezone, which this checker cannot inspect. Do not put CRON_TZ inside spec.schedule.
  • Overlap: Allow permits concurrent Jobs. Forbid can skip a run while the previous one is active; Replace can terminate the previous run. The policy applies to Jobs from the same CronJob.
  • Late starts and runtime: startingDeadlineSeconds limits how late a scheduled Job may start. jobTemplate.spec.activeDeadlineSeconds bounds Job runtime; backoffLimit controls failed-pod retries. These settings serve different purposes.
  • Suspension: suspend stops future executions, not already-running Jobs. Coordinate intentional pauses with monitoring so planned silence does not look like an incident.

See the Kubernetes CronJob documentation. Validate admission and policy against your own cluster, then inspect actual Jobs, Pods, events, and logs. This checker does not connect to your cluster, validate every manifest field, or establish that an image, Secret, service account, or network path works.

21–50 scheduled jobs, one owner: $9.99/month.

Keep Kubernetes running your workloads. PingCron Pro covers up to 50 monitors for completion check-ins from CronJobs and other scheduled jobs, with email, Slack, Discord, and webhook alerts. It watches for missing signals outside your cluster; it does not discover CronJobs or replace cluster logs and metrics.

At 30 monitors and one user, monthly list prices are PingCron Pro $9.99, Healthchecks Business $20, and Cronitor Business $65. Healthchecks offers 20 free checks; its Business plan includes 100 checks and SMS/WhatsApp and phone-call credits. Cronitor Business includes 12-month retention and SMS/on-call features. If your current monitoring already meets your needs, another subscription may add little.

USD monthly rates checked October 17, 2026; taxes, discounts, and add-ons excluded. Sources: Healthchecks pricing · Cronitor pricing. Compare requirements in our Healthchecks comparison and Cronitor comparison.

Pro retains 30 days of data for daily reported-outcome summaries; the individual list shows the latest 100 receipts. These are monitoring records, not Pod logs or proof of correct output. Pro has one owner. Shared account access starts on Team at $29/month.

No signup for analysis. Monitoring Free includes 5 monitors and 7-day history, with no credit card. Pro signup continues to checkout.

Verify one completion signal before adding the rest

Analyze one CronJob, then use Protect this job in a supported report. Review the owning account, schedule, timezone, and grace period. Send the monitor’s check-in only after the intended workload and your output checks succeed. Keep the check-in URL out of public manifests and logs; ensure the workload can reach PingCron over HTTPS.

Allow for scheduling delays, runtime, and retries when setting grace. A missing check-in can also mean reporting or network failure; it does not identify a root cause. Keep manual test runs separate from production monitoring. Confirm a real scheduled completion receipt, verify your alert destination, and test missed-run and recovery behavior on an isolated monitor. For workload-versus-reporting exit handling, see the completion-reporting shell example and adapt it to your image.