Для каждого ресурса можно настроить набор правил, по которым будет определяться статус его сущностей. Возможно добавление произвольного количества правил. Поле Условие определяет, должны ли выполняться:

  • все правила (AllOf)
  • хотя бы одно из них (AnyOf).

Если хотя бы одна из проверок завершилась с ошибкой, то статус сущности будет выставлен в error, независимо от результата остальных проверок и условия.

Проверка выполнения каждого правила производится раз в минуту. Логи последних нескольких проверок доступны в меню ресурса в разделе «Проверки статуса».

Возможны четыре варианта статуса:

  • healthy — правила заданы, и параметры сущности соответствуют этим правилам;
  • unhealthy — правила заданы, но параметры сущности им не соответствуют;
  • unknown — правила не заданы либо проверка не может быть выполнена по каким-либо причинам;
  • error — во время выполнения хотя бы одного из правил произошла ошибка.

Для каждой сущности, при клике на плашку со статусом, открывается таблица с результатами выполнения правил и дополнительной информацией.

Событие ENTITY_UPDATED генерируется только при изменении статуса сущности.

Property

Правило типа Property проверяет, соответствует ли конкретный параметр сущности заданному шаблонному выражению.

Конфигурация правила состоит из одного параметра — выражения. Для описания выражения используется синтаксис Go template.

Примеры выражений:

  • {{ eq .entity.properties.lifecycle "deployed" }} — значение свойства lifecycle должно быть "deployed";
  • {{ lt .entity.properties.vulnerabilities 10 }} — значение свойства vulnerabilities должно быть меньше 10.