Как я могу физически увидеть бегущие Cronjobs?

0

У меня есть cronjobs, которые выполняют PHP файлы в заранее определенные моменты времени. Эти скрипты могут занять более часа. Я хочу иметь возможность физически контролировать сценарии. У меня журналы, конечно, и множество способов обработки ошибок, но иногда мне просто нравится видеть, что происходит.

Раньше я делал это в Windows, где планировал задачу, которая запускалась бы в оболочке, которая оставалась бы открытой во время выполнения задачи.

Могу ли я сделать это в Linux? Использование SSH? Что-то, возможно, похоже на использование screen с помощью cron? Я использую версию Linux для AWS.

Спасибо.

  • 0
    человек пс
  • 0
    Вы можете зайти на свой сервер через ssh и использовать ps для проверки запущенных процессов. Вы также можете использовать TOP, чтобы увидеть, что еще работает.
Показать ещё 6 комментариев
Теги:
cron

3 ответа

0
Лучший ответ

Вы можете вывести вывод cronjob в файл журнала, и вы можете использовать инструменты unix (хвост, часы и т.д.) Для просмотра всего выходного файла, как это происходит, например, следующие перенаправления STDERR, а также STDOUT в файл журнала:

/usr/bin/really_long_script.sh > /tmp/script.log 2>&1

tail -f /tmp/script.log
  • 0
    Все ответы были одной и той же идеей. Я принял это из-за примеров
1

Самый простой (хотя и грязно грязный) способ сделать это - установить переменную среды в crontab:

* * * * * THIS_IS_A_CRON=1 /path/to/script

Затем, чтобы убедиться, что они работают на вашем компьютере:

ps auxe | grep THIS_IS_A_CRON

Это будет список всех процессов (если они есть), которые были запущены с переменной среды THIS_IS_A_CRON

Если все, что вам нужно, это окно, в котором вы можете видеть вывод скрипта во время его запуска, это действительно ничего не отличается от наличия:

* * * * * /path/to/script 2>&1 >> /random/output/file.txt

И открытие терминала, который tail файла:

tail -100f /random/output/file.txt
  • 0
    Спасибо. Это покажет мне фактический вывод скрипта? Так же, как если бы я запускал скрипт php прямо из оболочки?
  • 0
    tail будет, потому что и stdout и stderr настроены на добавление в случайный файл, который будет выводиться на ваш экран через tail
Показать ещё 5 комментариев
0

Если скрипт генерирует выходные данные, которые вы хотите отслеживать, позвольте ему зарегистрировать это и использовать хвост -f в журнале.

Использование экрана для этого является излишним.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню