scripts/run-cron
author Tomas Zeman <tzeman@volny.cz>
Wed, 10 Aug 2011 10:24:57 +0200
changeset 14 f4d75fcc72a3
parent 13 fd71994b6ce0
permissions -rwxr-xr-x
daemontools.conf: svstat(8) checks

#!/bin/sh

# Generic run-cron script with zabbix-friendly status outputs
# Invocation:
#	run-cron name prog
#
#	where name is run name (logs, status etc.)
#	and prog is the script which will be invoked.

name=$1
shift
script="$@"

logdir=`dirname $name`
mkdir -p $logdir
[ $? -eq 0 ] || exit 1

l=$name-`date +%FT%T`

$script >$l.out 2>$l.err
echo $? > $l.status

[ -L $name-last.out ] && mv $name-last.out $name-prev.out
[ -L $name-last.err ] && mv $name-last.err $name-prev.err
[ -L $name-last.status ] && mv $name-last.status $name-prev.status

ln -sf $l.out $name-last.out
ln -sf $l.err $name-last.err
ln -sf $l.status $name-last.status