Параметры настройки агента r_keeper¶
Настройки агента разложены по трём уровням:
| Уровень | Где | Кто меняет |
|---|---|---|
| Подключение | sidecar.yaml рядом с sidecar.exe |
заполняется командой enroll, правится вручную в редких случаях |
| Секреты | secrets.bin |
только команды enroll и set-rk7-creds, файл зашифрован |
| Рабочие параметры | приходят с сервера Брони | настраиваются в личном кабинете, выезд на площадку не нужен |
Адрес сервера Брони вводить не нужно ни на одном из уровней: агент знает его из
своей сборки и записывает в sidecar.yaml при привязке.
Обычно править sidecar.yaml не требуется
Интервалы, подробность журнала и служебные коды r_keeper удобнее задавать в личном кабинете: они доставляются агенту автоматически и переопределяют локальные значения.
После правки sidecar.yaml перезапустите службу:
Подключение к r_keeper¶
| Параметр | По умолчанию | Описание |
|---|---|---|
rk7.host |
(из enroll) |
Адрес кассового сервера r_keeper. Если агент стоит на том же сервере — 127.0.0.1. |
rk7.port |
15151 |
Порт XML-интерфейса midserv. |
rk7.tlsFingerprint |
(из enroll) |
Отпечаток TLS-сертификата кассового сервера, запомненный при привязке. Агент соединяется только с этим сертификатом. Вручную не редактируется — при смене сертификата выполните set-rk7-creds --repin. |
Служебные коды r_keeper¶
Коды, от имени которых агент создаёт и отменяет заказы. Значения по умолчанию подходят типовой конфигурации r_keeper; при расхождении их проще задать в личном кабинете — доставленные с сервера значения имеют приоритет.
| Параметр | По умолчанию | Описание |
|---|---|---|
rk7Defaults.stationCode |
1 |
Код станции, от имени которой создаются заказы. |
rk7Defaults.creatorCode |
4 |
Код сотрудника — создателя заказа. |
rk7Defaults.managerCode |
2 |
Код менеджера, требуемый при отмене заказа. |
rk7Defaults.deleteReasonCode |
2 |
Код причины удаления, используемый при отмене заказа. |
rk7Defaults.guests |
2 |
Количество гостей по умолчанию, если бронь его не задаёт. |
Служебные параметры¶
Эти ключи агент ведёт сам: они попадают в sidecar.yaml при привязке и в
обычной работе не редактируются. В файле они есть — в таблице параметров выше
их нет намеренно.
| Параметр | По умолчанию | Описание |
|---|---|---|
backend.baseUrl |
(из сборки агента) | Адрес сервера Брони. Определяется сборкой: рабочий дистрибутив обращается к https://broni.io, тестовый — к тестовому контуру. Значение записывается в файл командой enroll, поэтому уже привязанный агент сохраняет свой адрес. Задать другой можно только при привязке: sidecar.exe enroll --code XXXX-XXXX --backend <адрес> — это путь для тестовых стендов. |
intervals.checkinSeconds |
20 |
Как часто агент выходит на связь с Брони, в секундах. Резервное значение: рабочее приходит с сервера. При недоступности сервера интервал автоматически увеличивается. |
intervals.pollSeconds |
7 |
Как часто агент опрашивает открытые заказы в r_keeper, в секундах. Резервное значение: рабочее приходит с сервера. |
updates.manifestUrl |
(адрес Брони) | Адрес сведений о последней версии агента. Агент сверяет свою версию раз в 6 часов и пишет предупреждение в журнал, если устарел. Этот адрес отвечает только за проверку версии — по нему агент ничего не устанавливает: обновление запускается отдельной командой из личного кабинета (см. Обновление агента). Пустое значение отключает проверку. |
Полный вид файла¶
Ниже — актуальный набор параметров ровно в том виде, в каком его читает агент версии 0.6.5. Файл сформирован из исходного кода при сборке этой страницы.
# sidecar.yaml — файл создаётся командой `sidecar.exe enroll` рядом с sidecar.exe.
# Здесь показан полный набор ключей; править вручную нужно редко.
# Значения по умолчанию взяты из DefaultBootstrap() в internal/config/config.go.
# Пометка «служебный параметр» — ключ из InternalKeys там же: в таблице
# параметров его нет, агент ведёт его сам.
backend:
# служебный параметр
# Базовый адрес Брони. Подставляется сборкой агента и записывается при enroll;
# вручную задаётся только через `sidecar.exe enroll --backend <адрес>`.
baseUrl: <подставляется сборкой агента>
rk7:
# Кассовый сервер r_keeper 7 (midserv) и порт его XML-интерфейса.
host: 127.0.0.1
port: 15151
# SHA-256 сертификата midserv, зафиксированный при enroll (TOFU).
# Меняется только командой `sidecar.exe set-rk7-creds --repin`.
tlsFingerprint: ""
intervals:
# Резервные значения: рабочие интервалы приходят с сервера при check-in.
# служебный параметр
checkinSeconds: 20
# служебный параметр
pollSeconds: 7
updates:
# служебный параметр
manifestUrl: https://storage.yandexcloud.net/broni-dist/rkeeper-sidecar/stable/manifest.json
rk7Defaults:
# Коды r_keeper для служебных операций с заказами. Обычно приходят с сервера.
stationCode: "1"
creatorCode: "4"
managerCode: "2"
deleteReasonCode: "2"
guests: 2
Служебные файлы рядом с агентом¶
Эти файлы агент ведёт сам. Редактировать их не нужно.
| Файл | Назначение | Можно ли удалять |
|---|---|---|
secrets.bin |
пароль r_keeper и токен площадки, шифрование средствами Windows (DPAPI, привязка к машине) | нет — потребуется повторная привязка |
data\remote-config.json |
последние настройки, полученные с сервера | да, восстановится при следующем выходе на связь |
data\state.db |
кэш отслеживаемых заказов | да, восстановится автоматически |
data\spool\pending\ |
счета и события, ожидающие отправки | нет — потеряются данные для расчёта комиссии |
data\spool\sent\ |
подтверждённые отправки, чистятся через 7 дней | да |
data\spool\dead\ |
отклонённые сервером записи, нужны для разбора | да, но лучше сначала передать в поддержку |
data\update\ |
журналы применения обновлений (apply-<версия>.log) и отметка об успешном запуске |
да |
sidecar.exe.old |
предыдущая версия агента, появляется после обновления; из неё делается автоматический откат | да, после того как новая версия отработала сутки |
logs\sidecar.log |
журнал, ротация, хранение 7 дней | да |
Перенос агента на другой сервер
secrets.bin расшифровывается только на той машине, где был создан.
Скопировать папку на другой сервер и запустить агент не получится — нужна
новая привязка с новым кодом. Запросите его в личном кабинете.