Отправка сообщений syslog в базу postgresql в debian 8

Отправка сообщений syslog в базу postgresql

Настройка зависимостей

Ставим из исходников

Собираем syslog-ng со следующими ключами

Конфигурируем syslog-ng

sudo make install

Чтобы удалить

dpkg -r syslog-ng или sudo make uninstall

Установка из apt

Скачиваем скрипт

Конфиг файл syslog ng

Далее в базе создадим уникальный ключ, например по полю store1.

Далее выполним скрипт, для того чтобы не падал postgres выполнил скрипт, для того чтобы не падал syslog-ng.

Общая справка по syslog-ng

НАЗВАНИЕ

syslog-ng.conf — файл конфигурации syslog-ng

ОПИСАНИЕ

Файл конфигурации syslog-ng.

Маршрут сообщений в syslog-ng состоит из трёх частей: источник, приёмник и правила фильтрации.

ИСТОЧНИКИ

Вы можете объявить источник, воспользовавшись ключевым словом «source»:

source <название_источника> { sourcedriver параметры; sourcedriver параметры; … };

Название источника — это идентификатор, который вы используете для ссылки на группу сообщений. sourcedriver — это метод получения заданных сообщений. Доступны следующие драйверы:

— читать сообщения из заданного файла

— читать сообщения из заданного сокета AF_UNIX, SOCK_DGRAM (стиль BSDi)

— читать сообщения из заданного сокета AF_UNIX, SOCK_STREAM (стиль Linux)

— сетевой источник, используя протокол UDP. Если вы не хотите привязываться к какому-то особому интерфейсу, воспользуйтесь 0.0.0.0.

— сетевой источник, используя протокол TCP.

— локальный источник, используемый на системах Solaris

ПРИЁМНИКИ

Приёмники могут быть созданы с помощью ключевого слова «destination»:

destination <название_приёмника> { destdriver параметры; destdriver параметры; … ; };

— записывать сообщения в заданный файл

— записывать сообщения в заданный сокет AF_UNIX, SOCK_DGRAM (стиль BSDi)

— записыватьть сообщения в заданный сокет AF_UNIX, SOCK_STREAM (стиль Linux)

— сетевой приёмник, используя протокол UDP

— сетевой приёмник, использующий протокол TCP

— отправлять журнал на терминал пользователя

ФИЛЬТРЫ

Вы можете создать фильтры с помощью ключевого слова «filter»:

filter <имя_фильтра> { выражение; };

Где выражение — это простое булево выражение. Вы можете использовать «and», «or» и «not» для подключения встроенных функций. Функции могут быть следующими:

(список разделённых запятыми средств)

(список разделённых запятыми названий приоритетов ИЛИ диапазон разделённый «..»)

(регулярное выражение для совпадения с именем программы)

(регулярное выражение для совпадения с именем узла)

(регулярное выражение для совпадения с сообщениями)

ОБЪЯВЛЕНИЯ ЖУРНАЛА

Вы можете соединить источник и приёмник с помощью объявления log:

Где Sx ссылаются на один из объявленных источников журналов, Fx один из фильтров и Dx один из приёмников.

Фильтры объединяются с помощью логической операции И.

ОПЦИИ

Вы можете указать несколько глобальных опций syslog-ng в выражении options:

Где опцией может быть любая из следующих:

Включает или выключает сцепленный формат имени узла.

Это устаревший псевдоним для chain_hostnames().

Указывает доверять имени узла, которое включено в журнальное сообщение. Если keep_hostname — yes и в сообщении имеется имя узла, то оно остаётся неизменным, в другом случае оно всегда перезаписывается основываясь на информации о том, откуда было принято сообщение.

Включить или выключить использование DNS. syslog-ng блокиреут DNS-запросы, поскольку включение DNS может привести к атаке с отказом в обслуживании (DoS). Для предотвращения DoS, защитите ваш целевой syslog-ng правилами пакетного фильтра, и удостоверьтесь, что все узлы, которые может запросить syslog-ng решаемы.

Добавлять полностью квалифицированное доменное имя (FQDN) вместо короткого имени узла.

Включить или выключить требование чтобы имя узла состояло из разрешённых символов.

Регулярное выражение, совпадающее с именами узлов, которые не должны быть приняты как есть.

Включить или выключить использование кэша DNS.

Количество секунд, на которое кэшируется удачный запрос.

Количество секунд, на которое кэшируется неудачный запрос.

Количество имён узлов в кэше DNS.

Включить или выключить создание каталогов для файлов-приёмников.

Идентификатор пользователя, владеющего каталогами.

Идентификатор группы, владеющей каталогами.

Разрешения (восьмеричная маска).

Идентификатор пользователя, владеющего создаваемыми файлами.

Идентификатор группы, владеющей создаваемыми файлами.

Разрешения на создаваемые файлы.

Задаёт пороговое значение для сборки мусора, когда syslog-ng занят. Сборщик мусора запускается когда количество выделенных объектов достигает этого числа. По умолчанию: 3000.

Задаёт пороговое значение для сборки мусора, когда syslog-ng простаивает. Сборщик мусора запускается когда количество выделенных объектов достигает этого числа. По умолчанию: 100.

Количество строк, помещающихся в очередь вывода. Очередь вывода существует для всех приёмников.

Максимальная длина сообщения в байтах (заметим, что некоторые реализации syslogd имеют фиксированное ограничение в 1024 символа).

Количество секунд между двумя строками MARK. ЗАМЕЧАНИЕ: Ещё не реализовано.

Количество секунд между двумя сообщениями STATS.

Количество строк, которые могут быть сохранены в буфере перед записью в файл (может быть переопределено локально).

Время ожидания до того, как простаивающий файл-приёмник будет закрыт.

Время ожидания перед повторной установкой разорвавшихся подключений.

Эта переменная используется только для расширения макросов, которые означают время конкретного макроса в зависимости от этой настройки. Однако существуют отдельные макросы для ссылки на отметку о времени приёма (R_ макросы) и отметку времени о помещении сообщения в журнал (S_), поэтому использование этого значения не рекомендуется.

ФАЙЛЫ

Добавить комментарий

Войти с помощью: 

Ваш e-mail не будет опубликован. Обязательные поля помечены *