首页 文章

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

提问于
浏览
2

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

我们现在为应该使用常见elasticsearch / logstash / kibana实例的每个应用添加了用户提供的服务 . 当我们第一次登录kibana时,我们看到有一个名为 logstash- 的索引,其中包含所有应用程序的所有日志 .

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

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

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

在此先感谢您的帮助 .

1 回答

  • 1

    您可以使用Elasticsearch output plugin for 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"
        }
      }
    }
    

    请看一下this answer

    如果您有任何疑问,请评论 .

相关问题