Общие сведения
Сервисная утилита plm-util поставляется вместе с дистрибутивом Polymatica Analytics и предназначена дпредназначена для работы с репозиторием Polymatica Analytics в обход самой Polymatica Analytics для выполнения дополнительных действий, которые не реализованы в Polymatica Analytics:
- конвертация мультисфер из бинарного кода в json и обратно (см. Конвертация мультисфер);
- управления Python-скриптами для выполнения детализации Drill-through (см. Детализация Drill-through и Управление Python-скриптом для детализации Drill-through);
- валидация целостности данных мультисферы или всех мультисфер (см. Проверка целостности мультисферы);
- преобразование репозитория Polymatica Analytics 5.7 для совместимости с версией 5.9.
Подготовка к использованию утилиты
Перед началом работы с утилитой необходимо:
Остановить сервисы Polymatica Analytics командой:
Блок кода language bash systemctl stop polymatica.service
Проверить наличие утилиты plm-util в директории /usr/bin или директории /usr/sbin. Если утилиты в данных директориях не будет обнаружено, выполнить её установку:
Блок кода language bash sudo dpkg -i polymatica-util_x.y-z.xdeb
где x.y-z – идентификатор установленной на сервере версии Polymatica Analytics.
- Задать путь к репозиторию в конфигурационном файле:
Блок кода language bash ### Путь до репозитория plm.manager.repo_directory = /var/plmrepo/
- Задать расположение конфигурационного файла утилиты:
Блок кода language bash plm-util --config=<path>
Использование утилиты
Ввод команд напрямую в консоль
В этом случае запуск команды plm-util --help или --h выведет список всех доступных команд:
Блок кода | ||||||
---|---|---|---|---|---|---|
| ||||||
$ plm-util --help [14:47:29.990][ info][util] No configuration file loaded, using built-in configuration usage: plm-util <OPTIONS> Polymatica Analytics utility application and repo editor -h, --help display command line options --config=<path> change path to an application config file -v, --verbose enable more output from tool -j[<jobs>], --parallel[=<jobs>] set the number of parallel jobs --convert_store convert .store to .json files and vice versa -i[<path>], --input_path[=<path>] path to files to be converted -o[<path>], --output_path[=<path>] path to conversion result files --json_to_binary perform .json->.store conversion --server-codes generate server-codes.js and server-codes.json files --create-pyscript add new pyscript resource to repository --update-pyscript update pyscript resource in repository --delete-pyscript remove pyscript resource from repository --list-pyscripts list pyscript resources content from repository --validate-cube validate cube data integrity in repository --validate-all-cubes validate all cubes data integrity in repository --convert-repo make entire 5.7 repository compatible with cluster |
Использование конфигурационного файла
Во втором случае команды загружаются из конфигурационного файла plm-util.conf и необходимо определиться с его местоположением. Приоритет загрузки конфигурационных файлов следующий:
- Напрямую из командной строки при запуске plm-util с параметром --config=<path>.
- Иначе – поиск файла plm-util.conf в рабочей директории, где запускается утилита.
- Иначе – поиск файла /etc/polymatica/plm-util.conf.
- Иначе – встроенный пустой конфигурационный файл.
При запуске утилиты, она выведет, какой конфигурационный файл был выбран. Так, в выводе команд самой утилиты выше используется встроенный пустой конфигурационный файл.
Блок кода | ||||||||
---|---|---|---|---|---|---|---|---|
| ||||||||
# Включение детального вывода лога утилиты в консоль (трейсы). verbose # Путь до конвертируемого файла или директории # plm.test.input_path = /var/plmrepo/cubes/01234567-00000000-00000000-00000000 # Путь для сконвертированных файлов. # plm.test.output_path = /var/plmrepo/cubes/01234567-00000000-00000000-00000000/json_out # Выполнить обратное конвертирование .json -> .store. # plm.test.json_to_binary ### Путь до репозитория # plm.manager.repo_directory = /var/plmrepo/ # Название регистрируемого скрипта Python # pyscripts.create.name = Python Linked Scenario # Вид регистрируемого скрипта Python [formatted_export, linked_scenario] # pyscripts.create.type = linked_scenario # Путь до регистрируемого скрипта Python на диске. # pyscripts.create.script = /var/plmscripts/linked_scenario/first/first.py # Идентификатор размерности, в которой начинается переход в связанный сценарий для вида "linked_scenario". # pyscripts.create.measure_id = 07141982 # Удаление зарегистрированного скрипта Python по имени. # pyscripts.delete.by_name = Test PlmUtil Script # Удаление зарегистрированного скрипта Python по идентификатору. # pyscripts.delete.by_id = e654a03f # Внесение изменений в зарегистрированный скрипт Python по имени. # pyscripts.update.by_name = Test PlmUtil Script # Внесение изменений в зарегистрированный скрипт Python по идентификатору. # pyscripts.update.by_id = 1a71ec1d # Новое наименование для скрипта Python. # pyscripts.update.new_name = New PlmUtil Script # Новый тип скрипта Python. # pyscripts.update.new_type = formatted_export # Путь до нового скрипта Python. # pyscripts.update.new_script = /var/plmscripts/formatted_export/test_python_script_2.py # Идентификатор МС в репозитории для проверки целостности. # validate.cube_id = 646850cf-00000000-00000000-00000000 |
Параметры запуска утилиты
Данные аргументы относятся к самой утилите и ее работе:
Отобразить все команды и параметры утилиты:
Блок кода language bash plm-util -h plm-util --help
- Задать путь к конфигурационному файлу:
Блок кода language bash plm-util --config=<path>
- Подробный вывод информации о работе утилиты, в том числе порядок поиска конфигурационных файлов:
Блок кода language bash plm-util -v plm-util --verbose
- Задать количество одновременно выполняемых задач:
Блок кода language bash plm-util -j[<jobs>] plm-util --parallel[=<jobs>]
Выполнение сервисных процедур
Нижеприведенные инструкции описывают выполнение процедур с помощью plm-util:
Отображение дочерних | ||||
---|---|---|---|---|
|
Easy Heading Macro | ||||||
---|---|---|---|---|---|---|
|