SaltStack - Лесозаготовка
Регистрация используется для отслеживания событий запущенного программного обеспечения. Событие описывается описательным сообщением, которое может содержать переменные данные. Подход солевого журнала используется для решения любых проблем, с которыми вы можете столкнуться. Вы можете проверить это с определенными уровнями журнала.
Настройки конфигурации
Давайте подробно разберемся с различными настройками конфигурации для ведения журнала.
ЛОГ-ФАЙЛ
Записи журнала соли передаются через файл, который содержит имя локального пути или сетевое расположение для идентификации. Этот файл считается файлом журнала.
log_file: /var/log/salt/master
Здесь файл, зависящий от двоичного файла, выполняемого в master. Точно так же вы можете выполнить и в миньоне, как показано ниже.
log_file: /var/log/salt/minion
Вы также можете использовать удаленный адрес. Синтаксис использования удаленного адреса - <file | udp | tcp>: // <host | socketpath>: <port-if-required> / <log-facility>.
log_file: udp://loghost:port
Здесь функция журнала по умолчанию - LOG_USER.
LOG_LEVEL
Уровни журнала упорядочены по числовому значению. Библиотека Python по умолчанию определила большинство уровней ведения журнала. В дополнение к этому, Salt использует еще несколько уровней. Некоторые из уровней описаны ниже.
log_level: error; level value is 40 - Указывает, что запись выписки из журнала произошла при ошибке.
log_level: quiet; level value is 1000 - Это означает, что на этом уровне ничего не должно регистрироваться.
log_level: info; level value is 20 - Указывает на нормальную информацию журнала.
log_level: warn; level value is 30 - Указывает на запись в журнале при предупреждении.
log_level: debug; level value is 10 - Информация, полезная для отладки как реализаций соли, так и кода соли.
log_level: trace; level value is 5 - Более подробная информация об отладке кода.
LOG_LEVEL_LOGFILE
Он определяет уровень сообщений, отправляемых в файл журнала.
log_level_logfile: info
LOG_DATEFMT
Он определяет формат даты журнала. По умолчанию он представлен как% Y-% m-% d% H:% M:% S.
log_datefmt_logfile: '%Y-%m-%d %H:%M:%S'
LOG_FMT_CONSOLE
Он определяет формат консоли, регистрирующей сообщения. Соль использует обычайLogRecordатрибуты для раскрашивания вывода журнала консоли. Он следует следующему синтаксису -
'%(colorlevel)s' # log level name colorized by level
'%(colorname)s' # colorized module name
'%(colorprocess)s' # colorized process number
'%(colormsg)s' # colorized messages name
LOG_FMT_LOGFILE
Он определяет формат файла журнала, в котором регистрируются сообщения. Основной синтаксис следующий -
%(asctime)s,%(msecs)03d [%(name)-17s][%(levelname)-8s] %(message)s
LOG_GRANULAR_LEVELS
Этот уровень используется для более точного управления уровнями ведения журнала.
log_granular_levels:
'salt': 'info'
'salt.modules': ‘trace'
Здесь основная библиотека соли на уровне информации устанавливает salt.modules для регистрации на уровне трассировки.
Внешний обработчик журналов
Salt использует внешний обработчик журналов LogStash и Sentry для ведения журнала. Давайте разберемся с этим подробно в этой главе.
Обработчик LOGSTASH
LogStash - это открытый исходный код; конвейер безопасной обработки данных на стороне сервера. Давайте рассмотрим простой обработчик протоколирования UDP в Salt, который использует LogStash.
Укажите следующие изменения в главном файле Salt -
logstash_udp_handler:
host: 127.0.0.1
port: 9999
version: 1
msg_type: logstash
Затем добавьте изменения в файл конфигурации Logstash -
input {
udp {
port ⇒ 9999
codec ⇒ json
}
}
Вот, UDP - это вход, который должен иметь формат как json_event, который мы отправляем по сети.
Обработчик журналов SENTRY
Sentry - это отслеживание ошибок в реальном времени при производственном развертывании и информация для воспроизведения и устранения сбоев. Конфигурация по умолчанию в главном файле определена ниже.
sentry_handler:
dsn: https://pub-key:[email protected]/app-id
log_level: debug
Здесь уровень ведения журнала по умолчанию для обработчика часов - ERROR, но мы определили отладку log_level под ключом конфигурации sentry_handler.