nocproject.org
03:20
что-то этот Imagebanana меня напрягает - достал весь этот всплывающий хлам...
03:21
03:24
lexus-omsk: ./noc index --reindex
03:41
выполнилось... а вообще странно - при upgrade же тоже делается reindex
03:42
один раз
03:42
там ошибочка была несколько дней
03:50
а насчёт нового приложения - вообще не добавляются группы - нет реакции на кнопку add (судя по логам noc-web)
03:53
это как это не добавляются?
03:53
_4ePTeHok: ты умеешь рисовать квадратики и кружочки?
03:56
при нажатии кнопки add в консоли Uncaught TypeError: Cannot call method 'get' of null
04:09
а должен быть какой-то дефолтный контейнер, типа корневого?
04:09
container: me.groupContainer.get("id") - вот тут вот groupContainer - null
04:47
да
04:47
Root называется
04:47
его миграция делает
04:57
я только сегодня заценил удобство редактирования конфигов через веб
04:57
до этого долго маялся как же влить новые дефолты в существующий конфиг без ебли с диффами/патчами
05:04
dvolodin: в модельках то он есть, а вот в дереве - нет
05:31
в дереве ты его и не увидишь
05:43
Unbeerable, а зачем тебе дефолты в конфиг лить, дефолт он и есть дефолт, пусть в дефолте и живет
05:43
dvolodin, у твоей стойки кажется пропорции кривые
05:44
слишком широкая
05:49
zi_rus, я неправильно выразился. у меня просто noc.conf настолько древний, что в нём не было и половины текущих параметров. и чтобы добавлять их, приходилось бы каждый параметр вбивать руками
05:50
гораздо проще слить туда дефолты и менять их
05:52
zi_rus: я ее специально расширил, в ней же тектом подписывать железо
05:52
зря, текст можно сбоку написать
05:53
не пройдет
05:53
тогда ты ряд стоек не прорисуешь
05:55
и типа жирная стойка это нормально
05:56
ага
05:56
05:57
вот
05:57
можешь выдать в любых пропорциях :)
06:00
сейчас сделаю еще квадратиками содержимое
06:01
и надо бы кому-нибудь заняться и сделать нормальную прорисовку
06:01
там SVG
06:15
ну вот, модуль еще даже не написан, а мне уже предлагают костыли к нему приделывать
06:20
не костыли, а прорабатывать визуальное решение
06:20
нарисуй свою стойку
06:21
хоть с нескучными обоями и гарними дивчинами
06:21
e_zombie, это намек ;)
06:22
нуну .
06:22
яж нарисую.
06:22
но потом надо будет 21+ ставить ограничения
06:23
06:23
(10:23:11) jeckill: блин, увольнять рисовальщиков-проектантов, распиливать их оклады и наслаждаться жизнью...
06:23
(10:23:42) jeckill: а стоечки только полоноформатные или есть возможность выбора количества юнитов?
06:25
тем более я как раз задники для 9 стоект доделал вчера
07:12
чота у меня апгрейд падает на создании объектов инвентори
07:12
KeyError: ObjectId('528d98c7b3b0c47ff1222938')
07:18
dvolodin: > inv:0008_create_root
07:18
Create Root model stub
07:18
Create Lost&Found model stub
07:18
Traceback
07:18
чо делать-та?
07:18
строка 50, ошибка ключа
07:23
дропнул модели, дропнул объекты - прошло
09:18
mikevlz: модель потер?
09:18
да я вообще все потер...
09:18
и модель и объекты
09:18
после этого апдейт прошел
09:18
или ты имеешь в виду, что была удаленная модель, на которой спотыкалось?
09:23
вроде не удалял ничего
09:24
хотя... Синхронизация идет до или после миграции?
09:24
если до, то на синхронизации коллекций были удаления
09:50
dvolodin: Скажи, плиз, ветка feature/inventory работоспособная? Может имеет смысл смержить ее в основное дерево?
09:51
я бы начал потихоньку модели для d-link'а готовить
10:01
Dmitry1, нет, там много недоделанных фич, но если хочешь делать модели то переходи сам на темную сторону, у нас есть инвентори
10:02
и печеньки
10:02
кстати, кто будет на ruBSD ?
10:06
zi_rus: не доделано ровно две фичи
10:06
из тех, что есть в develop
10:07
ну так кто налабает красивый визуальный образ стойки?
10:08
dvolodin, может просто портировать из visio vss
10:22
там, наверное, типа триггеров нужно
10:22
вид спереди/сзади
10:23
и квадратики с текстом или вид оборудования
10:23
там даже прикольная картинка набивки устройства линейными картами
10:25
10:25
dvolodin: в инвентори ты никак не обрабатываешь Null-контейнер. Миграция прошла, а вот создать нельзя
10:27
dvolodin: есть и Root и Global lost and found
10:27
Дим
10:27
мне нужно, чтобы кто-то нарисовал красиво
10:28
dvolodin, а тебе не нравится как там нарисовано?
10:30
Dmitry1, для лицензионной чистоты, ты должен это сам нарисовать
10:30
у меня руки из жопы
10:30
dvolodin: как создать здание с серверной?
10:30
зашел в инвентори - там чисто. Нету нифига. Новые объекты не создает из-за ошибки джаваскрипта
10:30
mikevlz, какой размер у вашей серверной, что внутри помещается целое здание?
10:31
zi_rus: не пей и не кури
10:32
вот ты уже освоил эту хрень?
10:32
у тебя была ошибка?
10:33
ytytyt
10:33
no)
10:34
images must show real hardware
10:35
Dmitry1, тебя не смущает что это 3560 с потертым названием?
10:35
dvolodin, tell me please good svg editor ?
10:35
там кроме 3560 есть еще куча подобного
10:35
mikevlz, какая хрень и где ошибка?
10:36
Root node у него не создалась, похоже
10:36
сделай ее руками
10:36
./noc shell
10:36
вот вполне нейтральный свич
10:36
10:36
from noc.inv.models.object import Object
10:36
from noc.inv.models.objectmodel import ObjectModel
10:37
> db.noc.objects.find()
10:37
{ "_id" : ObjectId("529840cbb3b0c440dc89d0cf"), "model" : ObjectId("529840cbb3b0c440dc89d0cd"), "container" : ObjectId("529840cbb3b0c440dc89d0cf"), "name" : "Global Lost&Found" }
10:37
{ "_id" : ObjectId("529840cbb3b0c440dc89d0ce"), "container" : ObjectId("529840cbb3b0c440dc89d0cf"), "model" : ObjectId("529840cbb3b0c440dc89d0cc"), "name" : "Root" }
10:37
{ "_id" : ObjectId("529841dab3b0c4412f0e685a"), "container" : ObjectId("529840cbb3b0c440dc89d0cf"), "model" : ObjectId("529840efb3b0c440f6176778"), "data" : { "asset" : { "serial" : "SNUNKNOWN" } } }
10:37
{ "_id" : ObjectId("529841dbb3b0c4412f0e685c"), "container" : ObjectId("529840cbb3b0c440dc89d0cf"), "model" : ObjectId("529840efb3b0c440f617678e"), "data" : { "asset" : { "serial" : "SNUNKNOWN" } } }
10:37
>
10:37
bye
10:37
root = Object(model=ObjectModel.objects.get(name="Root"), name="Root")
10:37
root.save()
10:37
только ушки для крепления какие-то китайские
10:38
Dmitry1, осталось научить его лампочками моргать))))
10:38
согласно статусам
10:38
lf = Object(model=ObjectModel.objects.get(name="Lost&Found"), name="Global Lost&Found", container=root.id)
10:38
lf.save()
10:38
и проводки показывать
10:38
и будет блекджек
10:38
давайте все-таки с прорисовкой разбираться
10:39
если свич представлять как куча мелких объектов (портов)
10:39
dvolodin, должна быть библиотека реального оборудования, согласно prod_no
10:39
картинок всмысле
10:39
если согласовывать с прод_но, то к моделям и привязывать
10:40
если дадите нормальный свг редактор, могу чо нить порисовать
10:40
жена дизигнер, если чо)
10:40
dvolodin: хрен. Сделал все, что ты сказал, обновил страницу
10:40
не создает с той же ошибкой
10:40
groupContainer: null, от него нельзя получить id
10:41
dvolodin: Дим. давай для начала попробуем изобразить свич. Из картинок, что я выше постил, повыдирать разъемы
10:42
Потом научить NOC рисовать прямоугольный объект, в котором эти разъемы будут расположены
10:42
для примера
10:42
у длинак есть такая прога - d-view
10:43
lkz bpdtcnys[ tq cdbxtq jyf hbcetn rhfcbdst rfhnbyrb
10:43
dvolodin: tot htwtgns tcnm&
10:43
еще рецепты
10:43
для известных ей свичей она рисует красивые картинки
10:43
а для неизвестных рисует то, что отдискаверила
10:44
Т.е. на передней панели присутствует консольный порт и сгруппированные по 12 (по два в ряд) порты
10:48
10:52
Dmitry1, по-моему ты бредишь
10:52
zi_rus: ты обновлял тестовую?
10:52
у меня в Inv/inv пустое окно, ни одной группы
10:52
вчера ночью только
10:52
а у меня эпизодами
10:52
в базе при этом нужное есть
10:52
сначала ничего не создавалось
10:53
проверил в хромиум и в сафаре
10:53
потом создалось и даже показывало
10:53
потом зависло
10:53
пришлось нок переоткрыть
10:53
после этого не показывала и не хотеля ничего удалять
10:53
я уже перелогинился, несколько раз рефрешнулся
10:53
работает хз как
10:54
давай сейчас обновлюсь, посмотрим что там
10:55
Дима, давай сначала попробуем аккуратно изобразить стойку :)
10:56
вот обновился, инвентори пустой
10:56
добавь чо-нить
10:56
консоль ошибок браузера открытой держи еще
10:57
пытаюсь добавить
10:57
на add не реагирует
10:57
по нажатию в консоли ошибка
10:57
а в консоли жабы ошибка, да?
10:57
dvolodin: тыц...
10:58
не, я логику сервера посмотрел, если не будет контейнера - в рут подвяжет. Жаба дурит
10:58
надо жабу поправить, а то не дает создавать объекты...
10:58
проверить, groupContainer ==null
10:58
если да - не отдавать его в запросе
11:03
zi_rus: это на самом верхнем уровне при создании группы?
11:07
так что проблема не в миграции, проблема в жабе
11:08
грязный хак вида "проверили на нуль контейнер, если он нуль - не отдаем" сработал частично
11:08
объект добавляется, но список не обновляется
11:08
после рефреша всей вкладки пункты появились
11:09
ну да
11:09
там только refresh
11:09
на нем обламываеься
11:09
не-не-не...
11:10
сначала обламывает .get("id") на нуль-объекте
11:10
а если отработать - то форма закроется, а содержимое хранилища не обновится, т.к. опять таки контейнера у нас нет
11:11
и надо весь store по хорошему перезагружать
11:11
как-то так
11:12
dvolodin, а можно нескромный вопрос, а как ты проверял, что не сталкивался с этим пока мы не пнули?
11:12
сначала сделал клюкву, потом поправил JS
11:14
что за кухонный жаргон, то тушенка, то клюква. чувтсвую что я только что из леса вышел и ничего не понимаю
11:14
зафиксил? обновляться?
11:15
эта... про стойки. Мне вобщем-то нравится, как выглядят стойки в макросе KB
11:16
не фиксил еще
11:16
попробуй сам, я пока занят
11:16
окай
11:16
пообедаю, сделаю грязный хак
11:35
есть
11:36
11:36
обновление тоже подебил
11:59
mikevlz: да, примерно так
11:59
причешу и пропатчу как освобожусь
12:04
а там в инвентори->инвентори какие-то плюсики появились, но ничего нихрена на добавляется - ето норм ?
12:09
ufir, ничего не работает, смрись
12:11
о как...
12:12
мне вторую рут-ноду создало =)
12:12
закоммитил фикс
12:13
lost&found есть?
12:15
два раза
12:15
два раза глобальный лост и фаунд, два раза рут.
12:17
это из-за завалившейся миграции
12:18
А как победить
12:18
aupdate or delete on table "sa_reducetask" violates foreign key constraint "task_id_refs_id_193c71167fb7d148" on table "sa_maptask"\u000aDETAIL: Key (id)=(8556643) is still referenced from table "sa_maptask".
12:20
12:21
Dmitry1: каскадом их почисть при выключенной системе
12:22
как?
12:24
mikevlz: хелп
12:24
сильный вопрос...
12:24
truncate table sa_maptask; vacuum full analyze sa_maptask;
12:25
noc=# truncate table sa_maptask; vacuum full analyze sa_maptask;
12:25
TRUNCATE TABLE
12:25
VACUUM
12:25
noc=#
12:26
посмотрим...
12:26
теперь запускай нок
12:26
вроде пока не ругается
12:36
идриттен дрочер
12:36
а стойки от армани есть?
12:37
и они будут только на 42У ?
12:39
каких наделаешь, такие и будут
12:40
а кроссировщиц в модель положить можно?
12:41
куда моделей-кроссировщиц положить?
12:42
e_zombie, неудобно, лучше на кровать
12:42
фу. какой вы эстет.
12:49
dvolodin, ты тут?
12:54
dvolodin, нужно мнение авторитета, я не могу его переубедить. Dmitry1 начитался что msdp связан с pim, и теперь пишет что msdp часть пима и сует их в один класс, у меня не получается убедить человека, что PIM MSDP peer down это ересь
13:14
не оскорбляй чувства верующих в PIM!)))
13:24
кто мне подскажет, какое отношение MSDP имеет к PIM
13:25
и вообще, что есть "root cause" для MSDP, и может ли он являться "root cause" для других событий
13:26
"добрый" zi_rus как всегда накидал кучу ивентов, без объяснения, что это такое и к чему относится
13:31
dvolodin: меня тут глупости спрашивают: а можно будет хранить в базе такие вещи "кондей включен/выключен" и "окно открыто/закрыто". Да, мы нищеброды, зимой морозим забортным воздухом
13:31
эти вещи надо применительно к серверной
13:31
а по картинке -молодец. Не то что нюарная херня
13:36
mikevlz: Смотри классы FM "Security | Access | Case Open", "Security | Access | Door Open"
13:36
Dmitry1: это FM, а мне надо в инвентори :)
13:47
Dmitry1, так а что было непонятного в ивенте peer up/peer down
13:47
прозрачно все по-моему
13:49
по поводу картинки, мне все же не нравится идея текста на них
13:50
если надо какое-то пояснение сделать, то для этого есть другие места
13:50
а картинка она чтобы видеть схематичное раположение железок в стойке
13:51
он же нифига не закоммитил?
13:52
наверное
13:52
я по скриншоту
15:13
dvolodin: ты железки в стокй пока руками врисовываешь?
15:18
это уже дело наживное
15:19
точнее -- я руками указываю позицию
15:20
где его указывать надо?
15:24
rackmount.position
15:28
o.set_data("rackmount", "position", X)
15:30
o - Это кто в данном случае?
15:31
а то, что можно сносить нафиг теперь Managed Object Inventory без привлечения консоли - это клево
15:50
mikevlz, чего-чего ты собрался сносить?
15:50
zi_homeотдискавереный объект
16:05
эмм
16:06
всякие sfp?
16:06
было бы чему радоваться
17:20
погоди, вот станут появлятся сервера....))
17:37
не, мне эта тема не подходит, если бы нок сам находил, и в стойку пририсовывал железку, а руками никого не заставишь это вести
18:24
как он узнает, в каком рэке железка?)
20:06
mikevlz: объект это
20:06
можно на примере MX посмотреть
20:06
там параметр units в модели задается
20:06
и position у объекта
20:18
приплыли
20:18
опять модели переделывать
20:18
никто юниты не писал же
20:53
ну кто не писал
20:54
а я писал)
20:55
zi_rus: не переделывать, а добавить параметры
Share this page
Share this page: