У меня есть задание crontab, которое должно выполняться как таковое:
* * * * * /home/username/public_html/domain.tld/production/scripts/cron_runner.sh
Моя цель - добавить некоторые временные метки для вывода из cron, чтобы мне было легче найти вещи в отношении некоторых точек сбоя во внутренней системе cron веб-приложения. Иногда я получаю сообщения, а иногда нет, и я хочу просто проверить работоспособность, правильно ли я построил этот скрипт:
#!/usr/bin/env bash
#
# Script Name: cron_runner.sh
#
echo "Cron Execution @ `date`: " >>/home/username/public_html/domain.tld/production/var/log/crontab_output.log 2>&1
cd /home/username/public_html/domain.tld/production && /usr/local/bin/php /home/username/public_html/domain.tld/production/cron.php >>/home/username/public_html/domain.tld/production/var/log/crontab_output.log 2>&1
echo "==== END CRON EXEC ====" >>/home/username/public_html/domain.tld/production/var/log/crontab_output.log 2>&1
Какие-либо предложения?
Вы можете передать скрипт в ts
из Moreutils, который будет добавлять метку времени к каждой строке, например:
(cd /home/username/public_html/domain.tld/production && /usr/local/bin/php /home/username/public_html/domain.tld/production/cron.php) | ts >>/home/username/public_html/domain.tld/production/var/log/crontab_output.log 2>&1
Также каждый раз crond
выполняет задание, обычно регистрирует его под /var/log/cron
(в зависимости от вкуса * nix), поэтому я должен сначала проверить это, если это применимо к вам.