Реализация представлена в виде представления с SQL-запросом, собирающим всю необходимую информацию для последующей фильтрации.
Предполагается, что приложением выступает элемент директивы типа "Развёртывание".
Результатом выполнения представления является таблица со следующими параметрами:
- Name - Имя пакета развертывания;
- NotStarted - Количество компьютеров, не начавших развёртывание приложения;
- OnService - Количество точек обслуживания, кэширующих приложение;
- Success - Количество компьютеров с успешным развёртыванием приложения;
- Deny - Количество компьютеров, отклонивших развёртывание (к примеру не прошедших скрипт проверки требований пакета);
Для подготовки представления необходимо выполнить следующие действия:
- В разделе Zodiac'а Представления создать новое представление с именем "Состояние развертывания приложения" со следующим SQL-запросом:
SELECT
directive_element.name AS "Name",
COUNT(CASE WHEN status = 3 THEN computer_id END) AS "NotStarted",
COUNT(CASE WHEN status = 4 THEN computer_id END) AS "OnService",
COUNT(CASE WHEN status = 5 THEN computer_id END) AS "Success",
COUNT(CASE WHEN status = 6 THEN computer_id END) AS "Deny"
FROM public.computer_scatter_deploy_report
JOIN public.directive_element ON directive_element.id = computer_scatter_deploy_report.directive_element_id
GROUP BY directive_element.name
ORDER BY directive_element.name
- Перейти в подраздел Столбцы представления и выставить типы для следующих колонок:
- Name - String;
- NotStarted - Int;
- Success - Int;
- Deny - Int;
- OnService - Int;
- Выставить для каждой колонки отображаемые имена (колонка Имя);
- Сохранить созданное представление. В случае некорректной настройки появится предупреждение об ошибке.
Для применения представления необходимо выполнить следующие действия:
- Открыть в веб-интерфейсе Zodiac'а раздел Представления;
- Открыть представление Состояние развертывания приложения;
- При помощи фильтра выставить ограничения на соответствующие поля;
- Выбрать опцию Экспорт, задать имя файла;
- Получить файл-отчёт формата .xlsx.
- В случае наличия более одного элемента "Развёртывание" с одинаковым названием в отчёте возникнет коллизия в виде нескольких строк с одинаковым именем развертывания.