Я имею ниже сценария
#!/bin/sh
tail -fn1 /app/agile/agile931/agileDomain/servers/01mustgagl01.natusmed.natus.com-AgileServer/logs/agileDomain.log| \
while read line ; do
echo "$line" | grep "OutOfMemory"
if [ $? = 0 ]
then
##--Mail the Report--
(
echo "To: Dutta@abc.com"
echo "From: AGILE ADMIN"
echo "Content-Type: text/html; "
echo "Subject: OOM Alert"
echo
) | /usr/lib/sendmail -t
fi
done
$ ./OOMERROR.sh
exit
Это хорошо работает при ручном выполнении, но привычка, выполненная с ниже задания крона.
0 3 * * * agile /path/to/script/OOMERROR.sh
системный журнал показывает запись и никакие ошибки, но меня, привычка получает электронное письмо.
Вы не помещаете пользователя, который выполняет задание в cron
строка задания. Вы видите правильный формат путем выполнения man 5 crontab
в терминале.
у Каждого пользователя есть их собственный отдельный crontab (cron
таблица задания). Для редактирования agile
crontab откройте терминал и работайте:
su agile
crontab -e
Это откроется agile
crontab в текстовом редакторе. Вставьте cron
строка задания, которую Вы имеете выше без имени пользователя:
0 3 * * * /path/to/script/OOMERROR.sh
Теперь сохранили файл и выход.
Во-первых Вы отсутствуете #
в sha-ударе.
, Во-вторых, я рекомендовал бы поместить весь путь Вашего agile
исполняемый файл, и в-третьих я переформатирую файл, поскольку это, кажется, путаница.
я также предложил бы проверить другие файлы журнала, поскольку существует много различных причин, почему та почта не была отправлена, и попытайтесь добавить регистрирующуюся поддержку тому сценарию, если что-нибудь на нем должно перестать работать.