从工头检索审计和报告

我有一个使用postgres作为RHEL 7.2后端的Foreman 1.9.0系统。

要求已经能够将审计日志和报告近乎实时地发送给外部实体(5-10分钟标记)。

我一直在网上查找,无法确定这是否可能。 我可以创build一个脚本,直接从数据库中读取日志并将其输出到xml中。 但从问责的angular度来看,这并不理想。

理想的输出解决scheme将是XML,但系统日志消息格式就足够了。

谢谢

我认为,如此严格的要求,你应该创build一个工头插件。 请参阅https://theforeman.org/plugins/#3.WritingYourOwn寻求帮助,或者在邮件列表和IRC频道中询问。

工头使用被审计的gem( https://github.com/collectiveidea/audited )捕获对所有对象所做的更改。 这个gem将审计存储在名为“审计”的对象中。 你可以在你的Foreman插件中扩展这个对象,然后编写一个after_save调用,以XML的forms向你的外部服务器发送一个表示。 这样你的审计将自动发送,但是你应该小心,使操作asynchronous和捕捉错误的情况下,与外部服务器的连接不起作用等…

或者(更简单一点,容易出错),您可以编写一个rake任务(请参阅https://github.com/theforeman/foreman/tree/develop/lib/tasks ),每隔X分钟收集一次审计信息并以XML格式将其发送到外部服务器。 这实际上是一个非常类似于你之前描述的脚本。