threem Опубликовано: 29 березня, 2011 Опубликовано: 29 березня, 2011 здравствуйте! собрал и запустил на одном сервер 2.406 на другом rscriptd той же версии, в результате, вижу что при авторизации и подключении пользователя, идет пакет от сервера, но скрипт не запускается, как можно дебагить процесс чтобы понять в чем дело то а?
threem Опубліковано: 29 березня, 2011 Автор Опубліковано: 29 березня, 2011 Для начала обновите версию. а чего старую не заюзать? или она не рабочая в в задаче темы?
nightfly Опубліковано: 29 березня, 2011 Опубліковано: 29 березня, 2011 Для начала обновите версию А сами то пробовали rscriptd там? Могу поспорить что нет. Там изкоробки формат ID пользователя сломан - нужно патчить на ручнике. а чего старую не заюзать? Препятствий не вижу - сам пока на 2.406 или она не рабочая в в задаче темы? ну на девяти NASах как-то работает ЗЫ в 2.407 rscriptd очень крут. Ждем с нетерпением rc3
nightfly Опубліковано: 29 березня, 2011 Опубліковано: 29 березня, 2011 идет пакет от сервера угу, вдумчиво всмотритесь в фаервол - не грохается ли какой-то UDP трафик по дороге Там все просто и работает. Со стороны биллинга /etc/stargazer.conf <Module remote_script> SendPeriod = 10 SubnetFile =/etc/stargazer/remote_nas.conf Password = mypassword UserParams=Cash Tariff Port = 9999 </Module> Со стороны NAS rscriptd.conf LogFileName=/var/log/rscriptd.log ExecutersNum=1 ConfigDir=/etc/rscriptd Password=mypassword Port=9999 UserTimeout=60 ScriptOnConnect=/etc/rscriptd/OnConnect ScriptOnDisconnect=/etc/rscriptd/OnDisconnect Единственное на что стоит обратить внимание что при конфиге приведенном выше OnConnect/OnDisconnect будут получать параметры в виде: LOGIN=$1 IP=$2 CASH=$4 ID=$3 Ну и опять же chmod a+x Дебужится все очень просто скажем методом echo "CONNECT: ID-$ID;LOGIN-$LOGIN;IP-$IP;CASH-$CASH" >> /var/log/allconnect.log Также помниться для rscriptd объязательно в OnConnect/OnDisconnect указывать #!/путь/к/интерпритатору
threem Опубліковано: 29 березня, 2011 Автор Опубліковано: 29 березня, 2011 идет пакет от сервера угу, вдумчиво всмотритесь в фаервол - не грохается ли какой-то UDP трафик по дороге Там все просто и работает. Со стороны биллинга /etc/stargazer.conf <Module remote_script> SendPeriod = 10 SubnetFile =/etc/stargazer/remote_nas.conf Password = mypassword UserParams=Cash Tariff Port = 9999 </Module> Со стороны NAS rscriptd.conf LogFileName=/var/log/rscriptd.log ExecutersNum=1 ConfigDir=/etc/rscriptd Password=mypassword Port=9999 UserTimeout=60 ScriptOnConnect=/etc/rscriptd/OnConnect ScriptOnDisconnect=/etc/rscriptd/OnDisconnect Единственное на что стоит обратить внимание что при конфиге приведенном выше OnConnect/OnDisconnect будут получать параметры в виде: LOGIN=$1 IP=$2 CASH=$4 ID=$3 Ну и опять же chmod a+x Дебужится все очень просто скажем методом echo "CONNECT: ID-$ID;LOGIN-$LOGIN;IP-$IP;CASH-$CASH" >> /var/log/allconnect.log Также помниться для rscriptd объязательно в OnConnect/OnDisconnect указывать #!/путь/к/интерпритатору каждый скрипт содержит в начале верный путь к интерпритатору конфиги модуля и демона идентичны, стоит правило на сервере разрешающее ходить трафику на всем интерфейсе вообще, при исходящем трафике от сервера, тот же 1 удп пакет на 9999 порт 20:15:14.507714 IP 192.168.2.123.1208 > 192.168.2.101.9999: UDP, length 1048 скажите плиз, при авторизации одно юзера, один пакет нужен для запуска скрипта с соотв параметрами, чтобы хоть знать что глючает, сервер или рскриптд? далее ОнКоннект скрипт, просто вписывает дату, в лог файл, пока для дебага и этого не происходит, при коннекте юзера, если руками запустить то пашет естественно. со стороны НАСа, 2011-03-29 15:43:48 -- +++++++++++++++++++++++++++++++++++++++++++++ 2011-03-29 15:55:04 -- rscriptd v. 2.406 2011-03-29 15:55:04 -- Message queue created successfully. msgKey=5555 msgID=229376 2011-03-29 15:55:04 -- rscriptd started successfully. 2011-03-29 15:55:04 -- +++++++++++++++++++++++++++++++++++++++++++++ лог такой, и запущены рскриптД и старгайзнутых процессов по количеству у меня 1-2
nightfly Опубліковано: 29 березня, 2011 Опубліковано: 29 березня, 2011 скажите плиз, при авторизации одно юзера, один пакет нужен для запуска скрипта с соотв параметрами, чтобы хоть знать что глючает, сервер или рскриптд? Нет, он целиком шлет состояние всех юзеров и потом контролирует что в нем изменилось - в этом и ценность. далее ОнКоннект скрипт, просто вписывает дату, в лог файл, пока для дебага и этого не происходит, есть подозрение что вы не совсем верно могли заполнить SubnetFile, покажите чтоли. Также я бы сильно-сильно рекомендовал перебрать для теста rscriptd в дебаге(gmake clean && ./build debug && gmake install-bin) - вот сразу себе и увидите наглядно что он делает и почему. Можете также поставить alwaysonline какомунить юзеру чтобы быть точно уверенным что для него "по всей логике" должен сработать onconnect из удаленного rscriptd (кстати на одном хосте с самим старгейзером он у меня отказывался вобще исполнять скрипты, почему так и не понял).
threem Опубліковано: 30 березня, 2011 Автор Опубліковано: 30 березня, 2011 ))я был бы безумно рад найти ошибку в файле с сетями, но не тут то было, он прост как 1+1 и поскольку идет отправка пакета именно тогда когда я авторизуюсь, значич он верно прописан логически а синтаксис проверяется бутом процесса, я работаю всего с одним хостом, на отдельном, резервном, сервере и насе, сервер работал локально точняк. 192.168.12.0/24 192.168.2.101 вот содержимое файла с сетями и НАСами, при этом, инет эесесс загорается зеленым. (кстати на одном хосте с самим старгейзером он у меня отказывался вобще исполнять скрипты, почему так и не понял) -- может это совпадение, у меня на этом хосто тож заинстален старгайзер, на данн момент не запущен, попробую удалить его отседава сча попробую
madf Опубліковано: 30 березня, 2011 Опубліковано: 30 березня, 2011 скажите плиз, при авторизации одно юзера, один пакет нужен для запуска скрипта с соотв параметрами, чтобы хоть знать что глючает, сервер или рскриптд? Нет, он целиком шлет состояние всех юзеров и потом контролирует что в нем изменилось - в этом и ценность. ... Не совсем так. Он шлет по пакету на каждое событие Connect и Disconnect и по alive-пакету на каждого подключенного пользователя. rscriptd со своей стороны по этим пакетам отслеживает состояние пользователей и выполняет необходимые скрипты. По остальным пунктам согласен - надо журнал работы отладочной версии.
madf Опубліковано: 30 березня, 2011 Опубліковано: 30 березня, 2011 ... (кстати на одном хосте с самим старгейзером он у меня отказывался вобще исполнять скрипты, почему так и не понял) -- может это совпадение, у меня на этом хосто тож заинстален старгайзер, на данн момент не запущен, попробую удалить его отседава сча попробую Наверное потому что совпадают ID для Message Queue. Если их сделать разными - должно работать.
threem Опубліковано: 30 березня, 2011 Автор Опубліковано: 30 березня, 2011 вот это реальный дебаг, дякую! очень помогает listener.cpp > 12:26:26 > Encryption initiated with password '123456' listener.cpp > 12:26:26 > LISTENER::Start() listener.cpp > 12:26:26 > Port: 9999 listener.cpp > 12:26:26 > LISTENER::PrepareNet() >>>> Start successfull. listener.cpp > 12:26:26 > LISTENER::Run listener.cpp > 12:26:26 > Magic: 'К■{J listener.cpp > 12:26:26 > Incorrect password or invalid packet! listener.cpp > 12:26:26 > LISTENER::Run listener.cpp > 12:26:26 > Magic: 'К■{J listener.cpp > 12:26:26 > Incorrect password or invalid packet! listener.cpp > 12:26:26 > LISTENER::Run мда, в обоих конфигах один и тот же пароль, нет никаких пробелов ни коца строки, и пишит такую фигню
threem Опубліковано: 30 березня, 2011 Автор Опубліковано: 30 березня, 2011 ... (кстати на одном хосте с самим старгейзером он у меня отказывался вобще исполнять скрипты, почему так и не понял) -- может это совпадение, у меня на этом хосто тож заинстален старгайзер, на данн момент не запущен, попробую удалить его отседава сча попробую Наверное потому что совпадают ID для Message Queue. Если их сделать разными - должно работать. это как? где смотреть и менять ? в логе rscriptd вижу такое Message queue created successfully. msgKey=5555 msgID=655360
madf Опубліковано: 30 березня, 2011 Опубліковано: 30 березня, 2011 вот это реальный дебаг, дякую! очень помогает listener.cpp > 12:26:26 > Encryption initiated with password '123456' listener.cpp > 12:26:26 > LISTENER::Start() listener.cpp > 12:26:26 > Port: 9999 listener.cpp > 12:26:26 > LISTENER::PrepareNet() >>>> Start successfull. listener.cpp > 12:26:26 > LISTENER::Run listener.cpp > 12:26:26 > Magic: 'К■{J listener.cpp > 12:26:26 > Incorrect password or invalid packet! listener.cpp > 12:26:26 > LISTENER::Run listener.cpp > 12:26:26 > Magic: 'К■{J listener.cpp > 12:26:26 > Incorrect password or invalid packet! listener.cpp > 12:26:26 > LISTENER::Run мда, в обоих конфигах один и тот же пароль, нет никаких пробелов ни коца строки, и пишит такую фигню Совпадает ли архитектура сервера на котором запущен Stargazer с архитектурой сервера на котором запущен rscriptd? Не используются ли Sparc/Sparc64?
madf Опубліковано: 30 березня, 2011 Опубліковано: 30 березня, 2011 ... (кстати на одном хосте с самим старгейзером он у меня отказывался вобще исполнять скрипты, почему так и не понял) -- может это совпадение, у меня на этом хосто тож заинстален старгайзер, на данн момент не запущен, попробую удалить его отседава сча попробую Наверное потому что совпадают ID для Message Queue. Если их сделать разными - должно работать. это как? где смотреть и менять ? в логе rscriptd вижу такое Message queue created successfully. msgKey=5555 msgID=655360 Параметр ExecMsgKey. Поставить что-то отличное от 5555.
threem Опубліковано: 30 березня, 2011 Автор Опубліковано: 30 березня, 2011 вот это реальный дебаг, дякую! очень помогает listener.cpp > 12:26:26 > Encryption initiated with password '123456' listener.cpp > 12:26:26 > LISTENER::Start() listener.cpp > 12:26:26 > Port: 9999 listener.cpp > 12:26:26 > LISTENER::PrepareNet() >>>> Start successfull. listener.cpp > 12:26:26 > LISTENER::Run listener.cpp > 12:26:26 > Magic: 'К■{J listener.cpp > 12:26:26 > Incorrect password or invalid packet! listener.cpp > 12:26:26 > LISTENER::Run listener.cpp > 12:26:26 > Magic: 'К■{J listener.cpp > 12:26:26 > Incorrect password or invalid packet! listener.cpp > 12:26:26 > LISTENER::Run мда, в обоих конфигах один и тот же пароль, нет никаких пробелов ни коца строки, и пишит такую фигню Совпадает ли архитектура сервера на котором запущен Stargazer с архитектурой сервера на котором запущен rscriptd? Не используются ли Sparc/Sparc64? Linux reserv 2.6.26-2-686 #1 SMP Sat Nov 20 23:06:30 UTC 2010 i686 GNU/Linux -- rscriptd FreeBSD odex.freenet.od.ua 8.1-RELEASE FreeBSD 8.1-RELEASE #0: Thu Sep 16 21:19:52 UTC 2010 root@:/usr/src/sys/i386/compile/FREENET i386 -- stargazer насколько мне известно нет такого добра, вроде оба дуалкора интеловых поменял ExecMsgKey=4444, сообщения все те же, ничего не поменялось в сторону улучшения
vlad5503 Опубліковано: 19 жовтня, 2016 Опубліковано: 19 жовтня, 2016 Есть сервер с базой и stg-2.409-rc2. Включен модуль remote_script. В конфиге remote_script.conf указал передаваемые параметры: UserParams = Passive Есть удаленный сервер NAS. установлен rscriptd. В нем есть OnConnect и OnDosconnect, в редакции под наши нужды. В общем не могу добиться передачи параметра Passive. Проверял передачу других параметров: Note, Phone, Userdata0...9, Credit, IP, Tariff, RealName - приходят на удаленный сервер. Параметры Login, IP, Cash, Id передаются. А вот Passive никак.... Подскажите что проверить надо бы мне?
madf Опубліковано: 20 жовтня, 2016 Опубліковано: 20 жовтня, 2016 Есть сервер с базой и stg-2.409-rc2. Включен модуль remote_script. В конфиге remote_script.conf указал передаваемые параметры: UserParams = PassiveЕсть удаленный сервер NAS. установлен rscriptd. В нем есть OnConnect и OnDosconnect, в редакции под наши нужды.В общем не могу добиться передачи параметра Passive. Проверял передачу других параметров: Note, Phone, Userdata0...9, Credit, IP, Tariff, RealName - приходят на удаленный сервер. Параметры Login, IP, Cash, Id передаются. А вот Passive никак.... Подскажите что проверить надо бы мне? Воспроизвел у себя, буду исправлять.
vlad5503 Опубліковано: 20 жовтня, 2016 Опубліковано: 20 жовтня, 2016 Параметр Down тоже не смог передать на удаленный NAS.
madf Опубліковано: 20 жовтня, 2016 Опубліковано: 20 жовтня, 2016 Параметр Down тоже не смог передать на удаленный NAS.Я так понимаю вы взяли стоковые примеры скриптов OnConnect/OnDisconnect за основу. По неизвестной причине, rscriptd по умолчанию передает меньше параметров. А именно, login, ip, id. То есть UserParams будут идти начиная с 4-го аргумента. В таком раскладе все передает нормально. Вот только я теперь не знаю, что будет более правильно сделать: исправить скрипты (тогда непонятно почему локальные скрипты и rscriptd разные) или исправить rscriptd (и сломать обратную совместимость).
GrDEV Опубліковано: 21 жовтня, 2016 Опубліковано: 21 жовтня, 2016 Параметр Down тоже не смог передать на удаленный NAS.Я так понимаю вы взяли стоковые примеры скриптов OnConnect/OnDisconnect за основу. По неизвестной причине, rscriptd по умолчанию передает меньше параметров. А именно, login, ip, id. То есть UserParams будут идти начиная с 4-го аргумента. В таком раскладе все передает нормально. Вот только я теперь не знаю, что будет более правильно сделать: исправить скрипты (тогда непонятно почему локальные скрипты и rscriptd разные) или исправить rscriptd (и сломать обратную совместимость). Как вариант просто сделать проверку на стандартные параметры. Все что попадает в выборку - стандартные, все остальное - пользовательские. Тогда и совместимость останется и будет как универсальное решение.
madf Опубліковано: 21 жовтня, 2016 Опубліковано: 21 жовтня, 2016 ... Как вариант просто сделать проверку на стандартные параметры. Все что попадает в выборку - стандартные, все остальное - пользовательские. Тогда и совместимость останется и будет как универсальное решение. Не вижу как это решает проблему. stg: login ip cash id dirs <userparams> rscriptd: login ip id <userparams>
GrDEV Опубліковано: 21 жовтня, 2016 Опубліковано: 21 жовтня, 2016 Все. Понял. Наверно корректней будет внести изменения в rscriptd Считаю что данные должны передаваться в одинаковом формате для stg и rscriptd
nightfly Опубліковано: 21 жовтня, 2016 Опубліковано: 21 жовтня, 2016 Эв, эв - какое сломать совместимость, мсье? Народ, вообще повергает в ужас, что им придется, что-то менять, тем более не автоматически, что-то за пределами директории www/billing.
vlad5503 Опубліковано: 22 жовтня, 2016 Опубліковано: 22 жовтня, 2016 Я поддержу предложение GrDEV. В текущей ситуации на боевых серверах трафик управляется и рулится на одном серваке для группы юзеров(серверов несколько). Решили управление свести в одно ПО для нескольких серверов доступа(NAS). В процессе подготовки серверов обнаружены недочеты(я чуть ранее писал). В итоге на данный момент из-за невозможности передать Passive пришлось начать составлять скрипт чтобы глобально переписать Userdata0(сейчас используется как идентификатор параметра услуги для администраторов сети) для передачи его на удаленный NAS. Т.к. параметр Passive имеет значимую роль, я все же буду ждать исправления от авторов. Чтоб я мог в будущем использовать Userdata0 по текущему назначению, а Passive по прямому назначению. Благодарности авторам за Stargazer.
madf Опубліковано: 22 жовтня, 2016 Опубліковано: 22 жовтня, 2016 Я поддержу предложение GrDEV. В текущей ситуации на боевых серверах трафик управляется и рулится на одном серваке для группы юзеров(серверов несколько). Решили управление свести в одно ПО для нескольких серверов доступа(NAS). В процессе подготовки серверов обнаружены недочеты(я чуть ранее писал). В итоге на данный момент из-за невозможности передать Passive пришлось начать составлять скрипт чтобы глобально переписать Userdata0(сейчас используется как идентификатор параметра услуги для администраторов сети) для передачи его на удаленный NAS. Т.к. параметр Passive имеет значимую роль, я все же буду ждать исправления от авторов. Чтоб я мог в будущем использовать Userdata0 по текущему назначению, а Passive по прямому назначению. Благодарности авторам за Stargazer. Тут нечего исправлять, все работает. Буду ли я приводить параметры скриптов rscriptd к параметрам скриптов stg я пока не решил. Вероятно в версии 2.4 нет.
Рекомендованные сообщения
Создайте аккаунт или войдите в него для комментирования
Вы должны быть пользователем, чтобы оставить комментарий
Создать аккаунт
Зарегистрируйтесь для получения аккаунта. Это просто!
Зарегистрировать аккаунтВхід
Уже зарегистрированы? Войдите здесь.
Войти сейчас