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: 15.11.2012
bash777 #
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
dvolodin #
06:51
3. на чем вылетает? свич старый, как говно мамонта
bash777 #
07:01
да старый модель ws-c3524-xl
07:01
но и на новом 3925 тоже ...
dvolodin #
07:01
надо смотреть, на чем там get_interfaces вылетает
07:01
на новом понятно почему, не знает скрипт к чему отнести интерфейс Em
bash777 #
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
dvolodin #
07:02
ну да
07:02
платформа реально странная
07:02
там же только ISL, если мне память не изменяет
bash777 #
07:03
нет dot1q
dvolodin #
07:03
ну да
bash777 #
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 ---
dvolodin #
07:06
посотри, может его в селекторы добавить можно
bash777 #
07:07
Em0 ? есть вообще каканить дока, что к чему и в каком порядке ?)
07:08
а то очень много глупых вопросов, например что такое селектор :)
07:09
или как в типовые скрипты добавить поддержку этих железок
freee #
07:25
bash777, привет
07:25
с докой беда
07:26
селектор это штука которая по разным критериям выбирает список железа
07:26
используется во всех стрикртах Service activation
bash777 #
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
dvolodin #
07:44
pg_hba.conf настроить надо
07:49
bash777: скрипты лежат в sa/profiles
07:49
тебе нужен Cisco.IOS.get_interfaces
bash777 #
07:49
ег оможно править ?
07:49
както потом компилимть надо
dvolodin #
07:49
можно поправить
07:50
компилировать не надо
bash777 #
07:50
а рядом файл pyc ?
dvolodin #
07:51
сам перестроится
bash777 #
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
тперь в вебе не рабоате меню
dvolodin #
08:03
в смысле "не работает" ?
08:04
_4ePTeHok: все поправил, работает
08:04
один косяк остался
bash777 #
08:04
ну слева дерево отркывается, ни одно подменю не отркывается
dvolodin #
08:05
если несколько раз попереключаться между формой и гридом, появляются дубликаты
08:05
fromField.store, похоже, не чистится
bash777 #
08:09
перегрузил барузер, чтото открытлось, чтото нети и ин-с съехал
08:17
а все таки вот рпо это 1. В ipam автодискавери не появляются адреса /32, например с Loopback
08:17
2. В Inventory interfaces не показываются ин-сы Tunnel
acid232_ #
08:23
bash777: делай ./noc debug-script get_interfaces -cCOMMUNITY switch
08:23
и смотри на вывод
08:23
может быть их там и нет
_4ePTeHok #
08:30
bash777, порядок действий таков - если что то не работает на конкретной железке - идем на http://bt.nocproject.org, регимся, создаем issue, где описываем проблему и прикладываем полный трейсбэк, либо вывод debug-script. По мелким вопросам - типа при установке трейс, что то
08:30
для понимания работы - прямо в канал задавай вопрос, если нужно - трейсбэк в пастебин прикладываем.
08:32
issue нужны, чтобы банально не потерять проблему и отслеживать ее решение
zi_rus #
08:40
народ, разрешите задать интимный вопрос из жизни изернет. кто-нибудь понимает ethernet keepalive (configuration test protocol)?
bash777 #
08:40
debug tunnel показывает
acid232_ #
08:50
zi_rus: это вредный протокол :)
08:50
есть еще flow control )
dvolodin #
08:52
zi_rus: dlink вроде
08:52
:)
acid232_ #
08:53
недавно extreme 650 был уличен в том, что шлет pause фреймы на аплинковой 40G карточке
dvolodin #
08:53
ты смотри, чтобы хуавей синхронным эзером не укусил
_4ePTeHok #
08:53
заразно)
dvolodin #
08:53
acid232_: серьезно?
acid232_ #
08:54
потери и все тут
08:54
TAC посоветовал включить flow-control
dvolodin #
08:54
ну да
08:54
и фиг отдебажишь
acid232_ #
08:54
в итоге нужен своп 650 на 670
08:55
а расскажите кто знает про ethernet oam
_4ePTeHok #
08:59
dvolodin, да, вижу что при переключении грида и формы fromStore все в себя всасывает
08:59
вот только в каком месте его чистить...
acid232_ #
09:00
и как починить нотификейшн о префиксах - чтобы еще и префикс присылало, там с темплейтом что-то не то?
_4ePTeHok #
09:00
там кстати и ошибка в extjs вываливается
09:01
в этот момент
09:01
TypeError: a[b] is undefined )
bash777 #
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}],
Izya121 #
09:02
привет всем, народ подскажите пожалуйста. не как не могу совладать с snmpset в php
09:02
вот код http://pastebin.com/YiHZRxFQ не работает 52 строка
09:03
может кто сможет мне помочь
09:03
заранее СП
_4ePTeHok #
09:04
bash777, пожалуйста, в пасту все что больше 6 строк убирай.
acid232_ #
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 позапускать
Izya121 #
09:14
с компа все нормально работает (веб на немже поднят) причем snmpwalk из php работает на этом же комутере только set не отрабатывается
acid232_ #
09:20
так с компа snmpset из cli - ОК, из php - нет
09:22
в мануале по php у snmpset 5 параметров, в твоем примере - 3
Izya121 #
09:26
$object_id2 = '1.3.6.1.4.1.171.12.1.2.19.0'; snmpset("$ipaddr_1", "$community", "$object_id2" , "i", "3"); так тоже не работает
zi_rus #
09:28
dvolodin, не только длинк, это и на циске есть
acid232_ #
09:28
точно инт?
dvolodin #
09:30
zi_rus: ты спрашивал, кто кроме кошаков умеет keepalive
_4ePTeHok #
09:30
Дим, занят? я тут в коде компонента копаюсь, есть места которые смущают очень
zi_rus #
09:31
dvolodin, я спрашивал кто что-нибудь знает как это работает
_4ePTeHok #
09:31
там есть функция bindStore
zi_rus #
09:31
тут залез в эту тему и набрел на противоречие
_4ePTeHok #
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();
dvolodin #
09:32
ну да
_4ePTeHok #
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);
acid232_ #
09:33
zi_rus: http://pbsplaza.nl/?p=65
zi_rus #
09:34
acid232_, читал это и многое другое, не помогает
_4ePTeHok #
09:34
дубликация имхо в этом месте и происходит - fromField.store.add(models);
acid232_ #
09:35
так а в чем проблема у тебя?
_4ePTeHok #
09:35
76 строка /static/js/noc/ux/form/ItemSelector.js
zi_rus #
09:40
acid232_, смотри какой бред эти фреймы посылаются чтобы вернуться обратно, это значит что линк рабочий, но блин %ETHCNTR-3-LOOP_BACK_DETECTED: Keepalive packet loop-back detected, если он вернулся
09:41
то есть он должен вернуться, но если вернулся то ошибка
09:41
я ничего не понимаю
Izya121 #
09:41
из cli выглидит вот так snmpset -v2c -c чччч $ip 1.3.6.1.4.1.171.12.1.2.3.0 i 3
_4ePTeHok #
09:42
zi_rus, там же несколько функций в ctp
09:43
одно - keep-alive, второе у длинка lbd
zi_rus #
09:48
хочешь сказать что они не связаны
09:49
вот сел на порт циски
_4ePTeHok #
09:49
связаны, вопрос на какие флаги в пакете свитч смотрит
zi_rus #
09:49
wireshark-ом смотрю трафик
_4ePTeHok #
09:49
чтобы поднять LBD или keepalive
zi_rus #
09:50
вижу Data 40byte
09:50
и 2 служебных байта
09:52
это обычные keepalive
09:52
смотрел на алкателевском свиче, там совсем левый лупдетект
09:52
с левым ethertype
dvolodin #
09:54
no keepalive?
_4ePTeHok #
09:54
dvolodin, натыкал дебагов - да, оно чистит стор только при прогрузке грида
dvolodin #
09:54
:-/
_4ePTeHok #
09:54
при переключениях грид-стор - нет
09:55
надо руками где то дописывать
dvolodin #
09:55
setValue вызывается?
zi_rus #
09:56
dvolodin, это выключит, я хочу включить, увидеть фреймы которые работают для лупдетекта, чем они отличаются от обычных keepalive. вот на 3560 не вижу команды на интерфейсе подходящей, на МЕ3400 вообще не шлет
_4ePTeHok #
09:56
ну дебаг в me.store.load({ у меня показывает при переключении в форму
09:57
т.е. да
09:57
может там и почистить fromStore?
09:57
перед заливкой
09:57
только вопорс как правильно сделать)
10:03
да, и toStore тоже надо чистить тоже - например пир создании нового мейнтейнера, оно старые данные пихает
dvolodin #
10:04
вопрос только в том, в какой момент чистить
_4ePTeHok #
10:05
отловить бы момент переключений форма-грид
10:05
и там бы и почистить
10:12
в общем получается так - сторы в родительском компоненте чистятся только один раз при загрузке грида. Если при переключении в форму у нас setValue - пустой(не undefined), все отрисовывется.
10:12
Если в нем массив передается - то оно улетает в родтельский стор и там остается
10:12
и при переключении назад в грид оно в нем остается.
10:13
при след переключении в форму - список передается еще раз, они добаляются в родительский стор
10:13
и начинается фигня
dvolodin #
10:15
может при пустом setValue чистить
_4ePTeHok #
10:17
А он будет пуст только в первую загрузку грида
10:17
в остальных = будет отдавать список из лукапа
10:19
ну и дублирование fromStore это не уберет
dvolodin #
10:20
пытаться найти M2MField и чистить принудительно при переходе в форму?
_4ePTeHok #
10:21
угу, как-то так
10:35
как его правильно почистить из M2MField.js?
ufir #
10:45
а это нормально, что лог noc-launcher.log растет по сотне мегабайт за ночь ?
_4ePTeHok #
10:45
нет
10:46
из за крашей у тебя перезапускается что то постоянно
ufir #
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
крашей за ночь небыло вообще
_4ePTeHok #
10:47
логи смотри демонов этих, из за чего перезапускаются то
ufir #
10:48
хм... а от них логов вообще нет
_4ePTeHok #
10:54
папку с логами создавал?
10:54
=)
10:54
права на запись от нока есть?
10:54
в конфигах демонов путь верный для логирования?
dvolodin #
11:02
можно попробовать запустить демона в отладочном режиме
11:02
как ./scripts/noc-correlator.py -f start
ufir #
11:03
понял, сейчас попробуем. но дискавери-то нормально работает
_4ePTeHok #
11:05
dvolodin, у меня глупый вопрос)
11:05
а зачем мы пишем сразу в стор родителя?
11:06
да, точно глупый)
11:06
осознал)
ufir #
11:09
эээээээээ ;( в ручную запускается
11:09
коррелирует что-то, пищит
_4ePTeHok #
11:10
ну дождись как перезапускаться будет
11:10
в логе там через сколько перезапускались?
ufir #
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
вообщем не падает
denix3 #
11:23
а как исправить ошибку ConfigParser.NoOptionError: No option 'json_row_limit' in section: 'main'
11:23
post-update: : sync-perm failed
_4ePTeHok #
11:26
добавиь в конфиг 'json_row_limit'
11:26
как в дефолте новом
denix3 #
11:30
в дефолтовом нет этой строчки
11:30
на тестовой машине не было такой ошибке
_4ePTeHok #
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
denix3 #
11:35
4ePTeHok, спасибо, заработало)
freee #
12:17
господа, а как лучше протестировать нат ?
dvolodin #
12:17
ixLoad
12:17
в аренду вместе с инженером, который настроит все
freee #
12:18
мне на предмет наличия фич
12:18
типа симетричность
12:18
время жизни трансляций прочую хрень
dvolodin #
12:18
вот я и говорю - ixia поможет
12:19
там разные сценарии можно делать
12:19
заодно и пропускную способность померяешь
freee #
12:19
икси слегка дороговато
dvolodin #
12:20
зачем покупать
12:20
возьмите аппарат в аренду вместе с инженером
_4ePTeHok #
12:20
dvolodin, а как почистить стор из M2MField.js?)
dvolodin #
12:21
_4ePTeHok: какой именно?
_4ePTeHok #
12:21
который у родителя
12:21
оба всмысле
freee #
12:21
а ест ьакая нить методика ?
dvolodin #
12:21
removeAll ?
_4ePTeHok #
12:21
чтобы в setValue перед записью в стор почистить то, что там уже есть
dvolodin #
12:22
попробуй fromStore.removeAll()
_4ePTeHok #
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
или может есть какой метод с перезаписью стора, а не добавлением
`kk #
12:53
на главной rss для "Project Activity" - http://127.0.0.1:8090/...
denix3 #
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)
_4ePTeHok #
13:23
у тебя ж все работало =)
13:23
dvolodin, я тут кажется нашел еще одно возможное место
13:24
setRawValue: function(value) { в /static/js/noc/ux/form/ItemSelector.js
denix3 #
13:24
ну это на клоне рабочей машины заработало, щас с нуля ставлю на дебиан 6
_4ePTeHok #
13:26
оно оказывается при записи rawValue сначала переносит все выбранные итемы назад в fromStore, чистит toStore и в соответсвии с value переноси переданное в rawvalue
13:27
так то правильно
dvolodin #
13:28
вот собака страшная
13:29
тогда надо чистить еще и toStore
_4ePTeHok #
13:29
да не, это верное поведение
13:29
оно же перекидывает записи из стора в стор
denix3 #
13:29
ыыЫ, в итоге все заработало на новой машине
13:29
чудеса ))
_4ePTeHok #
13:29
в соответствии с списком, что ты подсовываешь в rawvar
13:30
тут заподлянка в том, что fromstore где то не очищается вообще
13:30
надо искать ивент в котором это происходит
dvolodin #
13:30
setRawValue перекинет
_4ePTeHok #
13:33
кажется я эту сволочь поборол
13:33
ты прав - надо оба стора было почистить
13:33
погоняю счас с сохранением еще
13:34
да, эти лишние строки оно перекидывало из toStore
13:34
почищу код от дебага и залью
dvolodin #
13:38
будем считать, и это победили
13:38
ну, тогда все, объективной необходимости в django'вской админке больше нет
_4ePTeHok #
13:41
да не..
13:41
есть еще деревья
13:41
их так и не делали еще
13:44
по хорошему поиск туда еще прикрутить и кнопку reset)
dvolodin #
13:50
деревьев в джанговской админке не было
13:50
я их сам делал на jquery tree
_4ePTeHok #
13:52
аа
17:08
dvolodin, Дим, надо нам еще сделать резолв m2m в __label для вывода в грид
17:54
сделал)
17:54
счас патчем оформлю.
18:00
dvolodin, NOC-843 погляди, там я по простому сделал, но сработает ли для всего - хз.
dvolodin #
21:38
_4ePTeHok: вот надо ли?
21:38
он m2m может быть много
Tweet
Share this page
Share this page: Tweet