diff --git a/docs/ru/config/observatory.md b/docs/ru/config/observatory.md new file mode 100644 index 0000000..c85c341 --- /dev/null +++ b/docs/ru/config/observatory.md @@ -0,0 +1,100 @@ +# Мониторинг подключений + +Компонент мониторинга подключений использует HTTP-пинги для проверки состояния подключения исходящих прокси. Результаты мониторинга могут использоваться другими компонентами, например, балансировщиком нагрузки. +В настоящее время доступны два режима: [observatory](#observatoryobject) (фоновый мониторинг подключений) и [burstObservatory](#burstobservatoryobject) (мониторинг параллельных подключений). +Выберите один из них в соответствии с вашими потребностями. + +## ObservatoryObject + +```json +{ + "subjectSelector":[ + "outbound" + ], + "probeUrl": "https://www.google.com/generate_204", + "probeInterval": "10s", + "enableConcurrency": false +} +``` + +> `subjectSelector`: \[ string \] + +Массив строк, каждый элемент которого будет использоваться для сопоставления с префиксом тега исходящего подключения. +Например, для следующих тегов исходящих подключений: `[ "a", "ab", "c", "ba" ]`, `"subjectSelector": ["a"]` будет соответствовать `[ "a", "ab" ]`. + +> `probeUrl`: string + +URL-адрес, используемый для проверки состояния подключения исходящего прокси. + +> `probeInterval`: string + +Интервал между проверками. +Формат времени: число + единица измерения, например `"10s"`, `"2h45m"`. +Поддерживаемые единицы измерения: `ns`, `us`, `ms`, `s`, `m`, `h` (наносекунды, микросекунды, миллисекунды, секунды, минуты, часы). + +> `enableConcurrency`: true | false + +- `true` - проверять все соответствующие исходящие прокси одновременно, после чего сделать паузу на время, указанное в `probeInterval`. +- `false` - проверять соответствующие исходящие прокси по очереди, делая паузу на время, указанное в `probeInterval`, после проверки каждого прокси. + +## BurstObservatoryObject + +```json +{ + "subjectSelector":[ + "outbound" + ], + "pingConfig": {} +} +``` + +> `subjectSelector`: \[ string \] + +Массив строк, каждый элемент которого будет использоваться для сопоставления с префиксом тега исходящего подключения. +Например, для следующих тегов исходящих подключений: `[ "a", "ab", "c", "ba" ]`, `"subjectSelector": ["a"]` будет соответствовать `[ "a", "ab" ]`. + +> `pingConfig`: [PingConfigObject](#PingConfigObject) + + +### PingConfigObject + +```json +{ + "destination": "https://connectivitycheck.gstatic.com/generate_204", + "connectivity": "", + "interval": "1h", + "sampling": 3, + "timeout": "30s" +} +``` + +> `destination`: string + +URL-адрес, используемый для проверки состояния подключения исходящего прокси. +Этот URL-адрес должен возвращать код состояния HTTP 204. + +> `connectivity`: string + +URL-адрес, используемый для проверки подключения к локальной сети. +Пустая строка означает, что проверка подключения к локальной сети не выполняется. + +> `interval`: string + +Проверить все соответствующие исходящие прокси в течение указанного времени, отправляя `sampling` + 1 запросов на каждый прокси. +Формат времени: число + единица измерения, например `"10s"`, `"2h45m"`. +Поддерживаемые единицы измерения: `ns`, `us`, `ms`, `s`, `m`, `h` (наносекунды, микросекунды, миллисекунды, секунды, минуты, часы). + +> `sampling`: number + +Количество последних результатов проверок, которые нужно сохранить. + +> `timeout`: string + +Время ожидания ответа при проверке. +Формат такой же, как и у `interval`. + + + + + +