SIMPLE SOLUTIONS

CRONIC - reference manual online

A shell script to help control the most annoying feature of cron: unwanted emailed output.

Chapter
April 2016 - v3
cronic(1)                                     admin                                     cronic(1)

NAME cronic - a shell script to help control the most annoying feature of cron: unwanted emailed output
SYNOPSIS cronic [COMMAND]
DESCRIPTION Cronic is a small shim shell script for wrapping cron jobs so that cron only sends email when an error has occurred. Cronic defines an error as any non-trace error output or a non-zero result code. Cronic filters Bash execution traces (or anything matching PS4) from the error output, so jobs can be run with execution tracing to aid forensic debugging. Cronic has no options, it simply executes its arguments. 0 1 * * * cronic backup With cronic, you can turn on Bash's strict error handling and debug options (exit on error, unset variable detection and execution tracing) to make sure problems are caught early.
EXAMPLES Example cron job: #!/bin/bash set -o errexit -o nounset -o xtrace cp -rp data1 /backup cp -rp data2 /backup cp -rp data3 /backup When an error is detected, Cronic outputs a report listing the result code, error output, and combined trace and error output. The combined output can help put error messages in context. Example email from cron with cronic info: From: @example.net (Cron Daemon) To: @example.net Subject: Cron <user@server> cronic backup Cronic detected failure or error output for the command: backup RESULT CODE: 1 ERROR OUTPUT: cp: data2: Permission denied STANDARD OUTPUT: TRACE-ERROR OUTPUT: + cp -rp data1 /backup + cp -rp data2 /backup cp: data2: Permission denied
VERSION HISTORY v3 - Use mktemp -d to avoid race-conditions and security problems. v2 - Corrected command evaluation, so shell meta-chars are preserved correctly (Thanks to Frank Wallingford for the fix). v1 - Initial release.
OTHER TOOLS Joey Hess has written a simpler perl version of cronic, named chronic. It is available in Debian as part of moreutils.
AUTHOR Cronic was written by Chuck Houpt. This man page was formatted from the cronic home page by Daniel Lange.
REPORTING BUGS Please report bugs upstream to Chuck Houpt <@habilis.net> and use the Debian bug‐ tracker for Debian-specific issues. The cronic home page is <http://habilis.net/cronic/>.
SEE ALSO crontab(5), bash(1)
admin April 2016 - v3 cronic(1)
This manual Reference Other manuals
cronic(1) referred by
refer to bash(1) | crontab(5)