Изменение CMDB через базу данных

Обсуждение вопросов и решений

Модератор: ykolesnikov

Ответить
Elrengil
OTRS Новобранец
Сообщения: 104
Зарегистрирован: 18 июл 2012, 13:29

Изменение CMDB через базу данных

Сообщение Elrengil » 27 май 2013, 13:56

Возникла необходимость отделить серверы от компьютеров, но поменять класс КЕ(конфигурационной единицы) через CMDB невозможно.
Поэтому решили менять через БД.

Получился вот такой запрос:
--configitem_number - внутренний номер
--id - ID
declare @id int,@class_id int,@maxidconf int
select @id = id, @class_id = class_id from otrs...configitem where configitem_number = '1032002265'
select @id, @class_id
select @maxidconf = max(id) from otrs...configitem_definition where class_id= 203
update otrs...configitem_version set definition_id = @maxidconf where configitem_id=@id
update otrs...configitem set class_id = 203 where id=@id
update otrs...configitem_counter set [counter]=[counter]-1 where class_id = @class_id
update otrs...configitem_counter set [counter]=[counter]+1 where class_id = 203
update otrs...xml_storage set [xml_type]='ITSM::ConfigItem::203' where xml_key=@id

Как результат КЕ меняет класс, но ее свойства (проц, память, итд. ) становятся не видны. Если другим запросом их вернуть обратно в исходный класс, то свойства появляются.

Может быть кто-то сталкивался с подобной задачей?
OTRS ITSM 4.09 Apache/2.4.6 (CentOS) MySQL

ykolesnikov
OTRS Гуру
Сообщения: 3119
Зарегистрирован: 24 дек 2010, 09:27
Откуда: Череповец
Благодарил (а): 4 раза
Поблагодарили: 5 раз
Контактная информация:

Re: Изменение CMDB через базу данных

Сообщение ykolesnikov » 27 май 2013, 14:48

Если у Вас совпадают практически полностью описания этих классов, кроме имени класса, может имеет смысл сделать это через модуль Import/Export?
Экспортировать в CSV, затем заменить класс и импортировать обратно. Это идея, подробности надо смотреть при настройке. :oops:
Через БД не все просто, ведь все это хозяйство хранится в xml_storage...
С уважением Юрий Колесников
OTRS 5.0.22, ITSM 5.0.22
OpenSuse 13.2, MariaDB 10.0.22
OTRS 5.0.22, ITSM 5.0.22 тестовая

alexus
OTRS Гуру
Сообщения: 5192
Зарегистрирован: 20 сен 2010, 18:17
Откуда: Москва
Благодарил (а): 92 раза
Поблагодарили: 82 раза

Re: Изменение CMDB через базу данных

Сообщение alexus » 27 май 2013, 22:52

Вообще говоря, прямо править базу это в принципе плохая идея для любых приложений.
Если у вас так много серверов среди компов, тогда выгрузите данные по компам, выделите из них сервера и загрузите через импорт, как сказал Юрий. А если мало, тогда и руками можно забить.
С уважением,
Алексей Юсов

Prod: OTRS CE ITSM 6.0.28 on CentOS 7 Apache 2.4 MariaDB 10.4.13 + Radiant Customer Portal

Radiant System OTRS Intergrator RU
Группа OTRS Community в Teleram
Хотите внедрить OTRS? Спросите меня как!

Elrengil
OTRS Новобранец
Сообщения: 104
Зарегистрирован: 18 июл 2012, 13:29

Re: Изменение CMDB через базу данных

Сообщение Elrengil » 28 май 2013, 17:29

я тоже не восторге от правки БД. но импорт смущает тем что исчезают привязки.
OTRS ITSM 4.09 Apache/2.4.6 (CentOS) MySQL

alexus
OTRS Гуру
Сообщения: 5192
Зарегистрирован: 20 сен 2010, 18:17
Откуда: Москва
Благодарил (а): 92 раза
Поблагодарили: 82 раза

Re: Изменение CMDB через базу данных

Сообщение alexus » 28 май 2013, 19:21

В вашем случае надо кастомный модуль писать.
С уважением,
Алексей Юсов

Prod: OTRS CE ITSM 6.0.28 on CentOS 7 Apache 2.4 MariaDB 10.4.13 + Radiant Customer Portal

Radiant System OTRS Intergrator RU
Группа OTRS Community в Teleram
Хотите внедрить OTRS? Спросите меня как!

Ответить