Пaраметр logging (util_logging)#
Последовательность параметров logging предназначена для задания параметров отправки событий конфигуратора.
Обязательные параметры:
log_type
В значении параметра указывается режим логирования.
Тип параметра: последовательность параметров и их значения.
По умолчанию:
log_type:filekafka
Тип параметра: последовательность параметров и их значения.
Обязательные параметры:
group
В значении параметра указывается группа логов, которая будет использовать текущие настройки.
Значение system можно указать только при описании настроек логирования в секции system.optional. Если же определяются настройки конкретного сервиса, значение system будет недоступно.
Тип параметра: текстовое значение:
system;
error;
access.
broker
В значении параметра указывается исходный список брокеров в виде host:port. В качестве разделителя используется ",".
Тип параметра: текстовое значение.
topic
В значении параметра указывается название топика.
Тип параметра: текстовое значение.
protocol
В значении параметра указывается протокол соединения.
Тип параметра: текстовое значение.
plaintext
ssl
По умолчанию: plaintext.
Опциональные параметры:
id
В значении параметра указывается client.id.
Тип параметра: текстовое значение.
certificate
В значении параметра определяется местоположение клиентского сертификата.
Обязательно в случае:
*protocol == "ssl".
Тип параметра: текстовое значение.
ca
В значении параметра указывается местоположение сертификатов доверенных CA, используемых для проверки клиентских сертификатов.
Обязательно в случае:
*protocol == "ssl".
Тип параметра: текстовое значение.
key
В значении параметра определяется местоположение клиентского ключа.
Обязательно в случае:
*protocol == "ssl".
Тип параметра: текстовое значение.
ciphers
В значении параметра определяется ssl.cipher.suites. Аналогично ssl ciphers по умолчанию.
Обязательно в случае:
*protocol == "ssl".
Тип параметра: текстовое значение.
compression_codec
В значении параметра задается формат сжатия сообщений.
Тип параметра: текстовое значение.
none;
gzip;
snappy;
lz4;
zstd.
compression_level
В значении параметра задается уровень компрессии. Максимальное значение определяет наибольшую компрессию за счет большего использования CPU.
Тип параметра: целочисленное значение.
min: -1;
max: 12.
log_level
В значении параметра указывается уровень логирования. syslog - 3.
Тип параметра: текстовое значение.
debug
В значении параметра указывается список событий отладки, разделенных через запятую.
Тип параметра: текстовое значение:
'generic',
'broker', '
'topic',
'metadata',
'feature',
'queue',
'msg',
'protocol',
'cgrp',
'security',
'fetch',
'interceptor',
'plugin',
'consumer',
'admin',
'eos',
'mock',
'assignor',
'conf',
'all'.
max_messages
В значении параметра указывается максимальное количество сообщений, доступных в очереди.
Тип параметра: целочисленное значение:
min: 1;
max: 1000000.
По умолчанию:
max_messages: 1000000pattern_file
В значении параметра указывается путь к файлу, описывающему необходимый формат отсылаемой лог-записи.
В указываемом файле возможно использовать следующие переменные:
$ngx_kafka_log_hostname - имя хоста, с которого отправляется сообщение
$ngx_kafka_log_message - оригинальное содержимое лог-записи
$ngx_kafka_log_time - время формирования оригинальной лог-записи
$ngx_kafka_log_idх - message id сообщения, отправляемого в кафку (из директивы id).
Тип параметра: текстовое значение.
Пример файла, задающего формат отправляемых лог-записей:
{ "hostname": "$ngx_kafka_log_hostname", "message": "$ngx_kafka_log_message", "profile": "exampleprofilename", "time": "$ngx_kafka_log_time", "id": "$ngx_kafka_log_id" }escape
Представляет собой флаг, включающий экранирование спец. символов в используемых в шаблоне (pattern_file) переменных.
Тип параметра: флаг.
true;
false.
По умолчанию:
max_messages: 1000000
syslog
Тип параметра: последовательность параметров и их значения.
Обязательные параметры:
group
В значении параметра указывается группа логов, которая будет использовать текущие настройки.
Значение system можно указать только при описании настроек логирования в секции system.optional. Если же определяются настройки конкретного сервиса, значение system будет недоступно.
Тип параметра: текстовое значение.
system;
error;
access.
Опциональные параметры:
log_host
В значении параметра определяется хост для удаленной записи в системный журнал.
Тип параметра: текстовое значение.
log_port
В значении параметра указывается порт для удаленной записи в системный журнал.
Тип параметра: текстовое значение.
file
Тип параметра: последовательность параметров и их значения.
Обязательные параметры:
group
В значении параметра указывается группа логов, которая будет использовать текущие настройки.
Значение system можно указать только при описании настроек логирования в секции system.optional. Если же определяются настройки конкретного сервиса, значение system будет недоступно.
Тип параметра: текстовое значение:
system;
error;
access.
Пример конфигурационного файла с раздельным логированием в kafka и файл:
system:
wrk_count: 4
conn_count: 1024
optional:
log_type:
kafka:
- group:
- system
broker: broker:9092
topic: test_topic
id: message_id
protocol: ssl
certificate: cert.pem
ca: ca-cert
key: key.pem
file:
- group:
- error
- access
Пример конфигурационного файла с полным логированием в kafka и задаваемым пользователем форматом записей:
system:
wrk_count: 4
conn_count: 1024
optional:
log_type:
kafka:
- group:
- system
- error
- access
broker: broker:9092
topic: test_topic
id: message_id
pattern_file: resources/pattern_file.json
escape: true
protocol: ssl
certificate: cert.pem
ca: ca-cert
key: key.pem