Настройка экспорта PDF по расписанию
1. Подготовьте компоненты
Для работы экспорта необходимы:
- все узлы кластера Smart Monitor Data Storage с плагинами
sm-report,sm-job-schedulerиopensearch-job-scheduler - экземпляр Smart Monitor Web с модулем
smartMonitorPDFExportи Chromium с необходимыми системными библиотеками - сервер SMTP, доступный с узлов Smart Monitor Data Storage
Установка компонентов описана в статьях Smart Monitor Data Storage и Smart Monitor Web. Подготовьте библиотеки Chromium по инструкции Подготовка к экспорту в PDF.
Узлы Smart Monitor Data Storage должны иметь доступ к адресу генерации PDF и порту SMTP-сервера. Smart Monitor Web должен иметь доступ к Smart Monitor Data Storage для выполнения запросов дашборда.
2. Настройте формирование PDF
Кластерные настройки
Параметры применяются через /_cluster/settings.
| Параметр | Значение по умолчанию | Назначение |
|---|---|---|
url_generation_pdf | https://localhost:5601/ | Базовый адрес Smart Monitor Web. |
report.user | Пустая строка | Пользователь для обращения к сервису генерации PDF. |
request_file_timeout | 120 | Максимальное ожидание готового PDF, в секундах. |
sme_request_timeout | 100 | Максимальное ожидание ответа на поисковый запрос дашборда, в секундах. |
Замените адрес и имя пользователя в примере значениями своей установки:
PUT /_cluster/settings
{
"persistent": {
"url_generation_pdf": "https://sm-web.example.org:5601/",
"report.user": "pdf_service",
"request_file_timeout": 180,
"sme_request_timeout": 100
}
}
Пароль доступа к сервису PDF
Пароль учетной записи report.user хранится в keystore под ключом report.pass.
Добавьте пароль на каждом узле Smart Monitor Data Storage. Способ записи ключей описан в статье Управление Keystore через API.
Параметры узла
При чтении почтовых конфигураций используются сохраненные в задании права пользователя. Если они отсутствуют или не могут быть применены, используются параметры узла:
| Параметр | Значение по умолчанию | Назначение |
|---|---|---|
job_user | admin | Резервный пользователь для чтения SMTP-конфигураций, групп и получателей |
job_user_roles | ["all_access"] | Роли резервного пользователя |
3. Настройте SMTP
Пользователь должен иметь доступ на чтение к выбранной SMTP-конфигурации, группе и ее получателям.
Отдельная SMTP-конфигурация
Создайте подключение через API Job Scheduler:
POST /_core/job_scheduler/smtp
{
"name": "Отчеты PDF",
"description": "Почтовый сервер для рассылки отчетов",
"host": "smtp.example.org",
"port": "465",
"user": "reports@example.org",
"user_email": "reports@example.org",
"password_id": "pdf_reports",
"timeout": 15000,
"proto": "ssl"
}
Или добавьте SMTP-конфигурацию через интерфейс: Навигационное меню - Параметры системы - Настройки модулей - Job Scheduler - SMTP-конфигурации.
Параметры SMTP-конфигураций, создание групп и получателей описаны в разделе Mail статьи Job Scheduler API.
Системная почтовая конфигурация
Если smtp_id отсутствует или равен null, используются общие почтовые настройки Job Scheduler. Они задаются через API настроек модуля:
PUT /_core/settings/job-scheduler
{
"email_host": "smtp.example.org",
"email_port": "465",
"email_proto": "ssl",
"email_user": "reports@example.org",
"email_user-email": "reports@example.org",
"email_timeout": 15000
}
Пароль системного подключения хранится на каждом узле под ключом jobscheduler.email.pass.
Проверка SMTP-подключения
Проверьте сохраненную SMTP-конфигурацию, подставив ее идентификатор:
POST /_core/job_scheduler/smtp/test_smtp/<smtp_id>
Порядок ручного экспорта дашборда описан в статье Экспорт в PDF.