SRV_ADMIN Telegram 4056
Несмотря на то, что сейчас существует очень много современных решений по сбору и обработке логов, старый текстовый формат syslog не потерял полностью актуальность. Причин тому несколько. Перечислю то, что сам вспомнил:

◽️Формат популярен для сетевого оборудования, IPMI серверов.
◽️Нетребователен к ресурсам железа.
◽️Нет необходимости изменения конфигурации сервера для приёма новых логов.
◽️Это стандарт для ведения логов в POSIX-совместимых системах.
◽️Много софта поддерживают формат syslog, нет необходимости устанавливать дополнительное ПО на клиентах.
◽️Легко ротировать логи с помощью logrotate.

Я использую syslog регулярно, несмотря на то, что для глобального хранения логов устанавливаю ELK Stack. Использую его, если нужна какая-то аналитика по логам, а не просто хранение текстовых данных.

Наиболее частое использование формата syslog - сбор логов с Микротиков. Сами они хранят логи только до перезагрузки. Если где-то есть любой Linux сервер, собираю там текстовые логи с Микротиков. Аналитика обычно не нужна. Важно просто иметь представление о том, что происходило на устройстве, так как перезагрузка по различным причинам логи очистит. Писал когда-то давно статью по этому поводу. Она не потеряла актуальность, так как ни настройка роутеров не поменялась, ни rsyslog.

Второй пример использования - быстро собрать логи для анализа содержимого с помощью Zabbix. Для анализа обычных текстовых логов не нужны никакие костыли и дополнительные настройки. Zabbix встроенными средствами может их читать и анализировать с помощью regex. Это позволяет очень просто и быстро настроить какие-нибудь уведомления на события. Например, аутентификацию по SSH.

Соответственно, если вам нужно что-то быстро связать с системой мониторинга Zabbix и это что-то умеет писать логи в формате syslog, настройка мониторинга очень сильно упрощается. Можно прямо на Zabbix Server настроить rsyslog на приём логов по сети. Для этого необходимо в /etc/rsyslog.conf раскомментировать:

module(load="imudp")
input(type="imudp" port="514")
module(load="imtcp")
input(type="imtcp" port="514")

И перезапустить службу:

# systemctl restart rsyslog

Проверяем, слушает ли rsyslog входящие подключения:

# ss -tulnp | grep rsyslogd

Если слушает 514 порт, то можно отправлять на него логи. Обычно в настройках оборудования или софта достаточно просто указать IP адрес сервера с rsyslog, чтобы потекли данные на сервер. Дополнительно можно задать порт, если используете не стандартный, facility (категория), severity (важность).

Если больше не менять настройки, то все логи будут писаться в общий syslog файл. Обычно это /var/log/syslog. Удобно их разделять либо по IP адресам отправителей, либо по приложениям, которые их отправляют. Я чаще по хостам разделяю логи. Для этого надо задать шаблон формирования лог-файлов. Добавляем в rsyslog.conf:

$template FILENAME,"/var/log/syslog/%fromhost-ip%.log"
if $fromhost-ip != '127.0.0.1' then ?FILENAME
& stop

Данное правило будет автоматически раскладывать все логи с удаленных устройств по файлам в директории /var/log/syslog с именами в виде IP адресов. При этом мы исключаем туда запись локальных логов, иначе они появятся под адресом 127.0.0.1, и предотвращаем их запись в системный syslog файл. По шаблонам наглядные примеры есть в документации.

Для удобного просмотра подобных логов можно использовать какой-то простенький веб интерфейс. Я описывал некоторые из них:

▪️tailon

Ожидал тут сделать список из таких инструментов, но оказалось, что кроме tailon больше ничего и не знаю. Если кто-то знает, чем удобно просматривать текстовые логи Linux через браузер, поделитесь информацией.

Можно взять тот же Webmin. Там неплохой раздел для просмотра локальных логов. Похожая возможность есть и в Cockpit.

☝️ Кстати, кто-то может не знает, что rsyslog агент есть и под Windows. Он формат виндовых логов преобразует в syslog и отправляет на rsyslog сервер.

❗️Если заметка вам полезна, не забудьте 👍 и забрать в закладки.

#logs



tgoop.com/srv_admin/4056
Create:
Last Update:

Несмотря на то, что сейчас существует очень много современных решений по сбору и обработке логов, старый текстовый формат syslog не потерял полностью актуальность. Причин тому несколько. Перечислю то, что сам вспомнил:

◽️Формат популярен для сетевого оборудования, IPMI серверов.
◽️Нетребователен к ресурсам железа.
◽️Нет необходимости изменения конфигурации сервера для приёма новых логов.
◽️Это стандарт для ведения логов в POSIX-совместимых системах.
◽️Много софта поддерживают формат syslog, нет необходимости устанавливать дополнительное ПО на клиентах.
◽️Легко ротировать логи с помощью logrotate.

Я использую syslog регулярно, несмотря на то, что для глобального хранения логов устанавливаю ELK Stack. Использую его, если нужна какая-то аналитика по логам, а не просто хранение текстовых данных.

Наиболее частое использование формата syslog - сбор логов с Микротиков. Сами они хранят логи только до перезагрузки. Если где-то есть любой Linux сервер, собираю там текстовые логи с Микротиков. Аналитика обычно не нужна. Важно просто иметь представление о том, что происходило на устройстве, так как перезагрузка по различным причинам логи очистит. Писал когда-то давно статью по этому поводу. Она не потеряла актуальность, так как ни настройка роутеров не поменялась, ни rsyslog.

Второй пример использования - быстро собрать логи для анализа содержимого с помощью Zabbix. Для анализа обычных текстовых логов не нужны никакие костыли и дополнительные настройки. Zabbix встроенными средствами может их читать и анализировать с помощью regex. Это позволяет очень просто и быстро настроить какие-нибудь уведомления на события. Например, аутентификацию по SSH.

Соответственно, если вам нужно что-то быстро связать с системой мониторинга Zabbix и это что-то умеет писать логи в формате syslog, настройка мониторинга очень сильно упрощается. Можно прямо на Zabbix Server настроить rsyslog на приём логов по сети. Для этого необходимо в /etc/rsyslog.conf раскомментировать:

module(load="imudp")
input(type="imudp" port="514")
module(load="imtcp")
input(type="imtcp" port="514")

И перезапустить службу:

# systemctl restart rsyslog

Проверяем, слушает ли rsyslog входящие подключения:

# ss -tulnp | grep rsyslogd

Если слушает 514 порт, то можно отправлять на него логи. Обычно в настройках оборудования или софта достаточно просто указать IP адрес сервера с rsyslog, чтобы потекли данные на сервер. Дополнительно можно задать порт, если используете не стандартный, facility (категория), severity (важность).

Если больше не менять настройки, то все логи будут писаться в общий syslog файл. Обычно это /var/log/syslog. Удобно их разделять либо по IP адресам отправителей, либо по приложениям, которые их отправляют. Я чаще по хостам разделяю логи. Для этого надо задать шаблон формирования лог-файлов. Добавляем в rsyslog.conf:

$template FILENAME,"/var/log/syslog/%fromhost-ip%.log"
if $fromhost-ip != '127.0.0.1' then ?FILENAME
& stop

Данное правило будет автоматически раскладывать все логи с удаленных устройств по файлам в директории /var/log/syslog с именами в виде IP адресов. При этом мы исключаем туда запись локальных логов, иначе они появятся под адресом 127.0.0.1, и предотвращаем их запись в системный syslog файл. По шаблонам наглядные примеры есть в документации.

Для удобного просмотра подобных логов можно использовать какой-то простенький веб интерфейс. Я описывал некоторые из них:

▪️tailon

Ожидал тут сделать список из таких инструментов, но оказалось, что кроме tailon больше ничего и не знаю. Если кто-то знает, чем удобно просматривать текстовые логи Linux через браузер, поделитесь информацией.

Можно взять тот же Webmin. Там неплохой раздел для просмотра локальных логов. Похожая возможность есть и в Cockpit.

☝️ Кстати, кто-то может не знает, что rsyslog агент есть и под Windows. Он формат виндовых логов преобразует в syslog и отправляет на rsyslog сервер.

❗️Если заметка вам полезна, не забудьте 👍 и забрать в закладки.

#logs

BY ServerAdmin.ru




Share with your friend now:
tgoop.com/srv_admin/4056

View MORE
Open in Telegram


Telegram News

Date: |

Informative With Bitcoin down 30% in the past week, some crypto traders have taken to Telegram to “voice” their feelings. best-secure-messaging-apps-shutterstock-1892950018.jpg As of Thursday, the SUCK Channel had 34,146 subscribers, with only one message dated August 28, 2020. It was an announcement stating that police had removed all posts on the channel because its content “contravenes the laws of Hong Kong.” Click “Save” ;
from us


Telegram ServerAdmin.ru
FROM American