elasticsearch 如何在kibana中按条件填充脚本字段值,elasticsearch,kibana,kibana-4,elasticsearch,Kibana,Kibana 4" /> elasticsearch 如何在kibana中按条件填充脚本字段值,elasticsearch,kibana,kibana-4,elasticsearch,Kibana,Kibana 4" />

elasticsearch 如何在kibana中按条件填充脚本字段值

elasticsearch 如何在kibana中按条件填充脚本字段值,elasticsearch,kibana,kibana-4,elasticsearch,Kibana,Kibana 4,我使用的是Kibana4,我的文档包含两个名为“x”和“y”的整数字段。我想在Kibana中创建一个脚本字段,如果“y”为0,则返回“x”除以“y”的除法值。else:返回“x”的值 我已尝试将此脚本添加到一个新的screnter code hereipted字段: 文档['x']。值是否大于0?单据['x'].值/单据['y'].值:单据['x'].值 但在尝试将其可视化时出现分析错误: 错误:请求Elasticsearch失败: {“错误”:“SearchPhaseExecutionExc

我使用的是Kibana4,我的文档包含两个名为“x”和“y”的整数字段。我想在Kibana中创建一个脚本字段,如果“y”为0,则返回“x”除以“y”的除法值。else:返回“x”的值

我已尝试将此脚本添加到一个新的screnter code hereipted字段:

文档['x']。值是否大于0?单据['x'].值/单据['y'].值:单据['x'].值

但在尝试将其可视化时出现分析错误:

错误:请求Elasticsearch失败: {“错误”:“SearchPhaseExecutionException[未能执行阶段[query], 所有碎片都失败;碎片失败


如何在Kibana中一步一步地创建带条件的脚本字段?

您看到的不是解析错误,
shardFailures
只是意味着底层的Elasticsearch尚未准备就绪。启动Kibana/Elasticsearch时,请确保ES集群在跳入Kibana之前准备就绪,即运行
curl-XGET localhost:9200/_cluster/health
在响应中,您应该看到类似的内容:

{
    cluster_name: your_cluster_name
    status: yellow           <----- this must be either yellow or green
    timed_out: false
    number_of_nodes: 2
    number_of_data_nodes: 2
    active_primary_shards: 227
    active_shards: 454
    relocating_shards: 0     <----- this must be 0
    initializing_shards: 0   <----- this must be 0
    unassigned_shards: 25
}
请试一试

 doc['y'].value != 0 ? doc['x'].value / doc['y'].value : doc['x'].value