Переименование записей со связанными match labels
Описание
Для удобства использования меток в правилах классификаций в систему добавили механизм Match Labels
#1565 (closed) - связанные с текущей записью сущности поставляют собственную метку вида noc::<mode_name>::<instance_name>::=
и она размещается в effective_labels
. Эту метку можно использовать при необходимости выделить связанные записи - например, для выбора всех устройств с платформой ME-3600X-24FS-M
достаточно указать метку noc::platform::ME-3600X-24FS-M::=
.
Механиз дотаточно удобный, но есть следующая сложность - переименование связаной сущности приводит к неработоспособности всех правил где её метка была использована, поскольку указанная в правилах метка будет отличатья от новой.
Решение
Можно рассмотреть несколько вариантом решения
- Вместо метки
noc::<mode_name>::<instance_name>::=
создавать некую служебную метку (utility label
) и использовать её в правилах, при этом она меняться не будет.- Снижается удобство работы с метками, поскольку вместо понятного имени используется некий идентификатор (можно нивелировать при отдаче меток в веб-интерфейс проводить трансляцию, и реализовать метод
get_utility_label
для модели) - Необходимо реализация метода трансляции служебной метки в связанный инстанс
- Снижается удобство работы с метками, поскольку вместо понятного имени используется некий идентификатор (можно нивелировать при отдаче меток в веб-интерфейс проводить трансляцию, и реализовать метод
- Прописывать процедуру замены меток в правилах со старой на новую
- Невозможно гарантии атомарности подобной операции. Если в этом момент будут происходить изменения в правилах есть вероятность что останется прежний вариант
- За время прохождения процедуры часть записей успеет пройти классификацию по старым правилам.
- Запрет переименования в моделях, поддерживающих
lazy_labels
- крайне усложняет эксплуатацию системы, делая процедуру смены имени ручной и трудоёмкой
- Хранить старую и новую метки до момента внесения изменения в правила
- позволит избежать проблемы неработоспособности правил на момент проведения процедуры смены меток