Очистка данных на AWS EC2 с помощью crontab: в файле журнала отсутствуют выходные данные

Я извлекаю большой объем данных из Интернета с помощью crontab на экземпляре AWS EC2. Скрипт очищает тысячи веб-страниц и печатает " webpageID done" после каждой. Поскольку я планирую запуск сценария, а затем выхожу из экземпляра, я сохраняю вывод stdout в файл журнала, используя следующую команду в crontab:

0 19 26 10 * /home/ec2-user/scrape.sh &>> /home/ec2-user/output.log

Сценарий аварийно завершил работу после очистки 10 000 веб-страниц, но по какой-то причине вывод .log прекратил печатать « webpageID done» после 8000 веб-страниц. Последние несколько строк в output.log выглядят примерно так:

7998: webpage 012345 done
7999: webpage 012346 done
8000: webpage 012347 d

Итак, он прекратил печать на полпути, но скрипт продолжал очищать еще 2000 веб-страниц. Почему это могло происходить? Есть ли лучший способ сохранить ваши выходные данные при выходе из экземпляра EC2 (то есть без открытия канала SSH)?

0
задан 27 October 2019 в 09:13
1 ответ

Зафиксированный Ваш crontab

0 19 26 10 * /home/ec2-user/scrape.sh &>> /home/ec2-user/output.log 2>&1

кроме того, знать, что, если Ваш сценарий находится в Bash затем, не забывают устанавливать его в Вашем cron (, ЕСЛИ Вы используете cron)

SHELL=/bin/bash
0
ответ дан 23 November 2019 в 04:05

Теги

Похожие вопросы