Вопрос

Я последовал предложению в этот вопрос

поскольку я использую Django, я настроил сценарий для хранения даты и времени каждого запуска сценария в базе данных, но в базе данных еще не сохранено ни одной записи.


Есть ли способ выяснить это, кроме как набрать «top» и выполнить поиск?

Это было полезно?

Решение

Во-первых, я бы, вероятно, настроил cron для отправки себе любого вывода по почте, используя MAILTO:

В /etc/crontab:

MAILTO=username

Во-вторых, я обычно добавляю в свой сценарий что-то, что (почти) не может потерпеть неудачу, например следующее:

#!/bin/sh
echo "$0 ran on `date +%c`" >> /tmp/crontab_test.log

# ... rest of program

Если вы вызываете скрипт Python непосредственно из cron, вы можете сделать что-то подобное или создать скрипт оболочки-оболочки.

Другие советы

Если у вас установлен sendmail, вы можете добавить следующее в /etc/aliases:

корень:ваше_имя@домен.com

После этого обновите псевдонимы, выполнив эту команду:

sudo newaliases

Cron автоматически отправляет вам электронное письмо каждый раз, когда выполняется задание.Нет необходимости указывать это в файле crontab.

Также убедитесь, что вы тест ваши возможности электронной почты (например.убедитесь, что вы можете отправлять электронные письма с сервера) и, наконец, создайте тривиальное задание cron и проверьте, получаете ли вы электронное письмо.

Не думайте!

Помимо настройки cron для отправки электронной почты, вы можете отправить выходные данные cron в отдельный журнал системного журнала, добавив следующее в свой файл: /etc/syslog.conf.

# Log cron stuff 
cron.*                                                  /var/log/cron.log 

Это должно регистрировать сообщение в /var/log/cron.log каждый раз при запуске задания.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top