Базовая конфигурация system-optional#
Опциональные параметры:
wrk_userВ значении параметра определяется пользователь и группа, с правами которых будут запущены рабочие процессы.
Имя пользователя и группы должны совпадать.
Тип параметра: строковое значение.
По умолчанию:
wrk_user: sowactl
default_typeВ значении параметра задается MIME-тип ответов по умолчанию.
Тип параметра: строковое значение.
По умолчанию:
default_type: application/octet-stream
log_levelВ значении параметра задается уровень логирования.
В графе возможные значения приведен список уровней лога в порядке убывания уровня информативности.
Например, при уровне error в лог попадают сообщения уровней error, crit и alert.
Возможные значения:
debug;
info;
notice;
warn;
error;
crit;
alert;
off.
По умолчанию:
log_level: info
log_type- группа параметровlog_typeпредназначена для задания параметров отправки событий конфигуратора.Группа параметров, описанных в разделе Параметр log_type.
Возможные значения: последовательность параметров и их значения.
По умолчанию: не имеет значения по умолчанию.
pcre_jitПараметр разрешает или запрещает использование JIT-компиляции для регулярных выражений, известных на момент parsing конфигурации.
Тип параметра: булево значение.
on;
off.
По умолчанию: on.
log_formatВ значении параметра задается формат логирования.
Тип параметра: последовательность параметров и их значения.
По умолчанию: значение задается пользователем.
nameВ значении параметра задается наименование формата.
Тип параметра: текстовое значение.
formatВ значении параметра задается формат логирования nginx.
Тип параметра: текстовое значение.
map_hash_bucket_sizeВ значении параметра задается размер корзины в хэш-таблицах для переменных map. Значение по умолчанию зависит от размера строки кэша процессора.
Для быстрой обработки статических наборов данных, таких как имена серверов, значения директивы map, MIME-типы, имена полей заголовков запросов, nginx использует хэш-таблицы. Во время старта и при каждой переконфигурации nginx подбирает минимально возможный размер хэш-таблиц с учетом того, чтобы размер корзины, куда попадают ключи с совпадающими хэш-значениями, не превышал заданного параметра (
map_hash_bucket_size). Размер таблицы считается в корзинах. Подбор ведется до тех пор, пока размер таблицы не превысит параметрmap_hash_max_size. Для большинства хэшей есть директивы, которые позволяют менять эти параметры, например, для хэшей имен серверов директивы называютсяserver_names_hash_max_sizeиserver_names_hash_bucket_size.Параметр
map_hash_bucket_sizeвсегда выравнивается до размера, кратного размеру строки кэша процессора. Это позволяет ускорить поиск ключа в хэше на современных процессорах, уменьшив число обращений к памяти. Еслиmap_hash_bucket_sizeравен размеру одной строки кэша процессора, то во время поиска ключа число обращений к памяти в худшем случае будет равно двум — первый раз для определения адреса корзины, а второй — при поиске ключа внутри корзины.Тип параметра: строковое значение.
По умолчанию:
map_hash_bucket_size: 32|64|128
map_hash_max_sizeВ значении параметра задается максимальный размер хэш-таблиц для переменных map.
Тип параметра: строковое значение.
По умолчанию:
map_hash_max_size: 2048
server_names_hash_max_sizeВ значении параметра указывается максимальный размер хэш-таблиц имен серверов.
Тип параметра: строковое значение.
По умолчанию:
server_names_hash_max_size: 512
server_names_hash_bucket_sizeВ значении параметра задается размер корзины в хэш-таблицах имен серверов. Значение по умолчанию зависит от размера строки кэша процессора.
Тип параметра: строковое значение.
По умолчанию:
server_names_hash_bucket_size: 32|64|128
variables_hash_max_sizeВ значении параметра указывается максимальный размер хэш-таблицы переменных.
Тип параметра: строковое значение.
По умолчанию:
variables_hash_max_size: 1024
variables_hash_bucket_sizeВ значении параметра задается размер корзины в хэш-таблице переменных.
Тип параметра: строковое значение.
По умолчанию:
variables_hash_bucket_size: 64
types_hash_bucket_sizeВ значении параметра задается размер корзины в хэш-таблицах типов.
Тип параметра: строковое значение.
По умолчанию:
types_hash_bucket_size: 64
types_hash_max_sizeВ значении параметра задается максимальный размер хэш-таблиц типов.
Тип параметра: строковое значение.
По умолчанию:
types_hash_max_size: 1024
jvm_optionsВ значении параметра указываются дополнительные JVM параметры для указанного профиля. Например,
-XX:+HeapDumpOnOutOfMemoryError.Тип параметра: последовательность текстовых значений.
Используется в случае:
jvm == None
jvmВ значении параметра указываются дополнительные параметры запуска Java VM (в SOWA используется OpenJDK). Все параметры, за исключением GCType являются прямой копией аналогичных параметров JVM.
Тип параметра: группа параметров и их значения.
Используется в случае:
jvm_options == None
По умолчанию:
jvm:
Xmx: 128m
Опциональные параметры:
- Xmx
Максимальный размер Heap.
Тип параметра: численно-строковый литерал формата [0-9]+[kKmMG].
По умолчанию:
128m
- `Xms`
Минимальный размер Heap.
Тип параметра: численно-строковый литерал формата [0-9]+[kKmMG].
По умолчанию:
128m
- `MaxGCPauseMillis`
Максимальная пауза GC в миллисекундах.
Тип параметра: число миллисекунд
По умолчанию:
100
- `ParallelGCThreads`
Количество параллельных потоков GC.
Тип параметра: число
По умолчанию:
3
- `ConcGCThreads`
Количество одновременных потоков GC.
Тип параметра: число
По умолчанию:
2
- `InitiatingHeapOccupancyPercent`
Процент загрузки Heap.
Тип параметра: число
По умолчанию:
20
- `GCType`
Тип GC.
Возможные значения:
- UseG1GC
- UseSerialGC
- UseParallelGC
- UseParNewGC
По умолчанию:
UseG1GC
- `UseStringDeduplication`
Признак использования кеша строк.
Возможные значения: - true; - false.
По умолчанию:
false
- `UseCompressedStrings`
Признак использования компрессии строк.
Возможные значения: - true; - false.
По умолчанию:
false
- `OptimizeStringConcat`
Оптимизация склейки строк.
Возможные значения: - true; - false.
По умолчанию:
false
- `AggressiveOpts`
Оптимизация других параметров.
Возможные значения: - true; - false.
По умолчанию:
false
- `UseAES`
Использование AES.
Возможные значения: - true; - false.
По умолчанию:
false
- `UseAESIntrinsics`
Оптимизация AES.
Возможные значения: - true; - false.
По умолчанию:
false
ip_blacklistГруппа
ip_blacklistустанавливает динамический список ip адресов, которым запрещен доступ к сервисам.Группа, включающая в себя параметры, описанные в разделе Параметр ip_blacklist.
Тип параметра: группа параметров и их значения.
По умолчанию: значение задается пользователем.
session_max_sizeВ значении параметра указывается максимальное допустимое количество сессий.
Тип параметра: целочисленное значение.
По умолчанию: значение задается пользователем.
session_cacheВ значении параметра
session_cacheуказывается имя и тип размера, а также сам размер кэша для TLS(SSL) сессии.Тип параметра: группа параметров и их значения.
По умолчанию: значение задается пользователем.
Обязательные параметры:
type
В значении параметра указывается тип размера кэша.
Значение параметра type должно быть уникальным.
Возможные значения: - off; - none; - builtin; - shared.
name
В значении параметра указывается имя размера.
Используется в случае:
type: sharedТип параметра: строковое значение.
size
В значении параметра указывается величина размера.
Используется в случае:
type: builtin; type: shared.Тип параметра: текстовое значение с суффиксом.
Суффиксы: - число без суффикса — байты; - k / K — килобайты; - m / M — мегабайты.
service_statusВкл./Откл. мониторинга статистики SOWA.
URL для просмотра статистики:
localhost:[порт сервиса SOWA]/status.Статистика доступна только для локального хоста (127.0.0.1 | localhost).
Возможные значения:
on;
off.
По умолчанию:
service_status: on
underscores_in_headersПараметр
underscores_in_headersпредназначен для разрешения использования заголовков с подчеркиванием. По умолчанию, значением параметра определен запрет на пропуск заголовков с нижним подчеркиванием. В данном случае запросы не блокируются, а заголовки, содержащие нижнее подчеркивание, не передаются. При этом данные заголовки обрабатываются директивойignore_invalid_headers.Возможные значения:
true;
false.
По умолчанию:
underscores_in_headers: falseignore_invalid_headersОпределяет, следует ли игнорировать поля заголовка с недопустимыми именами.
Возможные значения: -true; -false.
По умолчанию:
ignore_invalid_headers: trueautostartВ значение параметра указывается флаг для автоматического запуска профиля при запуске сервера и во время его (сервера) работы, если профиль не был остановлен должным образом.
Возможные значения:
true;
false.
По умолчанию:
autostart: truestrict_hostname_checkВкл./Откл. проверка имен хостов. Если имя хоста не из белого списка, то запрос будет заблокирован. При включенном параметре пользователю по умолчанию будет возвращен код 404, если указанный хост не найден. Если задан параметр hostname_error_code, то вернется значение, указанное в нем.
Возможные значения:
true;
false.
По умолчанию:
strict_hostname_check: falsehostname_error_codeВ значении параметра указывается код ошибки, возвращаемый в случае не удавшейся проверки имени хоста.
Используется в случае:
strict_hostname_check is not None.Тип параметра: целочисленное значение.
По умолчанию: значение задается пользователем.
extended_status_zoneОпределяет зону общей памяти, используя ее для сбора расширенной статистики (цепочки, безопасность, SimpleRateLimiter).
Тип параметра: последовательность параметров и их значения.
enabledОбязательный параметр. В значении параметра определяется, включать или нет определение зоны общей памяти.
Тип параметра: текстовое значение.
on;
off.
По умолчанию:
enabled: on
spaceОпределяет размер хранилища объектов.
Тип параметра: текстовое значение.
По умолчанию:
space: 10m
entriesОпределяет количество одновременно сохраняемых объектов.
Тип параметра: целочисленное значение.
По умолчанию:
entries: 32000
shared_ldap_connectionsПараметры подключения LDAP.
Тип параметра: последовательность параметров и их значения.
nameТип параметра: текстовое значение.
connectionВключает в себя группу параметров, описанных в разделе Параметр ldap_connection
thread_poolsТип параметра: последовательность параметров и их значения.
По умолчанию: значение задается пользователем.
Обязательные параметры:
id
В значении параметра определяется уникальный идентификатор пула потоков.
Значение параметра
idдолжно быть уникальным.Тип параметра: текстовое значение.
threads_num
В значении параметра определяется количество потоков пула.
Значение параметра
idдолжно быть уникальным.Тип параметра: целочисленное значение.
Опциональные параметры:
max_queue
В значении параметра указывается ограничение по количеству задач, ожидающих в очереди.
Тип параметра: целочисленное значение.
По умолчанию: в очереди может находиться до 65536 задач.
async_io
Группа параметров, отвечающих за настройку файлового асинхронного ввода-вывода.
Группа, включающая в себя параметры, описанные в разделе Параметр async_io.
Тип параметра: группа параметров и их значения.
По умолчанию: значение задается пользователем.
mapsВ значениях последовательности maps создается новая переменная
dst_var, значение которой зависит от значений одной или нескольких исходных переменных, указанных вsrc_var.Тип параметра: последовательность параметров и их значения.
По умолчанию: значение задается пользователем.
Обязательные параметры:
src_var
В значении параметра определяется строка с одной или несколькими исходными переменными (любые, доступные переменные nginx). Например,
src_var: "$var1:$var2"
Если указывается несколько переменных, то значение необходимо поместить в кавычки. Разделителем переменных может выступать любой символ (: ? ! . , ;).
Тип параметра: текстовое значение.
- `dst_var`
В значении параметра определяется имя переменной для хранения значения результата. Здесь задается имя произвольной переменной.
Тип параметра: текстовое значение.
- `mapping`
Тип параметра: последовательность параметров и их значения.
**Обязательные параметры:**
- `src_val`
В значении параметра указывается одно из возможных значений переменной `src_var`, которое будет отображено в указанное значение (переменная `dst_val`) переменной `dst_var` в случае совпадения. Можно использовать регулярные выражения, указав перед выражением ~ (без учета регистра) или ~* (с учетом регистра). Например,
```yaml
src_val: ~$var1
```
Тип параметра: текстовое значение.
- `dst_val`
В значении параметра определяется значение результата.
Тип параметра: текстовое значение.
Опциональные параметры:
- default
В значении параметра определяется значение по умолчанию для dst_var.
Тип параметра: текстовое значение.
По умолчанию:
default: ''
- `volatile`
В значении параметра указывается, что переменная не кэшируется.
Возможные значения: - true; - false.
По умолчанию: значение задается пользователем.
- `hostnames`
В значении параметра указывается, что исходными значениями могут быть имена хостов с префиксом или маской суффикса.
Возможные значения: - true; - false.
По умолчанию: значение задается пользователем.
Пример использования параметра maps:
maps:
- src_var: $request_uri
dst_var: $rq_uri
volatile: true
mapping:
- src_val: ~^\/(PhizIC|mysn-ss-web)\/CSAFrontLogin\.do\?AuthToken=.*$
dst_val: hc
- src_var: "$http_cookie:$rq_uri"
dst_var: $ups_num
default: hc
volatile: true
mapping:
- src_val: ~*^.*:hc$
dst_val: hc
- src_val: ~*(.*JSESSIONID=.*DPJSESSIONID=.*|.*DPJSESSIONID=.*JSESSIONID=.*):$
dst_val: nohc
# Замена сервер:порт в ответном хедере Location
- src_var: $sent_http_location
dst_var: $new_location
volatile: true
mapping:
- src_val: ~*^(https?:\/\/)([^\/]+)(.*)
dst_val: $1$host:$server_port$3
serve_static_fileВ значении параметра указывается относительный путь из каталога пользовательских ресурсов.
Тип параметра: последовательность параметров.
По умолчанию: значение задается пользователем.
proxy_temp_treeВ значении параметра задается имя каталога для хранения временных файлов с данными, полученными от проксируемых серверов. В каталоге может использоваться иерархия подкаталогов до трех уровней.
Тип параметра: текстовое значение.
По умолчанию: значение задается пользователем.
body_temp_treeВ значении параметра указывается каталог для хранения временных файлов с телами запросов клиентов. В каталоге может использоваться иерархия подкаталогов до трех уровней.
Тип параметра: текстовое значение.
По умолчанию: значение задается пользователем.
storagesТип параметра: последовательность параметров и их значения.
По умолчанию: значение задается пользователем.
Обязательные параметры:
nameВ значении параметра определяется имя хранилища.
Тип параметра: строковое значение.
Опциональные параметры:
spaceВ значении параметра определяется размер объекта хранения.
Тип параметра: текстовое значение с суффиксом.
Суффиксы:
число без суффикса — байты;
k / K — килобайты;
m / M — мегабайты.
По умолчанию:
space: 10m
- `entries`
В значении параметра определяется количество одновременно сохраненных объектов.
Тип параметра: целочисленное значение.
По умолчанию:
entries: 8096
- `remove_time`
В значении параметра определяется время хранения объектов.
Тип параметра: текстовое значение с суффиксом.
Суффиксы: - s / S — секунды; - m / M — минуты.
По умолчанию: не удаляется.
transformations_debugВкл./Откл. журналирование отладки преобразования.
Тип параметра:
true;
false.
По умолчанию:
transformations_debug: false
get_loadТип параметра: последовательность параметров и их значения.
По умолчанию: значение задается пользователем.
Опциональные параметры:
enabledВкл./Откл. отображение статистики загрузки сервера в переменные (
$stat_cpu_usage,$stat_memory_usage).Тип параметра:
true;
false.
intervalИнтервал загрузки статистики в секундах.
Тип параметра: целочисленное значение.
vaultСекция параметров для работы с Системой управления секретами.
Секция, включающая в себя параметры, рассмотренные в разделе «Параметр vault».
Тип параметра: секция параметров и их значения.
По умолчанию: значения группы задаются пользователем.
healthcheck_dynamicНастройка динамической генерации ответов на запросы о текущем состоянии экземпляра или сервиса, объявленного в конфигурации.
Секция, включающая в себя параметры, рассмотренные в разделе «Параметр healthcheck_dynamic».
Тип параметра: секция параметров и их значения.
По умолчанию: значения группы задаются пользователем
healthcheckОбязательные параметры:
urlВ значении параметра определяется url для healthcheck-запросов. Указывается, как строка, а не регулярное выражение — для поиска полного соответствия и минимального пересечения с основными сервисами.
Тип параметра: строковое значение.
Опциональные параметры:
content_type
В значении параметра определяется возвращаемый MIME тип.
Тип параметра: текстовое значение.
content_encoding
В значении параметра определяется возвращаемый MIME тип.
Тип параметра: текстовое значение.
disable_access_log
Отключает запись access-логов.
Тип параметра:
true;false.
Значение по умолчанию:
disable_access_log: falsedisable_error_log
Отключает запись error-логов.
Тип параметра:
true;false.
Значение по умолчанию:
disable_error_log: falsedisable_gathering_statsОтключает сбор статистики.
Тип параметра:
true;false.
Значение по умолчанию:
disable_gathering_stats: false
disable_listenВкл./откл. прослушивание портов запущенного профиля в зависимости от заданных условий.
Обязательные параметры:
conditionПоследовательность параметров.
check_typeОбязательный параметр.
Тип параметра: текстовое значение.
drain_is_upДекодирует состояние утечки upstream, как состояние «up».
Используется в случае:
check_type: no_live_upstreamТип параметра: текстовое значение.
on;off.
По умолчанию: on.
passive_hc_modeУстанавливает режим декодирования состояния upstream с пассивным health-check.
Используется в случае:
check_type: no_live_upstreamТип параметра: текстовое значение.
«exclude» - слушающие порты, связанные с сервисом с upstream группой с пассивным hc, будут исключены из режима автоматической остановки/запуска прослушивания.
«ignore» - состояние upstream-группы с пассивным hc всегда «up».
«include» - состояние upstream-группы с пассивным hc всегда просчитывается и используется.
По умолчанию:
passive_hc_mode: excludenot_binded_modeДополнительно закрывает слушающие порты в сервисе, не привязанном к upstream-группам. Уникальное значение.
Используется в случае:
check_type: no_live_upstreamТип параметра: текстовое значение.
«status» - сервис статуса профиля;
«non_upstream» - сервисы без http upstream-групп.
custom_bindsПозволяет указывать порты вручную - upstream-группы для автоматического закрытия и слушания. Используется, когда сервис, привязанный к какому-либо порту, не имеет upstream-группы (например, service_http_kafka_proxy).
Используется в случае:
check_type: no_live_upstreamportПорт для автоматического закрытия.
Тип параметра: целочисленное значение.
Min: 0
Max: 65535
service_idID сервиса, upstream-группа которого будет использоваться.
service_typeТип сервиса, upstream-группа которого будет использоваться.
Тип параметра: текстовое значение.
«service_main_proxy»;
«service_http_proxy»;
«service_web_socket_proxy».
upstream_idID upstream-группы.
Тип параметра: текстовое значение.
skip_portsПорты, определенные этим параметром, никогда не будут закрыты с помощью механизма автоматического закрытия для слушания.
Тип параметра: целочисленное значение.
Min: 0
Max: 65535
Опциональные параметры:
activeВключает слушающие порты согласно условиям.
Тип параметра: булево значение.
true;
false.
По умолчанию:
active: false
opentelemetryОбщие параметры для трассировки Opentelemetry.
Тип параметра: группа параметров и их значения.
По умолчанию: не имеет значения по умолчанию.
exporterОпределяет параметры соединения с OTLP/GRPC агентом. Обязательный параметр.
Тип параметра: группа параметров и их значения.
endpointАдрес OTLP/gRPC конечной точки, которая будет получать данный телеметрии. Обязательный параметр.
Тип параметра: текстовое значение.
intervalМаксимальный интервал между двумя экспортами.
Тип параметра: текстовое значение.
По умолчанию:
interval: 5sbatch_sizeМаксимальное количество интервалов, отправляемых в одном пакете на один рабочий процесс.
Тип параметра: целочисленное значение.
По умолчанию:
batch_size: 512batch_countКоличество ожидающих обработки пакетов на один рабочий процесс. Интервалы, превышающие это ограничение, будут сброшены.
Тип параметра: целочисленное значение.
По умолчанию:
batch_count: 4
service_nameЗадает “service.name” атрибут OTel ресурса.
Тип параметра: текстовое значение.
По умолчанию:
service_name: profile_name.sowachains_tracingОпределяет параметры трассировки действий в цепочках.
Тип параметра: группа параметров и их значения.
enabledВключает или отключает трассировку действий в цепочках.
Возможные значения:
true;
false.
disableAllChainsByDefaultОтключает трассировку всех цепочек.
Возможные значения:
true;
false.
По умолчанию:
disableAllChainsByDefault:true
parameter_opentelemetry_tracingСекция параметров телеметрии.
Секция, включающая в себя параметры, рассмотренные в разделе «Параметр opentelemetry_tracing».
Тип параметра: секция параметров и их значения.
По умолчанию: значения группы задаются пользователем.
buffersСекция параметров буферизации.
Секция, включающая в себя параметры, рассмотренные в разделе «Параметр buffers».
Тип параметра: секция параметров и их значения.
По умолчанию: значения группы задаются пользователем.
worker_clean_cache_on_failОпределяет необходимость очистки временных файлов после неожиданного завершения рабочего процесса.
Тип параметра:
true - файлы очищаются;
false - файлы не очищаются.
По умолчанию:
worker_clean_cache_on_fail: trueworker_cpu_affinityПривязывает рабочие процессы к наборам процессоров. Каждый набор процессоров представлен битовой маской разрешенных процессоров. Для каждого рабочего процесса должен быть определен отдельный набор. По умолчанию рабочие процессы не привязаны к каким-либо конкретным процессорам.
Тип параметра: текстовое значение.
По умолчанию:
worker_cpu_affinity: autoНиже приведены примеры значений директивы:
worker_cpu_affinity: "0001 0010 0100 1000" worker_cpu_affinity: "0101 1010" worker_cpu_affinity: "auto" worker_cpu_affinity: "auto 01010101" worker_cpu_affinity: "00000001 00000010 00000100 00001000 00010000 00100000 01000000 10000000"allocator_typeВыбирает распределитель SOWA.
Тип параметра: строковое значение.
„std“;
„mimalloc“;
„jemalloc“.
По умолчанию:
allocator_type: mimallocallocator_envНастройка среды для распределителя.
Используется в случае:
allocator_typeне задан.Тип параметра: последовательность текстовых значений.