1
0
Fork 0
mirror of https://github.com/Luzifer/elastic_cron.git synced 2024-12-23 02:41:20 +00:00
elastic_cron/README.md
2016-02-26 22:31:51 +01:00

1.3 KiB

Luzifer / rsyslog_cron

This project is a quick and dirty replacement for running a cron daemon inside docker containers.

Advantages

  • It logs the output of the jobs into a remote syslog target (like Papertrail) using TCP syslog
  • Crons can be started on seconds, not only on minutes like a conventional cron
  • Due to the logs cron jobs can get debugged

Usage

  1. Put the binary into your container
  2. Generate a YAML file containing the cron definition
  3. Watch your crons get executed in your log stream

Config format

---
rsyslog_target: logs.myserver.com:12345
jobs:
  - name: date
    schedule: "0 * * * * *"
    cmd: "/bin/date"
    args:
      - "+%+"

The rsyslog_target parameter needs to be a rsyslog endpoint supporting TCP plain connections like Loggly or Papertrail does.

The schedule parameter consists of 6 instead of the normal 5 fields:

field         allowed values
-----         --------------
second        0-59
minute        0-59
hour          0-23
day of month  1-31
month         1-12 (or names, see below)
day of week   0-7 (0 or 7 is Sun, or use names)

Standard format for crontab entries is supported. (See man 5 crontab)