nocproject.org
06:16
1. В ipam автодискавери не появляются адреса /32, например с Loopback
06:16
2. В Inventory interfaces не показываются ин-сы Tunnel
06:16
3. не работает interface discavery со старых Cisco switches WS-C3524-XL. конфиг сдергивается.
06:16
4. каков должен быть выхлоп topoloy discavery. поидее он должен все железо соединить и выдать картинку сети ?)
06:17
еще таже история с интерфесами в CISCO3925-CHASSIS
06:17
возможно потому что там есть ин-с Em0/0 в самом начале
06:17
Embedded-Service-Engine0/0 is administratively down, line protocol is down
06:17
Internet protocol processing disabled
 
06:51
3. на чем вылетает? свич старый, как говно мамонта
 
07:01
да старый модель ws-c3524-xl
07:01
но и на новом 3925 тоже ...
 
07:01
надо смотреть, на чем там get_interfaces вылетает
07:01
на новом понятно почему, не знает скрипт к чему отнести интерфейс Em
 
07:02
про 3524 пишет 2012-11-15 09:00:04.460000 	arh-sw0 	10.154.105.9 	Cisco.IOS.get_interfaces 	21 	Feature is not supported on this platform
 
07:02
ну да
07:02
платформа реально странная
07:02
там же только ISL, если мне память не изменяет
 
07:04
Не старее 1900
07:04
про 3925, начало  	<class 'noc.sa.script.exception.CLISyntaxError'> show vlan brief % Ambiguous command: "show vlan brief" START OF TRACEBACK ------------------------------------------------------------------------ File: /opt/noc/sa/script/script.py (Line: 614) Function: cli 607 if isinstance(data, Exception): 608 # Exception captured 609 raise data 610 if not ignore_errors:
07:04
611 # Check for syntax error 612 if (self.profile.rx_pattern_syntax_error and 613 self.profile.rx_pattern_syntax_error.search(data)): 614 ==> raise self.CLISyntaxError(data) 615 # Then check for operaion error 616 if (self.profile.rx_pattern_operation_error and 617 self.profile.rx_pattern_operation_error.search(data)): 618 raise self.CLIOperationError(data) 619 # Echo cancelation 620
07:04
if self.strip_echo and data.lstrip().startswith(cmd): Variables: cmd = 'show vlan brief' cc = 'CLI:show vlan brief' bulk_lines = None cache = {'CLI:show interfaces description': 'show interfaces description\nInterface Status Protocol Description\nEm0/0 admin down down \nGi0/0 up up --- MyBox-Inet ---\nGi0/1 up up ---
 
07:06
посотри, может его в селекторы добавить можно
 
07:07
Em0 ? есть вообще каканить дока, что к чему и в каком порядке ?)
07:08
а то очень много глупых вопросов, например что такое селектор :)
07:09
или как в типовые  скрипты добавить поддержку этих железок
 
07:25
bash777, привет
07:25
с докой беда
07:26
селектор это штука которая по разным критериям выбирает список железа
07:26
используется во всех стрикртах Service activation
 
07:42
уф
07:42
после hg -u pull постапдейт вылетает
07:42
psycopg2.OperationalError: FATAL:  Peer authentication failed for user "noc"
07:42
post-update: 59: syncdb failed
07:42
Terminating
 
07:44
pg_hba.conf настроить надо
07:49
bash777: скрипты лежат в sa/profiles
07:49
тебе нужен Cisco.IOS.get_interfaces
 
07:49
ег оможно править ?
07:49
както потом компилимть надо
 
07:49
можно поправить
07:50
компилировать не надо
 
07:59
тперь постапдейт
07:59
noc.fm.models.OIDCollision: Cannot resolve OID 1.3.6.1.4.1.171.12.1.2.18.1.1.14 collision between AGENT-GENERAL-MIB::agentBscFileSystemServerDomainName and AGENT-GENERAL-MIB::agentBscFileSystemIncrement. Equal preferences
07:59
post-update: 80: sync-mibs failed
08:01
на второй раз прошел
08:02
тперь в вебе не рабоате меню
 
08:03
в смысле "не работает" ?
08:04
_4ePTeHok: все поправил, работает
08:04
один косяк остался
 
08:04
ну слева дерево отркывается, ни одно подменю не отркывается
 
08:05
если несколько раз попереключаться между формой и гридом, появляются дубликаты
08:05
fromField.store, похоже, не чистится
 
08:09
перегрузил барузер, чтото открытлось, чтото нети и ин-с съехал
08:17
а все таки вот рпо это 1. В ipam автодискавери не появляются адреса /32, например с Loopback
08:17
 2. В Inventory interfaces не показываются ин-сы Tunnel
 
08:23
bash777: делай ./noc debug-script get_interfaces -cCOMMUNITY switch
08:23
и смотри на вывод
08:23
может быть их там и нет
 
08:30
bash777, порядок действий таков - если что то не работает на конкретной железке - идем на 
http://bt.nocproject.org, регимся, создаем issue, где описываем проблему и прикладываем полный трейсбэк, либо вывод debug-script. По мелким вопросам - типа при установке трейс, что то
08:30
для понимания работы - прямо в канал задавай вопрос, если нужно - трейсбэк в пастебин прикладываем.
08:32
issue нужны, чтобы банально не потерять проблему и отслеживать ее решение
 
08:40
народ, разрешите задать интимный вопрос из жизни изернет. кто-нибудь понимает ethernet keepalive (configuration test protocol)?
 
08:40
debug tunnel показывает
 
08:50
zi_rus: это вредный протокол :)
08:50
есть еще flow control )
 
08:52
zi_rus: dlink вроде
08:52
:)
 
08:53
недавно extreme 650 был уличен в том, что шлет pause фреймы на аплинковой 40G карточке
 
08:53
ты смотри, чтобы хуавей синхронным эзером не укусил
 
08:53
acid232_: серьезно?
 
08:54
потери и все тут
08:54
TAC посоветовал включить flow-control
 
08:54
ну да
08:54
и фиг отдебажишь
 
08:54
в итоге нужен своп 650 на 670
08:55
а расскажите кто знает про ethernet oam
 
08:59
dvolodin, да, вижу что при переключении грида и формы fromStore все в себя всасывает
08:59
вот только в каком месте его чистить...
 
09:00
и как починить нотификейшн о префиксах - чтобы еще и префикс присылало, там с темплейтом что-то не то?
 
09:00
там кстати и ошибка в extjs вываливается
09:01
в этот момент
09:01
TypeError: a[b] is undefined )
 
09:02
{'admin_status': True,
09:02
                  'description': 'adm',
09:02
                  'enabled_protocols': [],
09:02
                  'name': 'Lo 10',
09:02
                  'oper_status': True,
09:02
                  'subinterfaces': [{'admin_status': True,
09:02
                                     'description': 'adm',
09:02
                                     'enabled_afi': ['IPv4'],
09:02
                                     'enabled_protocols': [],
09:02
                                     'ifindex': 5,
09:02
                                     'ipv4_addresses': ['10.10.10.1/32'],
09:02
                                     'is_ipv4': True,
09:02
                                     'name': 'Lo 10',
09:02
                                     'oper_status': True}],
 
09:02
привет всем, народ подскажите пожалуйста. не как не могу совладать с snmpset в php
09:02
09:03
может кто сможет мне помочь
09:03
заранее СП
 
09:04
bash777, пожалуйста, в пасту все что больше 6 строк убирай.
 
09:07
if ("$ysluga" == 1)
09:07
я помню писал игру пакман на бейсике
09:07
там тоже была похожая проверка
09:07
жизнь=жизнь-1
09:08
иф жизнь<1 принт конец
09:08
извините :)
09:08
Izya121: может на коммутаторе просто не разрешено комьюнити rw или acl неверный
09:09
попробуй из cli позапускать
 
09:14
с компа все нормально работает (веб на немже поднят) причем snmpwalk из php работает на этом же комутере только set не отрабатывается
 
09:20
так с компа snmpset из cli - ОК, из php - нет
09:22
в мануале по php у snmpset 5 параметров, в твоем примере - 3
 
09:26
$object_id2 = '1.3.6.1.4.1.171.12.1.2.19.0';      snmpset("$ipaddr_1", "$community", "$object_id2" , "i", "3"); так тоже не работает
 
09:28
dvolodin, не только длинк, это и на циске есть
 
09:30
zi_rus: ты спрашивал, кто кроме кошаков умеет keepalive
 
09:30
Дим, занят? я тут в коде компонента копаюсь, есть места которые смущают очень
 
09:31
dvolodin, я спрашивал кто что-нибудь знает как это работает
 
09:31
там есть функция bindStore
 
09:31
тут залез в эту тему и набрел на противоречие
 
09:31
в ней инициализируются оба стора из parent'a
09:32
а дальше интересное такое
09:32
if (toField) {
09:32
            // Clear both field stores
09:32
            toField.store.removeAll();
09:32
            fromField.store.removeAll();
 
09:32
т.е. если в to что то определено - чистим оба стора
09:32
а затем // Clone the contents of the main store into the fromField
09:32
у нас вот этот main store то неопределен выходит
09:33
мы то пишем напрямую - if(success) {
09:33
                    fromStore.loadRecords(records);
09:33
                    me.setRawValue(value);
 
09:34
acid232_, читал это и многое другое, не помогает
 
09:34
дубликация имхо в этом месте и происходит - fromField.store.add(models);
 
09:35
так а в чем проблема у тебя?
 
09:35
76 строка /static/js/noc/ux/form/ItemSelector.js
 
09:40
acid232_, смотри какой бред эти фреймы посылаются чтобы вернуться обратно, это значит что линк рабочий, но блин  %ETHCNTR-3-LOOP_BACK_DETECTED: Keepalive packet loop-back detected, если он вернулся
09:41
то есть он должен вернуться, но если вернулся то ошибка
09:41
я ничего не понимаю
 
09:41
из cli выглидит вот так snmpset -v2c -c чччч $ip 1.3.6.1.4.1.171.12.1.2.3.0 i 3
 
09:42
zi_rus, там же несколько функций в ctp
09:43
одно - keep-alive, второе у длинка lbd
 
09:48
хочешь сказать что они не связаны
09:49
вот сел на порт циски
 
09:49
связаны, вопрос на какие флаги в пакете свитч смотрит
 
09:49
wireshark-ом смотрю трафик
 
09:49
чтобы поднять LBD или keepalive
 
09:50
вижу Data 40byte
09:50
и 2 служебных байта
09:52
это обычные keepalive
09:52
смотрел на алкателевском свиче, там совсем левый лупдетект
09:52
с левым ethertype
 
09:54
dvolodin, натыкал дебагов - да, оно чистит стор только при прогрузке грида
 
09:54
при переключениях грид-стор - нет
09:55
надо руками где то дописывать
 
09:55
setValue вызывается?
 
09:56
dvolodin, это выключит, я хочу включить, увидеть фреймы которые работают для лупдетекта, чем они отличаются от обычных keepalive. вот на 3560 не вижу команды на интерфейсе подходящей, на МЕ3400 вообще не шлет
 
09:56
ну дебаг в        me.store.load({ у меня показывает при переключении в форму
09:57
т.е. да
09:57
может там и почистить fromStore?
09:57
перед заливкой
09:57
только вопорс как правильно сделать)
10:03
да, и toStore тоже надо чистить тоже - например пир создании нового мейнтейнера, оно старые данные пихает
 
10:04
вопрос только в том, в какой момент чистить
 
10:05
отловить бы момент переключений форма-грид
10:05
и там бы и почистить
10:12
в общем получается так - сторы в родительском компоненте чистятся только один раз при загрузке грида. Если при переключении в форму у нас setValue - пустой(не undefined), все отрисовывется.
10:12
Если в нем массив передается - то оно улетает в родтельский стор и там остается
10:12
и при переключении назад в грид оно в нем остается.
10:13
при след переключении в форму - список передается еще раз, они добаляются в родительский стор
10:13
и начинается фигня
 
10:15
может при пустом setValue чистить
 
10:17
А он будет пуст только в первую загрузку грида
10:17
в остальных = будет отдавать список из лукапа
10:19
ну и дублирование fromStore это не уберет
 
10:20
пытаться найти M2MField и чистить принудительно при переходе в форму?
 
10:21
угу, как-то так
10:35
как его правильно почистить из M2MField.js?
 
10:45
а это нормально, что лог noc-launcher.log растет по сотне мегабайт за ночь ?
 
10:45
нет
10:46
из за крашей у тебя перезапускается что то постоянно
 
10:46
в основном там записи типа
10:46
2012-11-15 14:49:37,972 noc-web[#0] daemon is terminated with status 1
10:46
2012-11-15 14:49:37,972 noc-correlator[#0] daemon is terminated with status 1
10:46
2012-11-15 14:49:37,972 noc-notifier[#0] daemon is terminated with status 1
10:46
крашей за ночь небыло вообще
 
10:47
логи смотри демонов этих, из за чего перезапускаются то
 
10:48
хм... а от них логов вообще нет
 
10:54
папку с логами создавал?
10:54
=)
10:54
права на запись от нока есть?
10:54
в конфигах демонов путь верный для логирования?
 
11:02
можно попробовать запустить демона в отладочном режиме
11:02
как ./scripts/noc-correlator.py -f start
 
11:03
понял, сейчас попробуем. но дискавери-то нормально работает
 
11:05
dvolodin, у меня глупый вопрос)
11:05
а зачем мы пишем сразу в стор родителя?
11:06
да, точно глупый)
11:06
осознал)
 
11:09
эээээээээ ;( в ручную запускается
11:09
коррелирует что-то, пищит
 
11:10
ну дождись как перезапускаться будет
11:10
в логе там через сколько перезапускались?
 
11:10
понял. я ему еще ядер добавил, и памяти.
11:10
через 2 секунды после запуска
11:11
ой. нет, через 4
11:11
2012-11-15 15:11:05,614 noc-sync daemon is disabled
11:11
2012-11-15 15:11:05,623 Synchronizing contrib
11:11
2012-11-15 15:11:05,861 contrib synchronized
11:11
2012-11-15 15:11:09,960 noc-classifier[#0] daemon is terminated with status 1
11:11
2012-11-15 15:11:09,961 noc-correlator[#0] daemon is terminated with status 1
11:11
вообщем не падает
 
11:23
а как исправить ошибку ConfigParser.NoOptionError: No option 'json_row_limit' in section: 'main'
11:23
post-update: : sync-perm failed
 
11:26
добавиь в конфиг 'json_row_limit'
11:26
как в дефолте новом
 
11:30
в дефолтовом нет этой строчки
11:30
на тестовой машине не было такой ошибке
 
11:31
обновляли недавно жеж..
11:32
+# If set, return "Request too large" if json request
11:32
+# is larger than limit (0 - unlimited)
11:32
+json_row_limit = 0
 
11:35
4ePTeHok, спасибо, заработало)
 
12:17
господа, а как лучше протестировать нат ?
 
12:17
ixLoad
12:17
в аренду вместе с инженером, который настроит все
 
12:18
мне на предмет наличия фич
12:18
типа симетричность
12:18
время жизни трансляций прочую хрень
 
12:18
вот я и говорю - ixia поможет
12:19
там разные сценарии можно делать
12:19
заодно и пропускную способность померяешь
 
12:19
икси слегка дороговато
 
12:20
зачем покупать
12:20
возьмите аппарат в аренду вместе с инженером
 
12:20
dvolodin, а как почистить стор из M2MField.js?)
 
12:21
_4ePTeHok: какой именно?
 
12:21
который у родителя
12:21
оба всмысле
 
12:21
а ест ьакая нить методика ?
 
12:21
чтобы в setValue перед записью в стор почистить то, что там уже есть
 
12:22
попробуй fromStore.removeAll()
 
12:30
неа..
12:31
всмысле оно отрабатывает вовремя - перед записью в стор, но там все равно старые записи
12:33
я верно понимаю, что после удаления надо родителю то как то сообщить об этом?)
12:33
сейчас получается вот так -
12:33
        var fromStore = me.fromField.boundList.getStore();
12:33
        me.store.load({
12:33
            scope: me,
12:33
            callback: function(records, operation, success) {
12:33
                if(success) {
12:33
fromStore.removeAll();
12:33
fromStore.loadRecords(records);
12:33
                    me.setRawValue(value);
12:34
т. е. стор локально почистили, а потом добавили и отослали
12:34
а чистить надо у родителя
12:35
или может есть какой метод с перезаписью стора, а не добавлением
 
13:08
а подскажите что за ошиька? django.db.utils.DatabaseError: language "plpgsql" does not exist
13:08
HINT:  Use CREATE LANGUAGE to load the language into the database
13:10
разобрался))
13:19
при запуске noc-web выводит /opt/noc/contrib/lib/django/conf/__init__.py:75: DeprecationWarning: The ADMIN_MEDIA_PREFIX setting has been removed; use STATIC_URL instead.
13:19
  "use STATIC_URL instead.", DeprecationWarning)
 
13:23
у тебя  ж все работало =)
13:23
dvolodin, я тут кажется нашел еще одно возможное место
13:24
    setRawValue: function(value) { в /static/js/noc/ux/form/ItemSelector.js
 
13:24
ну это на клоне рабочей машины заработало, щас с нуля ставлю на дебиан 6
 
13:26
оно оказывается при записи rawValue сначала переносит все выбранные итемы назад в fromStore, чистит toStore и в соответсвии с value переноси переданное в rawvalue
13:27
так то правильно
 
13:28
вот собака страшная
13:29
тогда надо чистить еще и toStore
 
13:29
да не, это верное поведение
13:29
оно же перекидывает записи из стора в стор
 
13:29
ыыЫ, в итоге все заработало на новой машине
13:29
чудеса ))
 
13:29
в соответствии с списком, что ты подсовываешь в rawvar
13:30
тут заподлянка в том, что fromstore где то не очищается вообще
13:30
надо искать ивент в котором это происходит
 
13:30
setRawValue перекинет
 
13:33
кажется я эту сволочь поборол
13:33
ты прав - надо оба стора было почистить
13:33
погоняю счас с сохранением еще
13:34
да, эти лишние строки оно перекидывало из toStore
13:34
почищу код от дебага и залью
 
13:38
будем считать, и это победили
13:38
ну, тогда все, объективной необходимости в django'вской админке больше нет
 
13:41
да не..
13:41
есть еще деревья
13:41
их так и не делали еще
13:44
по хорошему поиск туда еще прикрутить и кнопку reset)
 
13:50
деревьев в джанговской админке не было
13:50
я их сам делал на jquery tree
 
13:52
аа
17:08
dvolodin, Дим, надо нам еще сделать резолв m2m в __label для вывода в грид
17:54
сделал)
17:54
счас патчем оформлю.
18:00
dvolodin, 
NOC-843 погляди, там я по простому сделал, но сработает ли для всего - хз.
 
21:38
_4ePTeHok: вот надо ли?
21:38
он m2m может быть много
 
    Share this page
    Share this page: