Пaраметр log_type#
Последовательность параметров log_type предназначена для задания параметров отправки событий конфигуратора.
Обязательные параметры:
log_typeВ значении параметра указывается режим логирования.
Тип параметра: последовательность параметров и их значения.
По умолчанию:
log_type:filekafkaТип параметра: последовательность параметров и их значения.
Обязательные параметры:
groupВ значении параметра указывается группа логов, которая будет использовать текущие настройки.
Значение
systemможно указать только при описании настроек логирования в секции system.optional. Если же определяются настройки конкретного сервиса, значениеsystemбудет недоступно.Тип параметра: текстовое значение:
system;
error;
access.
brokerВ значении параметра указывается исходный список брокеров в виде host:port. В качестве разделителя используется «,».
Тип параметра: текстовое значение.
topicВ значении параметра указывается название 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В значении параметра указывается список событий отладки, разделенных через запятую.
Например,
debug: 'generic, broker, topic, metadata, feature, queue, msg, protocol, cgrp, security, fetch, interceptor, plugin, consumer, admin, eos, mock, assignor, conf, all'Тип параметра: текстовое значение:
„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 сообщения, отправляемого в kafka (из директивы 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В значении параметра указывается порт для удаленной записи в системный журнал.
Тип параметра: текстовое значение.
Пример:
log_type: syslog: - log_host: grlog-tst.esphere.local log_port: "20514" group: - errorfileТип параметра: последовательность параметров и их значения.
Обязательные параметры:
groupВ значении параметра указывается группа логов, которая будет использовать текущие настройки.
Значение
systemможно указать только при описании настроек логирования в секцииsystem.optional. Если же определяются настройки конкретного сервиса, значениеsystemбудет недоступно.Тип параметра: текстовое значение:
system;
error;
access.
securityТип параметра: последовательность параметров и их значения.
enabledВкл./Откл. логирование событий безопасности (XSD(«XSD Validation Block»), JSON(«JSON Validation Block»), RATE_LIMIT(«Rate limit exceeded»)). События безопасности отбрасываются в системный журнал (syslog) в виде JSON объекта, в поле
eventкоторого указан один из перечисленных типов событий.Тип параметра:
true;
false.
По умолчанию:
enabled: falseПример формата лога для JSON события приведен ниже:
{ "log_id": "6fe33d9541c89fa27f31a95c45ef7037", "datetime": "2024-05-29 17:44:37.865+0400", "profile": "actions_xsdvalidation", "service_id": "request_xsdvalidation", "log_data": { "client_port": "37532", "server_name": "localhost", "headers": { "Accept": "*/*", "Connection": "close", "User-Agent": "curl/7.29.0", "Host": " example.host:1000", "Content-Length": "469", "X-Real-IP": "127.0.0.1", "Content-Type": "application/xml" }, "scheme_id": "/sowa/profile_storage/custom/actions_xsdvalidation/schemes/xsd/soapenvelope.xsd", "server_ip": "127.0.0.1", "client_ip": "127.0.0.1", "server_port": "9016", "message": "cvc-complex-type.2.4.a: Invalid content was found starting with element 'ClientIdd'. One of '{ClientId}' is expected." }, "event": "XSD Validation Block" }threads_countЗадает количество потоков, используемых для отправки событий безопасности в системный журнал.
Тип параметра: целочисленное значение.
По умолчанию:
threads_count: 16hostnameЗадает hostname для отображения в сообщении системного журнала. По умолчанию указывается текущий hostname.
Тип параметра: текстовое значение.
appnameЗадает название приложения для отображения в сообщении системного журнала.
Тип параметра: текстовое значение.
По умолчанию:
appname: sowa-securityfacilityЗадает тип системы источника при записи сообщения в системный журнал.
Тип параметра: текстовое значение.
KERN;
USER;
MAIL;
DAEMON;
AUTH;
SYSLOG;
LPR;
NEWS;
UUCP;
CRON;
AUTHPRIV;
FTP;
NTP;
AUDIT;
ALERT;
CLOCK;
LOCAL0;
LOCAL1;
LOCAL2;
LOCAL3;
LOCAL4;
LOCAL5;
LOCAL6;
LOCAL7.
По умолчанию:
facility: USERseverityЗадает уровень критичности/важности сообщения системного журнала.
Тип параметра: текстовое значение.
EMERGENCY;
ALERT;
CRITICAL;
ERROR;
WARNING;
NOTICE;
INFORMATIONAL;
DEBUG.
По умолчанию:
severity: INFORMATIONALtarget_hostЗадает хост для отправки сообщения системного журнала.
Тип параметра: текстовое значение.
По умолчанию:
target_host: 127.0.0.1target_portЗадает порт для отправки сообщения системного журнала.
Тип параметра: целочисленное значение. Min: 0 Max: 65535
По умолчанию:
target_port: 514protocolЗадает используемый протокол для отправки сообщения системного журнала.
Тип параметра: текстовое значение.
UDP;
TCP.
По умолчанию:
protocol: UDPmsg_formatЗадает формат сообщения для отправки сообщения системного журнала.
Тип параметра: текстовое значение.
RFC_3164;
RFC_5424;
RFC_5425.
По умолчанию:
msg_format: RFC_3164
Пример конфигурационного файла с раздельным логированием в 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