Помогите с решением такой задачи:
Есть программа-сервер чата, которая должна висеть демоном у моего хостера (стоит FreeBSD)
Называется ichat - достаточно распространенная для локальных сетей.
Хостер не может гарантировать ее работоспособность - она висит, пока не мешает: "на птичьих правах".
В следствие этого часто "вылетает" - то ли после зависания, то ли.. причины неясны..
Хочу создать таблицу cron с периодом выполнения 1 час с такой задачей:
Если прога зависла или выгружена - убить зависшую (если надо) и запустить снова.
Подскажите пожалуйста, какими командами реализовать такую проверку?
В командном языке шибко не разбираюсь.. Были предложения запускать скрипт, выполняющий проверку, но ни в php ни в perl ятоже ни бум-бум....
Что посоветуете? Готов разбираться сам, но трудно из моря man-ов найти сразу то, что ищу. Спасибо.
>Помогите с решением такой задачи:
>Есть программа-сервер чата, которая должна висеть демоном у моего хостера (стоит FreeBSD)
>
>Называется ichat - достаточно распространенная для локальных сетей.
>Хостер не может гарантировать ее работоспособность - она висит, пока не мешает:
>"на птичьих правах".
>В следствие этого часто "вылетает" - то ли после зависания, то ли..
>причины неясны..
>Хочу создать таблицу cron с периодом выполнения 1 час с такой задачей:
>
>Если прога зависла или выгружена - убить зависшую (если надо) и запустить
>снова.
>Подскажите пожалуйста, какими командами реализовать такую проверку?
>В командном языке шибко не разбираюсь.. Были предложения запускать скрипт, выполняющий проверку,
>но ни в php ни в perl ятоже ни бум-бум....
>
>Что посоветуете? Готов разбираться сам, но трудно из моря man-ов найти сразу
>то, что ищу. Спасибо.
Можно так попробовать ... Не претендую на оригинальность
Но это проверка на незапущенность программы а не на зависание#!/bin/sh
ichat=`ps ax | grep ichat | grep -v grep | wc -l | awk '{ print $1; }'`
if [ $ichat -eq 0 ]
then
#команда стартующая ichat, например
/usr/local/etc/rc.d/ichat.sh start
fi
может настроить monit ?
>Помогите с решением такой задачи:
>Есть программа-сервер чата, которая должна висеть демоном у моего хостера (стоит FreeBSD)
>
>Называется ichat - достаточно распространенная для локальных сетей.
>Хостер не может гарантировать ее работоспособность - она висит, пока не мешает:
>"на птичьих правах".
>В следствие этого часто "вылетает" - то ли после зависания, то ли..
>причины неясны..
>Хочу создать таблицу cron с периодом выполнения 1 час с такой задачей:
>
>Если прога зависла или выгружена - убить зависшую (если надо) и запустить
>снова.
>Подскажите пожалуйста, какими командами реализовать такую проверку?
>В командном языке шибко не разбираюсь.. Были предложения запускать скрипт, выполняющий проверку,
>но ни в php ни в perl ятоже ни бум-бум....
>
>Что посоветуете? Готов разбираться сам, но трудно из моря man-ов найти сразу
>то, что ищу. Спасибо.
>может настроить monit ?
>
>
А с чем его едят?
с google.com>>может настроить monit ?
>>
>>
>А с чем его едят?
Пытался и с Гуглем кушать, и с прочими нашими... Не лезет в горло.
Сплошь предлагают монитры и мониторинг:)
Мне понравилось решение с ps и grep - вот только прога чаще зависает, чем вылетает полностью.
Как же можно проверить ее на работоспособность?
>с google.com
>
>>>может настроить monit ?
>>>
>>>
>>А с чем его едят?
>Мне понравилось решение с ps и grep - вот только прога чаще
>зависает, чем вылетает полностью.
>Как же можно проверить ее на работоспособность?Законнектиться к демону симитировав клиента, получить ответ или не получить
ну и действовать соотв. Ну был у меня он раньше и не вис.
>>Мне понравилось решение с ps и grep - вот только прога чаще
>>зависает, чем вылетает полностью.
>>Как же можно проверить ее на работоспособность?
>
> Законнектиться к демону симитировав клиента, получить ответ или не получить
> ну и действовать соотв. Ну был у меня он раньше и
>не вис.Как законнектиться? Как с помощью скрипта самостоятельно зайти в чат? Он прослушивает порт 7777. Ну или хотя бы что читать, чтобы найти ответы на эти вопросы:)
Спасибо.
>Как законнектиться? Как с помощью скрипта самостоятельно зайти в чат? Он прослушивает
>порт 7777. Ну или хотя бы что читать, чтобы найти ответы
>на эти вопросы:)ну telnet-ом на этот порт и посмотреть что выдает, не помню я...
Далее perl с net::telnet в руки и вперед