{{description>Рассматривается способ отслеживания фактического времени выполнения запланированных задач.}} ====== Отслеживание фактического времени выполнения запланированных задач ====== [[ http://wiki.mihanik.net/doku.php?id=операционные_системы:linux:планировщики_задач:cron:отслеживание_фактического_времени_выполнения_запланированных_задач&do=export_pdf | Экспорт в PDF ]] ~~ODT~~ Дата создания: 2025/06/23 04:41 (C) mihanik {{ :операционные_системы:linux:планировщики_задач:cron:crontab.jpg?nolink&400 |}} ===== Дано ===== С помощью планировщика задач **cron** вы создали новое задание. ===== Надо ===== Отслеживать время фактического выполнения задания. ===== Решение ===== Основная идея заключается в том, что мы перед запуском задания "трогаем" (touch) некий файл и после выполнения задания опять "трогаем" ещё один некий файл. **Реальный пример из моей практики.** В 6:00 нам нужно запустить некие виртуальные машины. Это сделать просто запланировав следующее задание **cron** 0 6 * * * /opt/scripts/start-vms.sh Но в некоторых случаях может быть непонятно: стартовал скрипт или нет, и завершилось ли задание. Немного модифицируем команду выполняемую по расписанию. 0 6 * * * touch /opt/scripts/start-vms.start; /opt/scripts/start-vms.sh; touch /opt/scripts/start-vms.end **Здесь**: * файл **/opt/scripts/start-vms.start** является файлом/флагом начала выполнения запланированного задания, а команда **touch** изменяет временную метку этого файла; * файл **/opt/scripts/start-vms.sh** - это непосредственно сам скрипт выполнение которого мы запланировали; * файл **/opt/scripts/start-vms.end** является файлом/флагом завершения выполнения запланированного задания, а команда **touch** опять-таки изменяет временную метку этого файла. Получается, что в одной строке указано несколько команд через ";". Эти команды будут выполняться по очереди вне зависимости от успешности выполнения других команд. Отработает ваш скрипт успешно или нет, - не важно. Проанализировав временные метки файлов "start" и "end" вы всегда будете знать когда ваш скрипт запустился и когда он завершил работу. ===== Источники ===== * [[https://yandex.ru/search]] [[#top|⇑ Наверх ⇑]]