Files

5.5 KiB

Мониторинг подключений

Компонент мониторинга подключений использует HTTP-пинги для проверки состояния подключения исходящих прокси. Результаты мониторинга могут использоваться другими компонентами, например, балансировщиком нагрузки. В настоящее время доступны два режима: observatory (фоновый мониторинг подключений) и burstObservatory (мониторинг параллельных подключений). Выберите один из них в соответствии с вашими потребностями.

ObservatoryObject

ObservatoryObject соответствует элементу observatory в файле конфигурации.

{
  "observatory": {
    "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

BurstObservatoryObject соответствует элементу burstObservatory в файле конфигурации.

{
  "burstObservatory": {
    "subjectSelector": ["outbound"],
    "pingConfig": {}
  }
}

subjectSelector: [ string ]

Массив строк, каждый элемент которого будет использоваться для сопоставления с префиксом тега исходящего подключения. Например, для следующих тегов исходящих подключений: [ "a", "ab", "c", "ba" ], "subjectSelector": ["a"] будет соответствовать [ "a", "ab" ].

pingConfig: PingConfigObject

PingConfigObject

{
  "destination": "https://connectivitycheck.gstatic.com/generate_204",
  "connectivity": "",
  "interval": "1m",
  "sampling": 10,
  "timeout": "5s",
  "httpMethod": "HEAD"
}

destination: string

URL-адрес, используемый для проверки состояния подключения исходящего прокси. Этот URL-адрес должен возвращать код состояния HTTP 204. По умолчанию "https://connectivitycheck.gstatic.com/generate_204".

connectivity: string

URL-адрес, используемый для проверки подключения к локальной сети. Пустая строка означает, что проверка подключения к локальной сети не выполняется.

interval: string

Проверить все соответствующие исходящие прокси в течение указанного времени, отправляя sampling + 1 запросов на каждый прокси. Формат времени: число + единица измерения, например "10s", "2h45m". Поддерживаемые единицы измерения: ns, us, ms, s, m, h (наносекунды, микросекунды, миллисекунды, секунды, минуты, часы). По умолчанию "1m". Минимальное допустимое значение — "10s". Если указано меньше, будет использовано "10s".

sampling: number

Количество последних результатов проверок, которые нужно сохранить. По умолчанию 10.

timeout: string

Время ожидания ответа при проверке. Формат такой же, как и у interval. По умолчанию "5s".

httpMethod: string

HTTP-метод, используемый для выполнения проверки (например, "HEAD", "GET"). По умолчанию "HEAD".