多源Logstash日志处理

Logstash log processing from multiple source

我是 elk stack 的新手。让我解释一下我想做什么。我有一个应用程序 运行 分别针对不同的用户,即 5 个不同的用户将拥有同一应用程序的 5 个独立实例。我正在使用 filebeats 将日志从应用程序发送到 logstash,在将日志发送到 elasticsearch 之前先在其中进行处理。我想要的是编写使用户能够仅查看他们的应用程序实例日志的应用程序。现在我尝试做的是为每个具有不同端口的用户创建 logstash 管道,该管道将处理日志并将其发送到具有不同索引名称的 elasticsearch。 如果这是最佳做法还是我做错了,您能建议我吗?有没有更好的方法来做到这一点,而无需为具有单独端口的个人用户提供单独的管道?我认为我这样做的方式是错误的,当实例数量增加时,我将更难管理。

谢谢

我建议如果不涉及换肤、验证和丰富,则完全跳过 logstash。您可以直接将 filebeat 日志传递给 ES。现在有两种方法。 Filebeat 还可以将参数(任何固定字符串)与扫描的消息一起发送到 ES,或者您可以存储 filebeat 将与消息一起发送的元(如 ip)源。然后可以使用此字符串来识别日志消息的来源,然后在 kibana 上,您可以配置为显示基于该固定字符串/用户/元的仪表板。这简化了过程并避免了不必要的跃点。