一个 elasticsearch/logstash 实例,其中包含多个具有唯一索引的应用程序



我们使用 swisscoms 应用程序云,目前正在评估新的 Elasticsearch 服务。我们设置了它,包括logstash和kibana。

现在,我们为每个应用添加了用户提供的服务,该服务应使用通用的 elasticsearch/logstash/kibana 实例。当我们第一次登录 kibana 时,我们看到有一个名为logstash-,所有应用程序的所有日志都放在那里。

现在我们想要的是为每个写入 elk 实例的应用程序提供一个索引。假设我们有 e 应用程序(app1、app2、app3(。我们希望有三个索引(app1-...,app2-...和应用程序3-...(。关于我们如何实现这一目标的任何想法?

这是必须在Cloud foundry上使用ENV变量完成的配置,还是我们必须在Java和NodeJS应用程序中配置的配置

(app1-... , ...(?

提前感谢您的帮助。

您可以使用 Elasticsearch 输出插件进行 logstash,这是在 Elasticsearch 中存储日志的推荐方法。该插件具有一个名为 index 的配置选项,用于定义要将事件写入的索引的名称。默认索引名称为logstash-%{+YYYY.MM.dd}

将它与if条件一起使用,根据类型为每个应用程序分配索引名称,如下所示,

output {
if [type] == "apache" {
elasticsearch {
index => "apache-website-index"
}
} elseif [type] == "nginx" {
elasticsearch {
index => "nginx-website-index"
}
}
}

也请看一下这个答案

如果您有任何问题,请发表评论。

最新更新