elasticsearch 为Elasticsearch字段(字符串列表)设置Kibana术语面板,elasticsearch,kibana,elasticsearch,Kibana" /> elasticsearch 为Elasticsearch字段(字符串列表)设置Kibana术语面板,elasticsearch,kibana,elasticsearch,Kibana" />

elasticsearch 为Elasticsearch字段(字符串列表)设置Kibana术语面板

elasticsearch 为Elasticsearch字段(字符串列表)设置Kibana术语面板,elasticsearch,kibana,elasticsearch,Kibana,我有一个Kibana仪表板,其中包含一个术语面板,用于显示特定字段(我们称之为field1)的实例数。Field1实际上是一个字符串列表。每个字符串通常包含多个单词。经过分析后,Elasticsearch将这些术语拆分为单独的列。我需要把课文放在一起,所以我需要一个未经分析的版本。下面是我尝试使用一个模板来实现这一点的例子,该模板位于Windows框上的~\config\templates\doc\u template.json,似乎不起作用。Elasticsearch作为Windows服务运行

我有一个Kibana仪表板,其中包含一个术语面板,用于显示特定字段(我们称之为field1)的实例数。Field1实际上是一个字符串列表。每个字符串通常包含多个单词。经过分析后,Elasticsearch将这些术语拆分为单独的列。我需要把课文放在一起,所以我需要一个未经分析的版本。下面是我尝试使用一个模板来实现这一点的例子,该模板位于Windows框上的~\config\templates\doc\u template.json,似乎不起作用。Elasticsearch作为Windows服务运行。

在术语面板中,我希望必要的字段是RawField1或Field1.RawField1,但我尝试了其他变体,包括和排除.raw,但没有成功

每天都会创建新索引。Field1存在于4种不同的类型中,每种类型都以“Type-”开头。我怀疑我在那里使用通配符的尝试有问题,但我不确定。所有数据都通过C#.NET应用程序中的嵌套发送到Elasticsearch。以下是Field1的映射,因为它当前存在于以下类型之一:

{
  "index-2014.12.08" : {
    "mappings" : {
      "Type-1" : {
        "properties" : {
          "Field1" : {
            "type" : "string"
          },
          "Field2" : {
            "type" : "string"
          },
          "Field3" : {
            "type" : "string"
          }
        }
      }
    }
  }
}

显然,映射看起来不像我期望的那样。解决此问题的最佳方法是什么?

使用
\u default\u
而不是
Type-*
?@Pigueiras:它似乎不起作用。如果我把新文档拿出来,只有Field1,没有RawField1。我假设RawField1将是一个可见字段。您是否尝试了一个新索引?还请记住,未分析的
数据将位于
字段1。RawField1
(因为您使用的是多字段),而不是
RawField1
。我是否还需要.raw addition Field1.RawField1用于Kibana?否!你能在问题中复制一下你在做
curl-XGET时得到了什么吗http://.../index/field/_mapping?pretty
?您应该看到如下内容:
field1:{type:…,rawfield:{…}
{
  "index-2014.12.08" : {
    "mappings" : {
      "Type-1" : {
        "properties" : {
          "Field1" : {
            "type" : "string"
          },
          "Field2" : {
            "type" : "string"
          },
          "Field3" : {
            "type" : "string"
          }
        }
      }
    }
  }
}