aptible / aptible/supercronic

Massive logging of missed jobs in v0.1.12

Open
#96 0 comments 1 reaction 0 assignees View on GitHub
bug
Dominant language
Go
Stars
2.6k
Forks
147
PR merge metrics
No merged PRs in 30d

Description

supercronic-linux-amd64 with SHA1SUM=048b95b48b708983effb2e5c935a1ef8483d9e3e
I just had my /var/lib/docker/overlay2 filesystem in my production swarm filled to 100% because of millions of messages like:

```
time="2021-12-03T09:24:42+01:00" level=warning msg="job took too long to run: it should have started -2562047h47m16.854775808s ago" job.command="printf '%(%c)T' -1 > /tmp/cron.running" job.position=0 job.schedule="* 12,13 16 11 2 2021"
```
>10 GB log space consumed in less than 1 minute.

(The schedule in the crontab was set like this in a base image so that the task would only be run during the building/testing of the base image, and not run in containers that use the base image without overwriting the crontab).

Contributor guide

No contributing guide indexed for this repository

Research direction

Start with the supercronic-linux-amd64 v0.1.12 entry point and the supplied crontab schedule, reproduce the repeated warning, and measure the resulting log output. Trace the warning path responsible for missed jobs and identify the intended handling; done means the schedule no longer floods the container filesystem while the behavior is covered by a regression test.

Written by the indexing model from the issue text.

Assessment

Tech stack
go
Domain
tooling
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.