Proccess running PID:

Ответить
Ivanko
Сообщения: 7
Зарегистрирован: Ср окт 20, 2010 5:17 am

Proccess running PID:

Сообщение Ivanko »

Переехал с 0.4x на 0.5x и стал наблюдать письма от крона на каждый запуск billd с этой фразой (неграмотная, кстати. process с одной буквой "с", и напрашивается запятая перед pid)
Это оно зачем и как это отключить?
Посмотрел в код:

Код: Выделить всё

my $pid = $pids[0];
if(verify($pid)) {
    print "Proccess running PID: $pid\n";
      return 1;
}
ничего умнее, чем прописать return 0 не придумал.

ps. версия - current позавчерашний.

~AsmodeuS~
Site Admin
Сообщения: 5746
Зарегистрирован: Пт янв 28, 2005 3:11 pm
Контактная информация:

Re: Proccess running PID:

Сообщение ~AsmodeuS~ »

У вас очень долго обрабатывается billd не знаю с чем связано возможно скидка сессий зависает или еще чтото, а елси они как раньше будут по два три запускаться начинается путаница.

Запустите его с консоли чтобы проверить что так тормозит его

спасибо за исправление

Ivanko
Сообщения: 7
Зарегистрирован: Ср окт 20, 2010 5:17 am

Re: Proccess running PID:

Сообщение Ivanko »

Разобрался, почему оно получается.
По крону запускается billd -all раз в пять минут и billd checkmpd5 раз в две минуты.
Разумеется, раз в десять минут они запускаются одновременно. Время работы каждого в пределах 0.75-1.2 секунды.
Выключил проверку mpd5, так как, вроде он справляется с контролем сессий самостоятельно. По крайней мере двое суток полёт нормальный.
Раньше был expppd с соответствующей проверкой - подобной ругани не было. Хотя стояла 0.4x версия.

Ivanko
Сообщения: 7
Зарегистрирован: Ср окт 20, 2010 5:17 am

Re: Proccess running PID:

Сообщение Ivanko »

Подыму ещё разок эту тему в качестве предупреждения, что отключать проверку сессий в mpd5 не следует. Получается следующее: если задизэйблить клиента и даже сбросить ему сессию в веб-интерфейсе, то соединение в mpd продолжает существовать и работать до тех пор, пока клиент сам не отвалится. При этом траффик, разумеется, не считается и в мониторинге он не отображается.

Поэтому для медленных серверов проще вписать sleep на пару-тройку секунд перед вызовом billd checkmpd5.

PS. грамотности ради:

Код: Выделить всё

print "Process is already running with PID=$pid\n";
или даже более информативнее:

Код: Выделить всё

print "billd is already running as process $pid\n";
и выше и ниже:

Код: Выделить всё

# Checking if program is running
вместо
# Check running program

sopov
Сообщения: 610
Зарегистрирован: Вс апр 02, 2006 7:13 pm

Re: Proccess running PID:

Сообщение sopov »

Вобще, если правильно настроено управление mpd из биллинга, такого быть не должно. Как только сбрасываете сессию по hungup, она сразу должна сбрасываться на брасе. Единствнное что может возникать при отсутствии

Код: Выделить всё

/usr/abills/libexec/billd checkmpd NAS_IDS=
на брасе, это когда вы отправляете сессю в zap и система пытается назначить ip этого клиента кому-то другому. Но с этим, по идее, должен справляться billd, т.к. алайвы будут продолжать поступать. Исключением являются внештатные аварийные ситуации, когда падает целый район например. Но и в этом случае по сигналу lcp, vpd должна выполнить скрипт linkupdown и завершить сессию на биллинге. Вобщем, что с чеком, что без него разницы особой незаметил - все работает нормально.

Ответить