Java 我可以在Kibana中更改可视化的索引模式吗?
我已经创建了一整套可视化效果。由于某种原因,我不得不在elastic中删除该索引。我们需要创建一种新的索引模式。问题是,删除索引后,可视化将无法工作。我将不得不痛苦地一个接一个地重现它。Java 我可以在Kibana中更改可视化的索引模式吗?,java,
elasticsearch,kibana,kibana-4,Java,
elasticsearch,Kibana,Kibana 4,我已经创建了一整套可视化效果。由于某种原因,我不得不在elastic中删除该索引。我们需要创建一种新的索引模式。问题是,删除索引后,可视化将无法工作。我将不得不痛苦地一个接一个地重现它。 有没有一种方法,我可以去编辑可视化,只是修改索引模式,而不是创建一个新的可视化本身 转到设置->对象->可视化,您可以手动编辑定义。从Kibana 4.3.1开始,对于某些可视化,您必须转到设置->对象->搜索。首先让我们讨论一下为什么会出现整个问题 我的环境是:kibanav7.0.1/7+ 如果您创建了索引
有没有一种方法,我可以去编辑可视化,只是修改索引模式,而不是创建一个新的可视化本身 转到设置->对象->可视化,您可以手动编辑定义。从Kibana 4.3.1开始,对于某些可视化,您必须转到设置->对象->搜索。首先让我们讨论一下为什么会出现整个问题 我的环境是:kibanav7.0.1/7+ 如果您创建了索引模式(使用Kibana的GUI/网站),而不是使用ELK/Kibana的保存对象REST-API(例如:使用Curl或一些Python/Groovy脚本调用REST API来创建索引模式),则会出现此问题 使用GUI创建索引模式时,基本上 步骤1:只需键入索引的名称,然后 步骤2:一个非常重要的字段,名为:时间过滤器字段名(又名“timeFieldName”,用于生成/处理索引数据中可用的“事件”(数据存在于步骤1中提供的模式的匹配弹性搜索索引中) Ex:如果您在Kibana中创建一个名为:jira-*的索引模式,那么它将在Elasticsearch中查找任何可用的索引,其中索引以jira开头-(例如:jira-dev、jira-prod、…jira-demo,…等等) 无论如何,一旦通过GUI完成,我们不允许或不允许指定索引模式的ID值(这是非常重要的,并且与问题直接相关) 在Kibana的GUI中创建索引模式时,ELK进程会为您创建的新创建的索引模式分配一个随机/唯一索引模式ID值
/
斜杠后的最后一个值)Gear(齿轮)按钮>搜索可视化
并查看**referencesJSON部分中的ID
值,并使用新创建的索引模式的新ID值更改已删除的*jira-**索引的旧字母数字值。这将帮助您继续
现在,如何避免所有这些混乱:如果您使用Kibana的已保存对象REST API创建了索引模式,那么允许您提供ID值(REST API URL中/
之后的最后一个值)这是人类可读的字符串名称,它的意思是:如果您删除/丢失索引模式,并且如果重新创建相同的索引模式,那么您将永远不会需要担心Kibana GUI创建的这些长时间自动生成的字母数字ID值在场景中,您无需更改任何可视化/Dashbaords
Ex:如何在Kibana(v7.0.1/7+)中创建索引模式:
注意:“id”:“jira index”
这很重要,对于您刚刚创建的索引,它是人类可读的(id)值
您基本上是通过名称(请参见标题值)创建了一个索引模式,即jira-*,它的ID值是:jira index(人类可读),该ID值更易于维护、记住,并在GET
操作中使用!(现在您不必记住在Kibana的GUI/web页面中创建索引模式时获得的长动态生成ID)
要查看索引模式,现在可以使用人类可读的ID值来查看它,而不是使用一些长的字母数字ID
curl -X GET "${KIBANA_URL}/api/saved_objects/index-pattern/jira-index" | jq
现在,如果您创建一个新的可视化并使用“jira-”作为索引模式,并且如果您删除了索引模式,那么使用title/name作为“jira-*”重新创建相同的jira-模式将始终保持“jira-index”的ID(因为您的可视化使用的是人类可读的ID,它是在意外删除后创建的
curl -X GET "${KIBANA_URL}/api/saved_objects/index-pattern/jira-index" | jq