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.