当前位置: 首页 > 面试题库 >

如何在logstash.conf文件中创建多个索引?

郎魁
2023-03-14
问题内容

我使用以下代码在logstash.conf中创建索引

output {  
    stdout {codec => rubydebug}  
    elasticsearch {  
        host => "localhost"  
        protocol => "http"  
        index => "trial_indexer"   
    }
}

为了创建另一个索引,我通常在上面的代码中用另一个索引名称替换索引名称。有什么办法可以在同一文件中创建许多索引?我是ELK的新手。


问题答案:

您可以根据其中一个字段的值在索引名称中使用模式。在这里,我们使用type字段的值来命名索引:

output {  
    stdout {codec => rubydebug}  
    elasticsearch {  
        host => "localhost"  
        protocol => "http"  
        index => "%{type}_indexer"   
    }
}

您还可以将多个elasticsearch输出用于同一ES主机或不同ES主机:

output {  
    stdout {codec => rubydebug}  
    elasticsearch {  
        host => "localhost"  
        protocol => "http"  
        index => "trial_indexer"   
    }
    elasticsearch {  
        host => "localhost"  
        protocol => "http"  
        index => "movie_indexer"   
    }
}

或者,您可能想根据某个变量将文档路由到不同的索引:

output {  
    stdout {codec => rubydebug}
    if [type] == "trial" {
        elasticsearch {  
            host => "localhost"  
            protocol => "http"  
            index => "trial_indexer"   
        }
    } else {
        elasticsearch {  
            host => "localhost"  
            protocol => "http"  
            index => "movie_indexer"   
        }
    }
}

更新

在Logstash 2和5中,语法有所变化:

output {  
    stdout {codec => rubydebug}
    if [type] == "trial" {
        elasticsearch {  
            hosts => "localhost:9200"  
            index => "trial_indexer"   
        }
    } else {
        elasticsearch {  
            hosts => "localhost:9200"  
            index => "movie_indexer"   
        }
    }
}


 类似资料:
  • 有两个问题看起来很相似,但它们不是同一个问题:这里和这里。它们都调用的方法,例如或,我知道这会返回一个。我要问的是如何将(class)对象本身转换为。我将在下面举例说明。 构建一个示例,如下所示。 上面的应该如下所示(显然有不同的数字)。 我想做的是按列名称和采取分组(按此顺序),这样我就可以得到一个由列名称和采取构建的多索引索引,如下所示。 我如何实现这一点?如果我做了,那么是一个实例。正确的做

  • 问题内容: 我正在尝试将控制器拆分为多个文件,但是当我尝试在模块中注册它们时出现错误: 组控制器咖啡 usercontroller.coffee 错误 错误:参数’GroupController’不是函数,未定义 从文档中,我并没有真正获得模块方法的功能。它是否用密钥“ Webchat”存储我的控制器? 编辑: 似乎[]传递也会创建一个新模块并覆盖前一个模块 为避免这种情况,您必须忽略[] 问题答

  • 我试图构建我的项目的JRE捆绑exe文件,这是一个游戏,在本教程的帮助下使用,它创建了文件,但每当我运行这个文件时,它会给出两条错误消息: 出现JNI错误,请检查您的安装。 Java异常发生(JVM启动器)。 附言:我的项目在文件夹中包含额外的JAR文件()。

  • 问题内容: 在用户属于特定组织的情况下,我们具有以下实体关系。我的查询看起来像是“从org =:org用户选择”或“从org =:org用户输入和type =:type选择” 我在User类上有单独的索引。由于外键元素上的索引,因此第一个查询会很好。第二个查询是否对组织和类型列要求多列索引。如果是这样,我应该如何注释以创建一个这样的索引。 问题答案: 使用hibernate特定注释可以做到这一点。

  • 问题内容: 我正在尝试创建多个图像文件的zip文件。我已经成功创建了所有图像的zip文件,但是不知何故,所有图像都被挂起了950字节。我不知道这里出了什么问题,现在我无法打开将图像压缩到该zip文件中。 这是我的代码。谁能告诉我这是怎么回事? 问题答案: 更改此: 对此: 并将缓冲区大小设置为1024字节:

  • 为了说明这一点,我正在创建一个treeview,它将在用户创建一个文件夹后实例化自己,并且所述文件夹将被添加为TreeItem。 我现在有这个: 多谢了。