将ejabberd群集日志存储在同一位置

时间:2016-03-11 12:26:49

标签: logging erlang ejabberd

我已经用两台机器设置了ejabberd集群。我正在对ejabberd服务器日志进行日志分析。但是,机器存储ejabberd都记录在他们的本地目录中。 因此,问题在于如何在同一目录中的ejabberd集群中存储两台计算机日志。

1 个答案:

答案 0 :(得分:0)

ejabberd只能在本地存储每个节点的日志。您需要使用外部工具/脚本来收集和合并日志以进行分析。您可以使用一个脚本,例如在本地计算机上复制日志,在具有节点名称的同一目录中,解析它们并合并它们。

其他方法是使用Rollbar之类的工具将日志集中在远程服务上(这是一个SaaS平台,因此需要付费)。您可以将Rollbar Erlang库(如https://github.com/omarkj/erollbar)集成到Rollbar而不是标准记录器中报告错误。

另一种方法是将更大的后端集成到您的ejabberd中。例如,您可以添加Lager Graylog后端以集中Graylog服务器上的日志:https://github.com/avalente/lager_graylog_backend

最后,您可以为Lager编写自己的自定义日志处理程序,并将其与ejabberd一起使用,以向您自己的自定义服务报告错误。