Я использую несколько сценариев casperjs (которые я действительно не понимаю) с известной проблемой, заключающейся в зависании процесса после определенного предупреждающего сообщения. В противном случае он выводит сообщение журнала каждые несколько секунд.
Мне нужно перезапустить процесс, когда он зависает.
Итак, могу ли я создать сценарий, который проверяет, увеличивается ли файл журнала на каждом временном интервале? Или я могу перехватить вывод консоли процесса и проверить, совпадает ли последнее сообщение с конкретным предупреждающим сообщением?
Любая помощь будет оценена, спасибо!
#!/bin/sh
LOGFILE="/path/to/logfile/"
CURRENT_SIZE=`stat --format "%s" $LOGFILE`
while true; do
LAST_SIZE=$CURRENT_SIZE
sleep 10
CURRENT_SIZE=`stat --format "%s" $LOGFILE`
if [[ $CURRENT_SIZE -eq $LAST_SIZE ]]; then
echo "Restarting process"
#do whatever you need to restart process...
sleep 5
CURRENT_SIZE=`stat --format "%s" $LOGFILE`
fi
done