About Forum Blogs NOC Docs Downloads KB Issues Code CI Registration

nocproject.org

#nocproject.org at irc.freenode.net log.
Back to nocproject.org Back to IRC log index
Date: 31.03.2014
TSergey #
03:43
кто-то кодит? вот это в связи с чем такое? не соображу
03:43
>>> mo = ManagedObject.objects.filter(address='0.0.0.0')
03:43
>>> print mo
03:43
[<ManagedObject: SAE>]
03:43
>>> mo = ManagedObject.objects.filter(address!='0.0.0.0')
03:43
Traceback (most recent call last):
03:43
File "<console>", line 1, in <module>
03:43
NameError: name 'address' is not defined
lexus-omsk #
04:18
TSergey так нельзя, знак равенства в данном случае не совсем то, что ты думаешь... ен знаю, как это объяснить правильно
04:19
попробуй вместо filter взять exclude, наверное, это тебе и нужно
TSergey #
04:19
наверное я понял, это именно параметр фильтра
lexus-omsk #
04:19
да
04:19
https://docs.djangoproject.com/en/1.6/ref/models/querysets/#id4
admin_ #
04:19
Я как раз монгокодингом занялся;
TSergey #
04:21
lexus-omsk: преогромное тебе спасибо
lexus-omsk #
04:22
доки по django и python - наши друзья :)
admin_ #
04:27
Мня volodin обманул, говорил что после перехода в develop я смогу REST дернуть alarm по обекту.. Но url для этого так и не дал.
04:27
Посему лабаю питоновский скрипт который м могу лазит и алармы по объекту выбирает.
TSergey #
04:30
lexus-omsk: да, но я пока не настолько в теме :)
admin_ #
04:31
вот получил новое откровение в алярмах "managed_object" - какаято id которая никак не корелирует с sa_managedobject.id
04:34
Кто знает структуру базы NOC, надо найти соотведствие sa_managedobject.address (IP объекта) и с noc.alarms.active поле "managed_object"
lexus-omsk #
04:36
admin_: /fm/alarm/?managed_object=айди_объекта
04:36
такой урл вроде
04:38
в ответ получишь json со сиском алармов
04:38
урл подсмотрел в FireBug
admin_ #
04:47
Супер, url у меня работает и кажись есть соотведствие sa_managedobject.id и noc.alarms.active "managed_object"
04:47
Перепишу скрипт через REST
05:14
REST кто-то к NOC подключал? Как в питоне авторизацию проходил? С мозилы куки дергать?
05:16
urllib2.HTTPError: HTTP Error 403: FORBIDDEN
freeseacher #
05:32
Коллеги, а как с помощью регулярки в Group выдать нужное мнен значение, а не то что там написано ?
05:32
у меня в FM Есть сообщение которое надолно содержать username но его не содержит в опеределенных условиях. я хочу в такой случае подставить значение
dvolodin #
05:35
там можно просто переменную определить
freeseacher #
05:36
вот пример у меня
05:36
Mar 30 16:10:06 109.194.80.137 bsr01nsk: 15284640 Base USER-MINOR-cli_user_io-2009 [shirokih]: User from 212.33.233.41: bsr01-nsk>config>log# show log
05:36
Mar 31 10:19:56 212.33.234.161 bsr02perm: 54 Base USER-MINOR-cli_user_io-2009 []: User from CONSOLE: bsr02-perm# exit all
05:36
USER-MINOR-cli_user_io-2009 \[(?P<user>.+)\]: User from.+: (?P<command>.+)$
05:36
на первый случай бъется
05:37
а на второй нет
05:37
но юзера я хочу ка кто возвращать
dvolodin #
05:43
сделай переменную user
05:43
в правиле
zi_rus #
05:43
admin_, <схема>://<логин>:<пароль>@<хост>:<порт>/<URL‐путь>?<параметры>
05:44
http://user@pass:noc/....
freeseacher #
05:45
аа
05:45
вот оно как
05:45
а я все думал зачем оно там
admin_ #
05:48
zi_rus я для rest использую стандартный питоновский urllib2
05:50
Пробывал много, сей час смотрю http://www.voidspace.org.uk/python/articles/authentication.shtml
freeseacher #
05:52
admin_, посмотри на requests
05:52
хорошая бабилиотека. простая
genkuzya #
05:55
dvolodin: подскажи пожалуйста что не так? Устанавливаю на ФриБСД 10, разнородные ошибки получаю при установки со скриптом, последнее было: Could not find any downloads that satisfy the requirement noc-pkg-handlebars==1.0.0 (from -r etc/requirements/noc.txt (line 21))
freeseacher #
05:57
dvolodin, нее
05:57
переменная это не то
05:57
она теперь все время главенство берет
05:58
надо сделать второе правило!
05:58
я понял
zi_rus #
05:58
народ, опять вернулся к своему приложению, пытаюсь оживить, вот самое просто до чего упростился http://pastebin.com/gEkDjqPe - не работает, крешится, если комментирую строчку @view... то креши перестают
05:58
что за фигня?
06:04
креш примерно так выглядит http://pastebin.com/muM0tYgd
freeseacher #
06:09
zi_rus, а зачем у тя так много экранирующих символов ?
06:10
это ты \n так пофиксил 7
zi_rus #
06:10
freeseacher, да, креши криво отображаются
06:11
передвинул проблемню строчку в конец, теперь другая ошибка
06:11
http://pastebin.com/RbLwkuCH
freeseacher #
06:11
sa/apps/INTERNET/views.py дык где
zi_rus #
06:11
на месте
freeseacher #
06:11
дык
06:11
<type 'exceptions.IndentationError'>\
06:11
unexpected unindent (views.py, line 19)\
06:11
на 19 строке херня с идентом
zi_rus #
06:11
@view(method=["GET"], url=r"^$", access="read", api=True)
06:11
def main(self, request):
06:11
return 1
06:11
сделал так
06:12
заработало
buggy-funhouse #
06:16
всем ку
dvolodin #
06:33
zi_rus: советую обозвать функцию не main, а api_main
zi_rus #
06:33
хорошо
dvolodin #
06:33
что пытаешься получить в приложении?
zi_rus #
06:34
dvolodin, хочу указать параметры, нок скриптом готовит конфиг, возвращает конфиг, я проверяю что все правильно, подтверждаю и он его применяет на железо
dvolodin #
06:35
а
zi_rus #
06:35
проблема в том что я не знаю как в extjs разные части формы отправлять в разные функции
06:36
вот у меня кнопка и текстовое поле
06:36
http://pastebin.com/mG4NAvSE
06:37
в ответ на POST скрипт возвращает { "config" : "123" }
06:37
но в поле почему-то не пишется этот результат
dvolodin #
06:41
ты бы кнопки явно создавал
06:41
и обработчики выносил бы в класс
06:41
с этими up(....) застрелишься
zi_rus #
06:42
легко сказать, я копи-пизжу код из prefixlist builer, javascript вызывает у меня жуткое желание начать убивать
dvolodin #
06:43
через пару лет пройдет
06:43
на JS тоже можно писать не-быдлокод
zi_rus #
06:43
мне бы эти пару лет прожить
06:44
никого не убив
06:45
если бы сабмит не был нужен то без проблем я бы уже релизовал задумку, данные отправляются и я могу получить их в скрипте
lexus-omsk #
06:52
у меня складывается впечатление, что в project management не хватает одной кнопочки...
06:52
чтобы можно было менять состояния сразу всех ресурсов, привязанных к проекту
06:52
расторг длговор клиент - и сразу так: раз - и пометил всё как expired
zi_rus #
06:53
lexus-omsk, а еще стилей, чтобы расторгнутых и випов можно было раскрашивать
lexus-omsk #
06:54
можно
buggy-funhouse #
07:03
и аватарки!
TSergey #
07:18
а в пируле совсем никак русский текст?
07:19
в шелле ест тот же код, в пируле ругается
zi_rus #
07:19
а ты пируль по=русски пишешь?
TSergey #
07:19
слегка :)
07:19
CITY=u'Томск'
07:29
dvolodin: в пируле присутствие кириллицы совсе нельзя? CITY=u'Томск' --- говорит
07:29
'ascii' codec can't encode characters in position 792-796: ordinal not in range(128)
07:29
шелл съедает спокойно
zi_rus #
07:35
народ, вопрос по питону. есть список переменной длины это список интерфейсов, как проще всего сделать проверку что все интерфейсы принадлежат или не принадлежат одному МО?
07:36
скажем
07:36
[<Interface: bb-77-1: Gi0/1/0/15>, <Interface: bb-77-2: Gi0/1/0/15>]
07:36
это разные мо
07:36
а может быть что оба интерфейса будут на одном МО
lopatich #
07:37
zi_rus, а вроде как было можно из инвентори выбирать конкретно по MO
zi_rus #
07:37
lopatich, may be но у меня этот список получается из другого запроса
07:37
Interface.objects.filter(vc_domain=vcd.id)
07:38
мне надо знать и соответсвенно сделать выбор
07:38
если это один МО то одно поведение, если несколько (в 99% случаев просто два) разных, то другое поведение
B_M #
07:39
set([mo.ip for mo in [<Interface: bb-77-1: Gi0/1/0/15>, <Interface: bb-77-2: Gi0/1/0/15>]])
07:39
может так?
zi_rus #
07:39
и что в этом случае будет?
B_M #
07:39
получишь уникальные ip к примеру
zi_rus #
07:39
ммм
07:40
получить получу, хоть имя хоть ip адальше то что
B_M #
07:40
если получится более одного ip, значит интерфейсы принадлежат более чем одной железке
07:40
как то так
zi_rus #
07:41
if len(set(...)) >1: - так я понимаю? в сет попадет только уникальный?
_4ePTeHok #
07:41
zi_rus, у тебя в каждом объекте интерфейса есть 'managed_object'
zi_rus #
07:42
знаю, есть
_4ePTeHok #
07:42
ну и if i.managed_obgect bla bla bla
zi_rus #
07:47
с сетом красивее
07:47
получилось что надо
B_M #
07:48
это успех )
zi_rus #
07:48
dvolodin, мы тут решили что поля style в project management не хватает
dvolodin #
07:49
:)
07:49
zi_rus: пидорасов голубым красить?
zi_rus #
07:49
да
07:49
и это тоже
dvolodin #
07:54
тогда предлагаю новый event class сделать
07:54
Gender | Orientation Changed
07:54
:)
zi_rus #
07:55
только гомосятины нам тут ен хватало
07:55
dvolodin, установил интерфейсу vcdomain а снять не могу, по Esc закрывается окно
lexus-omsk #
08:00
что верно, скорее всего, для любого комбобокса в гриде, т.е. что профиль, что проект...
08:01
или как это называется, inline editor?
zi_rus #
08:05
dvolodin, и я все еще жажду поле project для subinterfaces и возможно ip.address
_4ePTeHok #
08:44
жажда? Спрайт - не дай себе засохнуть
buggy-funhouse #
08:51
_4ePTeHok: привет +)
08:52
ты всё пишешь алгоритм линковки при дискавери?)
lopatich #
08:58
zi_rus, так. мое приложение таки зашевелилося )) я теперь не пойму зачем и где темплейт используется?
zi_rus #
08:58
какой темплейт
lopatich #
08:59
sa/apps/network_info/templates/
08:59
как собсна и в префиксбилдере
08:59
тоже есть темплейт, но не пойму как оно вызывается
zi_rus #
09:00
зачем? у меня там пустая папка, нах оно не надо
lopatich #
09:00
ок. т.е. все эти Application.js рулится?
zi_rus #
09:01
ну да, я там все писал
09:01
получилась такая себе формочка
09:01
если не знаешь, вот подсказка как в питоне данные получить
09:01
def api_main(self, request):
09:01
req = request.POST
09:01
po = req['project']
09:01
customer = req['customer']
09:02
req = request.POST - сюда кладется запрос, а потом дергаешь из него переменные
09:03
я пока медитирую как мне вычислять свободный номер интерфейса
09:03
виртуального
09:04
например у меня BVI60000 - BVI65000 выделены под особые нужды, и я хочу найти свободный номер из них. что-то херня одна в голову лезет
mikevlz #
09:05
zi_rus: ты же пользуешься жабир-оповещением?
lopatich #
09:06
zi_rus, ну а for i in range(60000, 65000) и проверять на существование такого интерфейса, если нету - то break
zi_rus #
09:06
mikevlz, хотел, руки не дошли, нок с communigate не дружит, надо локальный сервер поднимать, ну или чтобы нок сам был сервером
mikevlz #
09:06
мммм
09:06
а я вот поднял...
zi_rus #
09:06
и как
mikevlz #
09:06
так он, сука, Львом Толстым прикидывается... при каждом падении линка
zi_rus #
09:07
:)
09:07
тык да, там в письмах такие шаблоны захерачены
mikevlz #
09:07
ладно, придется свой темплейт уведомления хреначить...
09:07
а на линкдаун/ап я шаблонов не нашел
zi_rus #
09:08
mikevlz, пинай Володина по почкам, я уже ему намекнул что текущая рассылка в почту ни о чем, он обещал подумать, можно и твою тему к той же думке приклеить
09:08
mikevlz, там на алармы общий шаблон
mikevlz #
09:09
этада
zi_rus #
09:09
lopatich, подумаю, над твоим вариантом, из меня прогер как из говна пуля, очевидные решения не видны
lopatich #
09:11
zi_rus, я только не знаю, как фильтровать в SubInterface.objects.filter... можно ли там искать "именование" интерфейса.
09:12
zi_rus, ну я в питоне не силен в принципе. опыт программерства в основном пхп да баш-скриптинг
lexus-omsk #
09:19
mikevlz у тебя помню был пример pyrule для классификации интерфейсов - поделишься? а то на dpaste протух с прошлого года
mikevlz #
09:21
lexus-omsk: https://dpaste.de/QfHA
lexus-omsk #
09:22
спасибо, но не совсем то, расчитывал увидеть там работу с вланами, а то что-то я затупил на этом месте
lopatich #
09:25
а кто нить ротейтит ноковские логи? а то чета пока тестюкал - они по распухали не слабо
Kostua #
09:30
lopatich: делаю так для всех: logsize = 5000000 logfiles = 5 хранить 5 файлов по 5 Мб
lopatich #
09:34
а 0 - это анлимитед?
mikevlz #
09:36
lopatich: http://2ch.hk/b/src/1396251035183.jpg
lopatich #
09:38
mikevlz, бебебе )
09:40
чета опять не таг с моим приложением... когда view.py был почти пустой - pyc создавался. когда делал что-то там не так - нок крашился, сейчас не крашится, но и pyc не создается %(
admin_ #
09:41
dvolodin: на глаз db.noc.alarms.active.find() выдаёт на порядок меньше Alarm-ов чем в NOC вебке...
09:44
И еще, можно в json вывод с http://x.x.x.x/fm/alarm/?managed_object=222 добавить "vars" c db.noc.alarms.active
09:47
freeseacher: написал скрипт по выборке алярмов с девайса через REST и напрямую с mongodb. C базы брать лучше, там есть interfaces и можно легко выбирать алярмы по конкретному порту. а через REST сего не сделаешь..
mikevlz #
09:51
напиши свою функцию для REST
09:51
там несложно
admin_ #
09:54
где она лежит? я поправлю.
mikevlz #
09:55
гдето в fm/apps/alarm/views.py наверное...
09:56
добавляешь туда функцию с определенным URL, потом дергаешь ее...
zi_rus #
10:36
mikevlz, нука нука, это как
mikevlz #
10:36
ну кататак
zi_rus #
10:39
dvolodin, а ты про классы в js и как лучше делать, можешь рассказать? так чтобы идиот понял
MindGames #
10:43
всем привет %)
10:45
подскажите, кто может, делал резервные каналы себе. У меня затык возник.. Вот я оператор. Получаю канал от вышестоящего оператора. Плюс, две сетки /24 белых адресов.. все прекрасно работает. но иногда канал от вышестоящего оператора ложится. Вот как
10:45
мне зарезервировать это? Ведь я ж не смогу переключить клиентов с белыми IP на канал от другого оператора. Там же эта сеть не маршрутизируется, верно?
mikevlz #
10:45
сетки чужие?
MindGames #
10:46
сетики для резервного оператора будут чужие, конечно. ну а так, сети мои. моего оператора
10:46
BGP у нас нет
zi_rus #
10:46
получать свою АС
mikevlz #
10:46
получай AS и поднимай быгыпы
zi_rus #
10:46
и свои адреса
MindGames #
10:46
просто статика на шлюз вышестоящего оператора (там сетка /30). а они на нас маршрутизируют 2 сети.
10:46
хм.. то есть без BGP тут ни как?
zi_rus #
10:46
никак
MindGames #
10:47
пля.. :(
zi_rus #
10:47
или нат
freeseacher #
10:47
можно без bGP
zi_rus #
10:47
клиентам серые адреса
MindGames #
10:47
ну вот я про нат и подумал.. т.е. надо будет на того оператора все сети натить.
freeseacher #
10:47
но время сходимости будет конское
zi_rus #
10:47
натить в одну сторону одними адресами
freeseacher #
10:47
а что бы красиво надо BGP да.
MindGames #
10:47
серые не получится. но ведь белые адреса тоже можно за нат спрятать?
zi_rus #
10:47
в другую другими
10:48
натить белые тоже можно, но это порно в самой жестокой форме
freeseacher #
10:48
к тому же под нат нужны ресурсы
MindGames #
10:48
BGP быстро не организую. да и не факт, что резервный оператор сможет предоставить такое.
freeseacher #
10:48
и учет этого ната. ибо СОРМ
MindGames #
10:48
ну нам временно надо... на день - два максимум, когда основной ложится
zi_rus #
10:49
один хер надо
MindGames #
10:49
пля.
freeseacher #
10:49
основной канал может лечь на день два ?
zi_rus #
10:49
раз на два дня, два на два дня
freeseacher #
10:49
что б у меня был такой Sla
MindGames #
10:49
ну, обычно если и ложится, то за пол-дня восстанавливают. но иногда бывает, что это очень не вовремя
zi_rus #
10:49
freeseacher, на безрыбье я думаю выбора нет
MindGames #
10:50
ладно. если с BGP, то как надо? Вышестоящий у меня ТТК. он понятно, сможет мне включить BGP. А вот резервный оператор у меня будет скорей всего, обычный провайдер. Типа билайна, или Ростелекома. они ж мне не включат BGP
freeseacher #
10:51
чо бы нет
10:51
как договоришься
zi_rus #
10:51
включат, если хорошо попросишь
MindGames #
10:51
понятно.
freeseacher #
10:51
я думаю у тя даже не плохие шансы получить /22
10:51
от райпа
zi_rus #
10:51
ты же не физиком будешь подключаться
MindGames #
10:51
нет. не физиком.
10:52
так мне от резервного оператора тоже надо будет брать сети чтоли?
zi_rus #
10:52
freeseacher, если в нагрузку ipv6 возьмет
freeseacher #
10:52
нет
MindGames #
10:52
или мне достаточно будет в AS свои сети запихнуть - а они уже будут маршрутизироваться через любого провайдера?
freeseacher #
10:52
MindGames, тебе надо просто надыбать адресов
MindGames #
10:52
ну адреса то есть. две /24 сетки
10:52
может, буду еще брать позже
10:53
пока хватает их
10:53
я просто с BGP ни когда не работал :( только теоретически изучал и то давно
zi_rus #
10:53
получай свои, на чужих резерва не сделаешь
MindGames #
10:55
ну так они и так наши вроде :)
10:55
inetnum: 62.33.167.0 - 62.33.168.255
10:55
netname: SEKRD-NET
10:55
descr: (RS000329) Svyazenergo,
10:55
descr: Krasnodar, Russia
10:55
country: RU
10:55
admin-c: CBM12-RIPE
10:55
tech-c: CBM12-RIPE
10:55
status: ASSIGNED PA
10:55
mnt-by: TRANSTELECOM-MNT
10:55
source: RIPE # Filtered
zi_rus #
10:56
MindGames, свои это значит вашей as
MindGames #
10:56
ну вот AS надо получать, да..
_4ePTeHok #
10:57
это PA
10:57
а вам бы PI
10:58
вас с бгп и ас ростелека непустят в стык)
10:58
надо свою ас
10:59
и к ней адреса уже прикреплять
10:59
железки то на бордере, умеющие бгп есть?
10:59
хотя смотря какой трафик
10:59
а то можно и фряшкой-линуксом обойтись
11:00
у нас, когда я пришел до 800Мбит FD фряшка на хороших сетевках от интела роутила с несколькими FV, и ничо.
11:01
в принципе и больше можно, сетевки только выйдут недешево
MindGames #
11:02
у меня на бордере 7206 стоит. с NPE-G1, кажется. можно на G2 махнуть. Канал сейчас 300 Мб/с
11:03
коллеги, спасибо большое за подсказки ;) буду копать.
11:03
а пока пойду поем.
_4ePTeHok #
11:03
эм, ну смотри
MindGames #
11:03
а то уже к вечеру дело почти.. а я еще не обедал
_4ePTeHok #
11:03
тебе даже FV То необязательно
11:04
можно просто 2 дефолта держать
11:04
нам когда расширять канал потребовалось - мы воткнули старую 6506+суп2
11:05
+пфц+мсфц которое
MindGames #
11:05
_4ePTeHok, глупый вопрос, но все ж. чем FullView отличается то? просто таких деталей про BGP я уже не знаю. надо вспоминать теорию будет.. помню только что есть еше iBGP :) это для маршрутизации внутри своей сети.
lopatich #
11:05
MindGames, G1 если ты включишь нат умрет. да и G2 тоже скорее всего
_4ePTeHok #
11:05
фв - это вся таблица маршрутизации
11:05
там под 400к префиксов вроде
lopatich #
11:05
MindGames, фуллвью содержит порядка 340к маршрутов.
_4ePTeHok #
11:05
было) счас хз
MindGames #
11:05
_4ePTeHok, вот меня смущает, а что значит не ВСЯ таблица? :)
11:05
lopatich, нет, конечно же, там NATа нету.
lopatich #
11:05
_4ePTeHok, ща примерно стока же. +-
_4ePTeHok #
11:05
т е в каждый префикс
11:06
роут у тебя будет в бордере память жрать
11:06
+ умножай это на количество провайдеров с которыми у тебя стык
lopatich #
11:06
ээээээ. с чего это????
_4ePTeHok #
11:06
ну немного не так выразился
lopatich #
11:07
маршруты будут замещаться бестом. т.е. в таблице будет тока 1
_4ePTeHok #
11:07
роут таблица будет всегда примерно одинаковыми по количеству
11:07
но второй фулл - он же тоже в памяти будет лежать
buggy-funhouse #
11:07
сейчас около 500100 записей
_4ePTeHok #
11:07
это с в6?
buggy-funhouse #
11:08
хм
11:08
возможно
11:08
у райпа хороший сайт
11:08
но хер что найдёшь
11:08
как и у cisco
lopatich #
11:08
)))))))
_4ePTeHok #
11:09
109.239.138.9в общем мы воткнули 6506+суп2 и оставили по дефолту от аплинков
11:09
упс)
11:09
плюс пиринги
11:12
итого около 140к оно держит
11:12
даже больше
11:12
главное фильтровать, чтобы не перелилось)
11:14
128750 network entries using 14548750 bytes of memory
11:14
554471 path entries using 26614608 bytes of memory
11:14
lopatich, я про вот это говорил
11:15
path будут суммарно от всех нейборов
lopatich #
11:15
_4ePTeHok, ну я понял о чем ты )) не сразу )
_4ePTeHok #
11:15
в общем надо просто определиться - а нужен ли он, ФВ, или нет
11:16
это если балансировками заниматься...
buggy-funhouse #
11:19
почему просто цепочку в маршруте не прописать и 2 аплинка иметь
_4ePTeHok #
11:19
цепочку - ето чего?)
buggy-funhouse #
11:21
цепочку из одной и той же AS
lopatich #
11:26
buggy-funhouse, у него нет АС ))
buggy-funhouse #
11:26
ff
lopatich #
11:26
у него есть 2 блока /24 от 2-х провайдеров
11:27
автоматом переключаться он сможет только включив нат, и выдавая своим юзверам серые ип
buggy-funhouse #
11:30
и AS нет у енго?
11:30
да, туплю
_4ePTeHok #
11:32
ага, возьмет ас рт)
11:32
и впендюрит им в стык igp
lopatich #
11:33
бгп с одной стороны настраивать бестолку, а РТ врядли настроит такое со своей стороны )
_4ePTeHok #
11:41
о чем и речь)
MindGames #
11:49
:)) как все перевернули :)
11:49
у меня от одного оператора две сетки ;)
11:50
и igp тоже не настроен.
buggy-funhouse #
11:52
тебе нужна as и сеть от ripe
MindGames #
11:53
да я уже
11:53
это понял :)
e_zombie #
11:54
хахахаха.
11:54
кулстори
11:56
в биллинге Ростелекома (волга и тд) который стартIP переполнился ID в базе. в результате полегло всё нахуй. саратов был ВТОРЫМ :) филиалом который на это попал.
buggy-funhouse #
11:56
о_О
e_zombie #
11:57
и такой биллинг по всему волжскому региону. народ альтертабле делал :)
_4ePTeHok #
12:17
e_zombie, я помню еще как году в 2003 стартойпи внедряли в дальневосточном филеале
e_zombie #
12:18
ну а теперь это гавно стоит везде
_4ePTeHok #
12:18
куча народу бегала с квадратными глазами когда счета понаприходили по 8-10 тыс за телефоны
12:18
и бумажка как счас помню висела у кассы - "в связи с внедрением системы старт просим оплачивать только те счета, которые не вызывают подозрений")
zi_rus #
12:26
народ, научите дебажить javascript
buggy-funhouse #
12:34
"в связи с внедрением системы старт просим оплачивать только те счета, которые не вызывают подозрений") Это пять
MindGames #
12:35
да, меня тоже позабавило ;)
_4ePTeHok #
12:36
zi_rus, ставишь фаербаг
12:36
и дебажишь)
zi_rus #
12:36
поставил, как дебажить не понял
_4ePTeHok #
12:36
можно дебаг вывод впендюривать с выводом переменных
12:36
жмешь ф12
12:36
внизу консолька
12:37
там включаешь все
zi_rus #
12:37
консоль видел, ничего не понял
_4ePTeHok #
12:37
при загрузке будет выплевывать строками какие js грузит
12:38
жмешь консоль - и внизу табы есть
12:38
отладочная инфа
zi_rus #
12:39
табы вижу
12:39
пощелкал по ним
12:39
все еще ничего не понял
12:39
:)
_4ePTeHok #
12:39
страничку решфрешни
zi_rus #
12:39
не, я реально не вдупляю
_4ePTeHok #
12:39
у тебя там появятся
12:39
строчки defining bla bla bla
zi_rus #
12:40
нет такого
_4ePTeHok #
12:41
косолька активизирована?
12:41
она отключена по дефолту вроде
12:42
на табе "консоль" правой - включить панель
12:42
активируешь, потом ниже таб All
12:42
педалишь
12:42
и рефрешишь страничку с ноком
zi_rus #
12:44
нет, ну это да, там она писала про enable. все активно
12:44
нет просто никаких defining
12:45
ну вот есть мом приложение
12:45
я жму кнопку
12:45
отправляется POST
12:46
получает ответ
12:46
а куда смотреть почему оно не пишет в текстовое поле
12:46
питон в консоли хотя бы матерится
12:46
а тут телепатия нужна
lopatich #
12:49
а можно у нока как-то арп спросить?
zi_rus #
12:49
get_arp
lopatich #
12:50
это метод у MO?
12:52
zi_rus, я кстати победил свой приложение )) у меня уже все пишется в текстовое поле )
mikevlz #
12:52
напомните дебилу, в каком месте у каталистов аналог traffic segmentation?
zi_rus #
12:52
lopatich, научи
12:52
lopatich, mo.scripts.get_arp
lopatich #
13:09
чета нету в mo.scripts get_arp :(
e_zombie #
13:12
./noc wipe managed_object 10.64.104.104
13:12
/noc wipe user name
13:12
/noc csv-import sa.managedobject -r skip -v 3 ../fttb-20130626.csv
13:12
/noc debug-script Cisco.IOS.get_version asw2-72-eng
13:12
/noc debug-script commands sx8-pu76 'commands=show ver","show module","show int brief'
13:12
/noc index --query <критерий поиска>
13:12
/noc gridvcs --mirror
13:12
/noc gridvcs --get <имя железки>
13:12
/noc beef --view <file or UUID>
lopatich #
13:30
тьфу. его оказывается надо get_arp()
13:30
йомайо... а какие-нить параметры оно разумеет? типа указать интерфейс\влан?
zi_rus #
13:35
типа скобочки для этого
lopatich #
13:36
>>> s.name
13:36
u'Vl 412'
13:36
>>> mo.scripts.get_arp(interface=s.name)
13:36
>>>
13:36
чета не выходит цветочек вяленькой %(
zi_rus #
13:39
ну дык, скрипт не предусматривает передачу порта
13:39
допили скрипт
lopatich #
13:40
хм. а когда я в консоли тыркаю таб - оно подсказывает, что там можно указать interface. да и не ругается жеж...
zi_rus #
13:40
может и интерфейс надо допиливать
13:40
хз
lopatich #
13:42
кусим тогда. в питоне отфильтрую )
14:17
не пойму... в консоли выполняю - все выполняется... а в вебе - хер %(
14:47
о. зии ))
Vyacheslav #
16:16
Ребята кто нибудь сталкивался с такой проблемкой? При импорте виланов с устройства появляется всплывающее окно в котором есть только кнопки удалить
zi_home #
16:17
обновись
Vyacheslav #
16:22
3 дня назад только поставил нок
16:27
Как на счет коммутаторов компании Enterasys?
zi_home #
16:30
небось на default ветке, в develop все поправлено, даже релиз в январе обещали :)
Vyacheslav #
16:31
Да на дефолте. Запустил скрипт upgrade ничего не поменялось
16:37
Пробую на develop
dvolodin #
16:37
Vyacheslav: BRANCH=develop в etc/upgrade.conf
Vyacheslav #
16:39
Да да, я в курсе, спасибо. Обновляюсь
16:41
Дмитрий, а вы в своей работе используете UML при проектировании ПО?
dvolodin #
16:51
его кто-нибудь использует вообще? :)
zi_home #
17:35
dvolodin, можешь подсказать если не сложно. вот налабал свое приложение, с views.py все хорошо, а вот с жаба-мордой разобраться не могу, вот морда выглядит так http://pastebin.com/m05HViac , в скрипте я прописал тупо возвращать return { "config": "qqq", "mo" : "aaa" }. почему в те
17:35
кстовое поле в конце не пишется этот самый qqq?
17:37
я уже мозг взорвал себе, это все похоже на магию вуду, шаманствую, ничего не помогает, пойду козла в жертву принесу что ли
lopatich_home #
17:42
всем снова трям
17:42
захватил меня нок )) уже и из дома пишу это приложение ))
zi_home #
17:48
lopatich_home, посмотри на это безобразие, может у меня глаз замылился, почему оно не хочет из return { "config": "qqq", "mo" : "aaa" } заполнять текстовое поле. http://pastebin.com/m05HViac
lopatich_home #
17:50
zi_home: а в питоне ты как его отдаешь?
zi_home #
17:51
тупо return { "config": "qqq", "mo" : "aaa" }
lopatich_home #
17:51
ай. пропустил )
17:52
ээээээ
17:53
return { "config": "qqq", "mo" : "aaa", "success" : True }
17:53
ты какбы забыл )))
zi_home #
17:53
саксесс это красивости
lopatich_home #
17:53
оно ж следит за когда success прилетит
17:53
нет
zi_home #
17:53
да??
lopatich_home #
17:53
success: function(form, action) {
17:54
типа когда суксес трю - вот функция ;)
zi_home #
17:55
ааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааа
17:55
заработало
lopatich_home #
17:55
ты мне лучше теперь подсказывай
17:55
)))
zi_home #
17:55
не, мне последнюю распоследнюю багу починить, поле на весь экран растянуть надо
17:56
оно почему-то с дефолтными размерами малипусенькое в углу висит
lopatich_home #
17:56
http://pastebin.com/s37Jj5xS
17:56
там закоменчен кусок кода с get_arp()
17:57
вот так работает, но ессна не выдает арп
17:57
раскоменчиваю - скрипт вылетает по таймауту
zi_home #
17:59
скорее всего начинает дергать get_arp для всех железок
17:59
а нок это медленно делает
17:59
оганичь одной железкой и проверь
18:01
или там и так одна железка
18:01
lopatich_home, объясни в двух словах чего это она делает
Vyacheslav #
18:04
Начал обновлять с ветки default на ветку develop
18:04
Начали появляться ошибки
18:05
RuntimeWarning: invalid Python installation: unable to open /opt/noc/local/include/python2.7/pyconfig.h (No such file
lopatich_home #
18:05
zi_home: там и есть 1 железка. кароче. есть поле network в вебе. по нему из ипам дергается сеть, там перебираются ип, пока не найдется mo. на нем делается гет_арп
18:06
Vyacheslav: а питон у тебя какой версии?
18:06
zi_home: если я это делаю в нок шел - все работает
18:07
и выполняет примерно секунд за 5. не думаю что на приложение таймаут такой маленький
Vyacheslav #
18:07
Python 2.7.3
lopatich_home #
18:07
да и там в файлед_скриптс видно, что именно гет_арп вылетел по таймауту на этой железке. а если я делаю из ран таск гет_арп - все работает
zi_home #
18:08
хм
lopatich_home #
18:09
Vyacheslav: hg pull -u делал?
Vyacheslav #
18:15
Что делает эта утиль? Из под кого её вызывать?
lopatich_home #
18:16
я из под рута делал )
18:16
cd /opt/noc && hg pull -u
18:16
hg - это меркуриал
18:17
http://ru.wikipedia.org/wiki/Mercurial
Vyacheslav #
18:18
no changes found
lopatich_home #
18:18
Vyacheslav: а мне вот интересно - а как ты без правки конфигов начал на девелоп бранч переходить?
18:19
root@noc:/opt/noc# cat .hg/branch develop
18:19
тьфу. кароче - правь этот файлик
18:19
.hg/branch
18:20
и у тебя будут траблы с postgis скорее всего
Vyacheslav #
18:20
BRANCH=develop
18:20
только это поменял
lopatich_home #
18:20
этого мало
Vyacheslav #
18:21
cat .hg/branch
18:21
develop
lopatich_home #
18:21
hg pull -u
Vyacheslav #
18:22
та не находит он изменений
lopatich_home #
18:22
после изменений бранча не находит????
Vyacheslav #
18:23
еще до запуска скрипта upgrade я сделал изменения, после этого запускал hg pull -u
18:23
изменений нет
lopatich_home #
18:23
скрипт апгрейд пока оставь
Vyacheslav #
18:24
скорее всего скрипт уже выполнил эту команду и закачал изменения
lopatich_home #
18:24
теюе надо hg перевести в ветку девелоп
Vyacheslav #
18:24
ну в .hg/branch уже забито develop
18:24
значит переведено?
lopatich_home #
18:24
ты после этого делал пулл?
Vyacheslav #
18:25
да
lopatich_home #
18:25
ls include/python2.7/pyconfig.h
Vyacheslav #
18:26
-rw-r--r-- 1 root root 36K Feb 27 22:29 include/python2.7/pyconfig.h
18:26
есть такой файлик)
18:26
а скрипт ругается что его нет. странно
lopatich_home #
18:27
хммм
18:28
/opt/noc/local/include/python2.7/pyconfig.h - нах оно в локал-то лезет ))
18:28
мдя. я хз чего там у тебя наворотилось
Vyacheslav #
18:29
это не всё на что он ругается
18:29
на питоне он не затывается а идет дальше, и в конце у него upgrade-user: : migrate failed
lopatich_home #
18:29
ааа
18:29
ну это я тебе написал ))
18:29
там трабл с 0003 мигрейшн вроде
18:30
кароче
18:30
psql -U postgres
18:30
\с noc
18:30
\i /usr/share/postgresql/9.1/contrib/postgis-1.5/uninstall_postgis.sql
18:30
\q
18:30
./scripts/upgrade
18:30
ты тока нок тормознуть не забудь
Vyacheslav #
18:31
конечно тормознул перед апгрейдом
18:37
да, действительно затык был в postgis
18:39
lopatich_home, спасибо
lopatich_home #
18:47
Vyacheslav: да не за что
18:47
zi_home: ну так идей нет по поводу гет_арп?
zi_home #
18:47
lopatich_home, нет, надо лучше смотреть
18:47
понять в каком месте затык
lopatich_home #
18:48
эээх... а мне дальше без арпа никак... там дальше я хотел по макдб найти свитч и порт...
18:48
zi_home: да в каком месте понятно.. не понятно почему
zi_home #
18:49
если failed script, то может со скриптом что не так
18:49
попробуй упростить
lopatich_home #
18:49
дак он файлед, когда из приложения вызывается. и нифига не файлед, когда я его гоня вообще по всем цискам
zi_home #
18:49
сделай просто запрос на get_arp со статичными даннными и посмотри результат
lopatich_home #
18:51
в смысле подсунуть ему арп руками, и делать дальше?
18:51
а смысл?
zi_home #
18:51
увидишь что вызов нормально проходит
lopatich_home #
18:51
вызов гет_арп?
zi_home #
18:51
mo = ManagedObject.objects.get(id=44)
18:52
mo.scripts.get_arp()
lopatich_home #
18:52
аа. ты в смысле выборку mo...
zi_home #
18:52
самое простое, без обвеса
lopatich_home #
18:52
да я понял. ну ок, проверю. но трабл не в этом имхо )
zi_home #
18:53
уж либо сработает либо нет
lopatich_home #
19:13
zi_home: а как блок закоментить?
zi_home #
19:13
эмм, я просто решетил всегда, но есть что-то вроде /* */
19:13
или наоборот
lopatich_home #
19:24
zi_home: чета я все сломал )) зато теперь выполняется меньше секунды ))
19:24
тока на экране сказочная пустота
zi_home #
19:24
wireshark запусти, там трейсы можно посмотреть
19:25
может и есть более кошерные варианты, но я нашел только этот
lopatich_home #
19:25
на 127.0.0.1??
19:25
а. не. я видать забыл передернуть нок
19:26
тоже самое
19:26
в ручную указал mo и дернул арп.
19:26
и фсе
19:26
%(
19:26
из шела все также работает
zi_home #
19:28
на компе своем, ты же через веб запускаешь
19:28
там если 500 ошибка приходит
19:28
то трейс там же
lopatich_home #
19:29
http://pastebin.com/RtyhFZSu
zi_home #
19:30
и че? виснет или отваливается
19:30
ошибки нужны
19:30
трейсы
lopatich_home #
19:30
угу. виснет, и полное ощущение - что джанго в рестарт уходит. ибо оно тупит тупит на все клики, минуты через 1.5 приходит в себя
zi_home #
19:32
трейсы ищи
19:32
вайршарком лови ошибки
lopatich_home #
19:32
мля. нету у меня на домашнем вайршарка %(.. и ваще тут винда... я уже и так над собой подпрыгнул, что отсюда програмлю ))
zi_home #
19:32
в вебконсоли смотри
lopatich_home #
19:32
вебконсоль?
19:32
это хто?
zi_home #
19:33
firefox?
lopatich_home #
19:33
хром
zi_home #
19:33
там не знаю
lopatich_home #
19:33
лана. кусим. завтра тогда буду дебажить...
zi_home #
19:33
поставь вайршарк на винду, в чем проблема
lopatich_home #
19:34
я еще со снифаю прямо на серваке, может там че увижу
zi_home #
19:34
минутное дело
19:35
на сервере геморно снифать
lopatich_home #
19:35
zi_home: чойта?
19:37
tcpdump -Xs0 -vvv -i interface(можно any но не на всех дистрах) -w /path/to/file host <hostname or ip>
19:37
ну и там and port и т.д. если надо еще ограничить
19:37
полученый /path/to/file кормишь вайршарку ;)
zi_home #
19:37
я просто запускаю шарк и смотрю
19:38
в реалтайме
lopatich_home #
19:38
это когда траффик к\от тебя направлен
zi_home #
19:38
он так и направлен
lopatich_home #
19:38
в реалтайме я ssh-pipe юзаю ;)
19:38
да я не про конкретно сейчас
zi_home #
19:38
от сервера к js клиенту в твоем браузере
lopatich_home #
19:38
я на будущее
19:40
минутное дееело... рестарт требует. все. в пень. пойду заниматься тем, для чего дома винда )))
19:43
забавно, но работает и без рестарта
19:43
кароче - не летит ко мне трейс
19:44
пакет запроса вижу а далее тишина. ничего он не отвечает. тупит в вебе
zi_home #
19:45
тупит это оно скрипт выполняет
lopatich_home #
19:48
лана. надо уже на здоровую голову это делать )
19:48
пойду полетаю ;)
Tweet
Share this page
Share this page: Tweet