我们正在尝试为我们的应用程序找到最佳的logstash配置。该应用程序由大约30个进程组成,这些进程组成了在linux机器上运行的服务器。
这些进程中的每一个都写入专用文件夹中的日志文件。我们想要收集这些日志并使用logstash将它们保存到elasticsearch。
我们确实遇到了资源问题。我们将无法将日志写入磁盘并使用相同的数据保持elasticsearch运行(elasticsearch占用这些日志文件的空间的5倍)
现在我们考虑尝试将每个进程的输出传递给它自己的logstash,它将包含一个grok过滤器和一个elasticsearch输出,同时我们将在同一台机器上运行一个elasticsearch实例。
这似乎有点沉重,有一些logstash运行的实例......有更好的解决方案吗?我们是否会破坏cpu或者这是做这种事情的标准方式?
答案 0 :(得分:0)
也许我错过了一些东西,但我认为你可以在多个tcp端口上监听一个logstash https://www.elastic.co/guide/en/logstash/current/plugins-inputs-tcp.html