自动生成 Elasticsearch 索引文档的工具

3

我有一个关于Kibana/Elastic的项目。通过使用GET <index>/_mapping,我可以看到/操作索引,并查看字段和值类型。

我的团队中的其他成员(特别是管理人员)没有访问Kibana的权限,我需要为他们撰写一些文档。基本上,我需要给他们展示索引中的内容。

我发现自己在复制粘贴并简化(删除一些不那么有信息量的层)GET <index>/_mapping 的类似JSON的输出。这不是一个好的流程。

是否有一种工具可以自动化此过程,并确保数据库和文档之间的同步?

1个回答

2

我不知道有任何自动化此过程的工具。在我看来,最简单的方法是创建一个单页Web应用程序,连接到ES并调用相应API。

GET _all/_mapping?format=yaml

这将返回类似于

myindex:
  mappings:
    properties:
      date1:
        type: "date"
      date2:
        type: "date"
      date3:
        type: "date"
      status:
        type: "text"
        fields:
          keyword:
            type: "keyword"
            ignore_above: 256

这比JSON更易读。


更进一步,您可以添加一个多选下拉框以过滤特定字段,例如:

GET _all/_mapping/field/name,color?format=yaml

这将返回类似以下内容的结果

online_shop:
  mappings:
    color:
      full_name: "color"
      mapping:
        color:
          type: "keyword"
    name:
      full_name: "name"
      mapping:
        name:
          type: "text"
          fields:
            keyword:
              type: "keyword"

谢谢。使用yaml确实可以使事情变得更好,但我正在寻找一种更全面的方法/工具。 - hartmut

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接