Назад | Перейти на главную страницу

Получение аудита и отчетов от мастера

У меня есть система Foreman 1.9.0, использующая postgres в качестве серверной части RHEL 7.2.

Возникла потребность в возможности отправлять журнал аудита и отчеты внешнему объекту почти в реальном времени (отметка 5-10 минут).

Я искал в Интернете и не мог узнать, возможно ли это. Я мог бы создать сценарий, который считывает журналы прямо из базы данных и выводит их в xml. Но это далеко не идеально с точки зрения подотчетности.

Идеальным выходным решением был бы XML, но формата сообщения системного журнала было бы достаточно.

Спасибо

Думаю, с такими жесткими требованиями стоит создать плагин Foreman. Видеть https://theforeman.org/plugins/#3.WritingYourOwn за помощью или спросите в списке рассылки и каналах IRC.

Форман использует драгоценный камень "проверенный" (https://github.com/collectiveidea/audited), чтобы зафиксировать изменения, внесенные во все объекты. Этот гем хранит аудит в объекте с именем «Audit». Вы можете расширить этот объект в своем плагине Foreman и написать after_save вызов, который отправляет свое представление в XML на внешний сервер. Таким образом, ваши аудиты будут отправляться автоматически, однако вы должны быть осторожны и сделать операцию асинхронной и фиксировать ошибки в случае, если соединение с внешним сервером не работает и т. Д.

В качестве альтернативы (и немного более элементарной и подверженной ошибкам) ​​вы можете написать задачу с граблями (см. Примеры здесь https://github.com/theforeman/foreman/tree/develop/lib/tasks), который собирает всю информацию аудита каждые X минут и отправляет ее на внешний сервер в формате XML. На практике это будет сценарий, очень похожий на тот, который вы описали ранее.

Я бы также добавил, что есть уже существующий плагин https://github.com/frimik/foreman_audited_notifications который имеет базовые / аналогичные возможности, чем вы просите.