Движок отчётов (ClickHouse)
Пользовательские отчёты созданы для того, чтобы анализировать именно те показатели, которые важны вашей компании. В них можно увидеть не только текущий статус задач, но и всю историю действий — это даёт гораздо более полную картину, чем стандартные выгрузки.
Подробнее о назначении и преимуществах пользовательских отчетов
Движок отчётов работает на базе ClickHouse — он входит в поставку Pyrus как отдельный контейнер. Чтобы включить движок, достаточно одной командой указать Pyrus параметры подключения к ClickHouse.
docker compose run --rm pyrus-setup enable-report-engine \ --clickhouseMode SingleNode \ --clickhouseUser default \ --clickhousePassword 'ПАРОЛЬ'
Команду можно запускать повторно — она безопасна и обновляет только те параметры, которые вы передали.
После включения движок начинает переносить в аналитическую базу новые события. А чтобы отчёты учитывали уже накопленную историю, дополнительно выполните разовый запуск индексации:
docker compose run --rm pyrus-setup --notes-to-analytic
Если нужно отключить движок отчётов — данные и настройки подключения сохранятся после отключения:
docker compose run --rm pyrus-setup disable-report-engine
Смена пароля ClickHouse
Порядок одинаков для одиночного сервера и для кластера:
Смените пароль пользователя в ClickHouse — это стандартная операция, подробности в документации: ALTER USER.
Передайте новый пароль Pyrus — используйте ту же команду
enable-report-engine. Остальные параметры можно не указывать, они сохранятся:docker compose run --rm pyrus-setup enable-report-engine \ --clickhouseMode ВАШ_РЕЖИМ \ --clickhouseUser ПОЛЬЗОВАТЕЛЬ \ --clickhousePassword 'НОВЫЙ_ПАРОЛЬ'
Перезапустите сервисы, которые работают с аналитической базой:
docker compose restart pyrus-web-api pyrus-async-worker
Развертывание в Kubernetes (K8s)
После включения движка отчётов может потребоваться перезапуск подов web-api и schedule-to-today.
Встроенный ClickHouse
Установите clickhouse-operator:
helm repo add pyrus-datacenter-k8s https://simplygoodsoftware.github.io/pyrus-datacenter-k8s helm repo update helm upgrade --install clickhouse-operator \ pyrus-datacenter-k8s/clickhouse-operator \ --namespace clickhouse-operator \ --create-namespace \ --wait
В файле values чарта добавьте следующие значения:
reportEngine:
enabled: true
clickhouse:
internal: true
keeper:
enabled: true
clickhouse:
enabled: true
Внешний ClickHouse
В файл values чарта укажите значения:
reportEngine: enabled: true clickhouse: internal: false clusterName: <cluster name> externalUser: <username> externalUserPassword: <user password> externalHost: <clickhouse host> externalPort: <clickhouse port>
Миграция исторических данных
- Создайте манифест с ПОДСТАНОВКОЙ параметров:
apiVersion: v1
kind: Pod
metadata:
name: clickhouse-data-migrator
namespace: pyrus
spec:
restartPolicy: Never
containers:
- name: migrator
envFrom:
- configMapRef:
name: common-variables
image: simplygoodsoftware/pyrus-setup:<ваша-версия-ДЦ>
imagePullPolicy: IfNotPresent
args:
- --notes-to-analytic
- -pc
- "2"
- Примените манифест:
kubectl apply -f clickhouse-data-migrator.yaml