1

Когда я был в небольшом доме разработчиков несколько лет назад, они использовали IRC-канал для мониторинга событий на своих серверах, например, сервера сборки, почтового сервера, http-сервера и определенных процессов, таких как сценарии оболочки или crontabs.

После того, как событие завершилось или встретило исключение, оно сообщило бы и предупредило канал IRC, который был коротким, но описательным.

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

Попробовал поиск в Google, но я получаю ложные положительные результаты.

Это инструмент, который они используют, или какой-то сценарий, который они, скорее всего, использовали?

Спасибо

4 ответа4

3

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

Например, вы можете использовать logger для отправки сообщений журнала из сценариев, также можно использовать команду logger для отправки сообщений непосредственно в syslog2irc (последний должен проверяться, но должен работать).

Таким образом, сочетание syslog-ng + syslog2irc + logger + ircserver выглядит многообещающе для того, что вы просите.

1

Вы можете использовать один из многих доступных IRC-ботов.
Например, бот работает на каждом сервере и подключается к специальному каналу irc на сервере irc.

Ваши задания cron записывают информацию в базу данных sqlite, а бот читает ее и отправляет сообщение на сервер irc.

1

Я думаю, Syslog - это именно то, что вы хотите. Все журналы централизованы на одном сервере и могут быть оттуда извлечены, отфильтрованы с помощью "отладки", оповещения ...
Вы также можете отправлять свои собственные сообщения на него.

Поскольку это очень распространено, существует много способов оценить информацию, поступающую из системного журнала.

1

Вы можете просто использовать IRC с netcat:

echo 'USER bot bot2 botty botty2\nNICK bottty\nJOIN #CHANNEL\nPRIVMSG #channel :Some text!\nQUIT :All done\n' | netcat ircserver 6667

Вы можете писать простые скрипты bash и вставлять переменные.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .