Конфигурация Web-приложения сервера

Параметры конфигурации web-приложения сервера Центрального пульта хранятся в конфигурационном файле /etc/saymon/saymon-client.yaml.

Файлы с параметрами конфигурации web-приложения также могут храниться в следующих файлах (в порядке снижения приоритета):

  • MongoDB - параметры конфигурации, которые можно изменить через Rest API;

  • /etc/saymon/saymon-client.yaml - параметры конфигурации web-приложения в формате YAML (основной файл конфигурации);

  • /etc/saymon/saymon-client.json - параметры конфигурации web-приложения в формате JSON (дополнительный файл конфигурации);

  • /etc/saymon/client-config.js - параметры конфигурации web-приложения в старом формате JS (используется со старыми версиями web-приложения);

  • ./backend/server/saymon-client.yaml - параметры конфигурации web-приложения по умолчанию.

Файл конфигурации с низким приоритетом используется в том случае, если отсутствует файл конфигурации с высоким приоритетом.

Ниже приводится описание параметров конфигурации, которые хранятся в файле saymon-client.yaml.

authentication

В этой секции можно настроить параметры аутентификации пользователей.

authentication:
  availableMethods:
    - native
    - keycloak
  methodByDefault: keycloak
    services:
      keycloak:
        configUri: keycloak_frontend.json
        legacySupport: false

authentication.availableMethods

Cписок доступных методов аутентификации:

  • native - аутентификация по логину и паролю пользователя;

  • keycloak - аутентификация через реквизиты учетной записи пользователя в Keycloak.

По умолчанию – native.

authentication.methodByDefault

Метод аутентификации, который используется по умолчанию.

По умолчанию – native.

authentication.services

Секция с настройками сервисов аутентификации.

authentication.services.keycloak

Секция с настройками аутентификации через реквизиты учетной записи в Keycloak.

authentication.services.keycloak.configUri

Имя файла настроек соединения, сгенерированного Keycloak-сервером для web-приложения.

Файл настроек соединения необходимо разместить на сервере Центрального Пульта в каталоге /etc/saymon.

authentication.services.keycloak.legacySupport

Включает поддержку работы с Keycloak-сервером версии ниже 19;

  • false - поддержка работы с Keycloak-сервером версии ниже 19 выключена;

  • true - поддержка работы с Keycloak-сервером версии ниже 19 включена.

По умолчанию – false (работа с Keycloak-сервером версии ниже 19 не поддерживается).

comet

Секция с настройками взаимодействия web-приложения с сервером Центрального Пульта через comet-сервер.

comet:
  port: 8091
  url:
    - "https://cpult.ru/ws"
    - "http://10.78.5.11:8092"

comet.port

Номер порта, по которому web-приложение подключается к Comet-серверу.

По умолчанию используется порт 8091.

comet.url

Адреса для подключения web-приложения к comet-серверу из разных сетей. При задании адреса можно использовать IP-адрес, доменное имя или имя хоста. Также дополнительно можно указывать порт.

Если задано несколько адресов, то при установке подключения осуществляется их перебор.

Если задан параметр comet.url, то параметр comet.port игнорируется.

configuration

Секция с настройками окна конфигурации системы.

configuration:
  objectPermissions:
    displayType: tree

configuration.objectPermissions

configuration.objectPermissions.displayType

Настройки вида отображения списка объектов.

  • tree – интерфейс управления правами в виде дерева всех объектов в системе,

  • simple – упрощённый интерфейс управления правами доступа к объектам.

По умолчанию – tree.

defaultClassImage

Позволяет задать стандартное изображение и его размер для объектов определенного класса.

defaultClassImage:
  "29":
    img: /images/cloud.svg
    dim:
      - 100
      - 75

defaultClassImage.<number>

Идентификатор класса, например, "29".

defaultClassImage.<number>.img

Путь до изображения относительно папки, где находится конфигурационный файл.

defaultClassImage.<number>.dim

Размер изображения (в пикселях, [ширина, высота]).

Позволяет встраивать виджеты с информацией об объектах на сторонние ресурсы.

defaultEmbeddableLink:
  url: http://saymon.info/
  name: SAYMON

Имя виджета.

URL, на который ведёт виджет.

documentation

В этом разделе можно настроить ссылки на различную документацию для Центрального Пульта.

documentation: {
  main: {
    root: 'https://docs.saymon.tech',
    ru: 'https://docs.cpult.ru
  },
  notificationTemplates: {
    root: 'https://docs.saymon.tech/web-interface/system-configuration-window/notification-templates.html',
    ru: 'https://docs.cpult.ru/web-interface/system-configuration-window/notification-templates.html'
  }
},
...

documentation.main

Ссылки на пользовательскую документацию.

documentation.main.root

Ссылка на англоязычную документацию.

documentation.main.ru

Ссылка на русскоязычную документацию.

documentation.notificationTemplates

Ссылки на шаблоны оповещений.

documentation.notificationTemplates.root

Ссылка на англоязычные шаблоны оповещений.

documentation.notificationTemplates.ru

Ссылка на русскоязычные шаблоны оповещений.

documentation.restApi

Ссылки на документацию по REST API.

documentation.restApi.root

Ссылка на документацию по REST API.

geoMap

Центральный Пульт позволяет привязывать объекты к их геоположению и просматривать их на карте.

geoMap:
  serverName: openstreetmap.org
  initialPosition:
    - 30.341306
    - 59.930089
  initialZoom: 8

geoMap.initialPosition

Начальная позиция на карте в формате [долгота, широта].

По умолчанию – Россия, Санкт-Петербург.

geoMap.initialZoom

Начальный масштаб карты.

По умолчанию – 8.

geoMap.serverName

Имя сервера, отвечающего за отображения карты.

Также можно использовать локальный OSM-сервер.

grid

В разделе задаются настройки сетки для выравнивания объектов в стандартном виде.

grid:
  dim: 20
  color: rgba(128, 128, 128, 0.3)
  border: 4

grid.border

Максимальное значение отступа границы объекта от границы сетки (в пикселях).

По умолчанию – 4.

grid.color

Цвет сетки в формате RGBA.

По умолчанию – rgba(128, 128, 128, 0.3).

grid.dim

Размер сетки (в пикселях).

По умолчанию – 20.

gridView

В разделе задаются параметры отображения объектов в виде сетки.

gridView:
  cols: 6
  colWidth: 240
  rowHeight: 90
  gutterSize: 5

gridView.cols

Количество объектов в строке сетки.

При gridView.cols > 0 ширина объектов меняется автоматически.

При gridView.cols = 0 число объектов в строке сетки подстраивается под ширину экрана.

По умолчанию – 6.

gridView.colWidth

Ширина объектов при gridView.cols = 0 (в пикселях).

По умолчанию – 240.

gridView.gutterSize

Величина отступа между объектами (в пикселях).

По умолчанию – 5.

gridView.rowHeight

Высота объектов (в пикселях).

По умолчанию – 90.

History

В этом разделе задаются параметры, отвечающие за отображение данных на графиках, а также активируются некоторые дополнительные элементы интерфейса.

history:
  slider: false,
  downsampling:
    - period: 1-hours
      dsp: 15s-avg
    - period: 1-days
      dsp: 5m-avg
    - period: 1-weeks
      dsp: 1h-avg
    - dsp: 1d-avg
  modelChangeAnnotations: false

history.downsampling

Параметры уменьшения размера выборки данных - downsampling.

history.modelChangeAnnotations

Включает смену аннотаций на графиках;

  • false - смена аннотаций выключена,

  • true - смена аннотаций включена.

По умолчанию – false - смена аннотаций выключена.

history.slider

Включает ползунок, который используется для задания интервала времени отображения данных;

  • false - ползунок выключен,

  • true - ползунок включен.

По умолчанию – false - ползунок выключен.

incidents

В этом разделе настраиваются дополнительные поля для списков активных аварий и исторических аварий.

incidents:
  additionalFields:
    - properties.address,
  additionalFieldNames:
    - IP-address

incidents.additionalFieldNames

Имена дополнительных полей, отображаемые в интерфейсе.

incidents.additionalFields

Источники данных для дополнительных полей.

languages

Раздел позволяет управлять предустановленными языками интерфейса web-приложения.

languages:
  en:
    short: us
    long: English
  ru:
    short: ru
    long: Русский
  it:
    short: it
    long: Italiano

languages.<id>

Идентификатор языка.

Доступны три языка:

  • en - английский,

  • it - итальянский,

  • ru - русский.

languages.<id>.long

Полное название языка.

Это название отображается в меню текущего пользователя Центрального Пульта при выборе языка интерфейса.

languages.<id>.short

Идентификатор иконки флага.

Иконка отображается в меню текущего пользователя Центрального Пульта при выборе языка интерфейса.

image - es,

image - gb,

image - it,

image - ru,

image - us.

monitoring

В этом разделе настраивается скрытие стандартных мониторинговых сенсоров из интерфейса.

monitoring:
  standardTasks:
    - ping
    - snmpGet

monitoring.standardTasks

Массив идентификаторов отображаемых стандартных сенсоров.

tree

В этом разделе задаются настройки для дерева объектов.

tree:
  filterSubmit: true

tree.filterSubmit

Включает кнопку применения фильтра и отключает его автоматическое применение при вводе символов;

  • false - кнопка выключена,

  • true - кнопка включена.

По умолчанию – false - кнопка выключена.

Прочие параметры

agentInstallerUrl

Ссылка для скачивания установочного скрипта для агента.

authEnabled

Включает самостоятельную регистрацию для пользователей;

  • false - регистрация выключена,

  • true - регистрация включена.

По умолчанию – false - регистрация выключена.

canEditObjectStyle

Включает возможность вручную настраивать CSS-стили для объектов и связей.

При включении опции в разделе Параметры появляется подраздел Стили (объектов, связей);

  • false - настройка стилей выключена,

  • true - настройка стилей включена.

По умолчанию – true - настройка стилей включена.

collapseSections

Задаёт настройки первоначального отображения секций и графиков;

  • false - секции закреплены, графики раскрыты,

  • true - секции откреплены, графики свёрнуты.

По умолчанию – true - секции откреплены, графики свёрнуты.

defaultPieChartColors

Цвета секторов по умолчанию для круговой диаграммы.

defaultPieChartColors:
  - "#a90329"
  - "#3276b1"
  - "#009F3D"
  - "#9868B8"
  - "#F2C001"
  - "#FF742C"
  - "#90574E"
  - "#EB77BE"
  - "#FF9796"
  - "#AAC6E5"
  - "#8BDE90"
  - "#FDB5D0"

disabledSections

Позволяет удалить секции, которые показываются при подробном отображении объекта в верхней части экрана.

Список всех доступных секций:

enableAnalytics

Включает функционал модуля аналитики;

  • false - функционал выключен,

  • true - функционал включен.

По умолчанию – false - функционал выключен.

enableJiraTrigger

Включает возможность создать задачу в Jira при смене состояния объекта.

  • false - функционал выключен,

  • true - функционал включен.

По умолчанию – false - функционал выключен.

enableConditionalIncidents

Включает функционал генерации аварий;

  • false - функционал выключен,

  • true - функционал включен.

По умолчанию – false - функционал выключен.

enableSmsTrigger

Включает использование SMS-уведомлений;

  • false - SMS-уведомления выключены,

  • true - SMS-уведомления включены.

По умолчанию – false - SMS-уведомления выключены.

enableSnmpTranslate

Включает трансляцию SNMP OID в текстовый формат;

  • false - трансляция выключена,

  • true - трансляция включена.

По умолчанию – false - трансляция выключена.

enableVoiceCallTrigger

Включает использование голосовых вызовов;

  • false - голосовые вызовы выключены,

  • true - голосовые вызовы включены.

По умолчанию – false - голосовые вызовы выключены.

ForceEmptyStandardView

При выборе объекта, в том числе не содержащего вложенных объектов, Центральный Пульт по умолчанию показывает для него подробную информацию.

В параметре задаётся список идентификаторов классов, при выборе пустых объектов которых Центральный Пульт переходит в стандартный вид.

По умолчанию:

  • 1 (Root),

  • 3 (Host),

  • 13 (Node),

  • 43 (Dashboard).

hideConnectionStatusNotifications

Скрывает оповещения о статусе соединения с Comet-сервером;

  • false - оповещения выводятся в web-интерфейс,

  • true - оповещения выводятся в консоль.

По умолчанию – false - оповещения о статусе соединения с Comet-сервером выводятся в web-интерфейс.

hideResponseErrorNotifications

Скрывает оповещения об ошибках, возникающих при отправке автоматических запросов на сервер;

  • false - оповещения выводятся в web-интерфейс,

  • true - оповещения скрыты.

По умолчанию – false - оповещения выводятся в web-интерфейс.

Ошибки, возникающие при участии пользователя, например сохранение каких-либо данных в формах, будут выводиться в web-интерфейс в любом случае.

millisecondMonitoring

Включает обновление данных каждую миллисекунду;

  • false - обновление выключено,

  • true - обновление включено.

По умолчанию – false - обновление выключено.

pollInterval

Интервал между запросами данных с REST-сервера, если соединение между клиентом и Comet-сервером недоступно (в миллисекундах).

По умолчанию – 5000 - 5 секунд.

pollIntervalSocket

Интервал между запросами данных с Comet-сервера, если соединение между клиентом и Comet-сервером доступно (в миллисекундах).

По умолчанию – 60000 - 1 минута.

statHistory

Отображать кнопку "Показать историю данных".

  • true - кнопка включена,

  • false - кнопка выключена.

Параметр серверной конфигурации agent_stat должен быть включён.

По умолчанию – false

title

Заголовок для вкладок, а также имя, отображаемое в левом верхнем углу web-интерфейса.

По умолчанию – SAYMON.

themes

Этот параметр отвечает за настройку тем.

По умолчанию используется тема Light. Также доступна тема Dark.

CSS-файлы с темами находятся в директории $SAYMON_ROOT/target/client/css.

$SAYMON_ROOT - директория, где установлен Центральный Пульт.

themes:
  default:
    name: Light
  dark:
    name: Dark

useNaturalSort

Включает сортировку объектов с помощью библиотеки javascript-natural-sort:

  • false - объекты сортируются с помощью нативных функций браузера,

  • true - объекты сортируются с помощью библиотеки javascript-natural-sort.

По умолчанию – false - объекты сортируются с помощью нативных функций браузера.

При установленном useNaturalSort = true возможно замедление работы web-интерфейса при большом количестве объектов в системе (от 100 000).