如果 ES 中存在索引,是否有基于 API 的方法在 Kibana 中创建索引模式

2023-12-01

我在 ES 中有一个索引。我需要使用 API 调用在 .kibana 中创建一个相同的索引模式。在这个创建中,我什至想设置将成为时间戳列的列。任何帮助都是赞赏。


你可以做到,但你需要自己构建整个结构。索引模式定义如下所示:

PUT .kibana/doc/index-pattern:<some-uuid>
{
      "type": "index-pattern",
      "updated_at": "2018-01-27T07:12:05.373Z",
      "index-pattern": {
        "title": "test*",
        "timeFieldName": "@timestamp",
        "fields": """ ... """,
      }
}
  • title是索引模式的名称,与通过 UI 创建索引模式时输入的名称相同
  • timeFieldName是时间戳字段的名称
  • fields是一个字符串,其中包含索引模式中所有字段定义的 JSON 数组(见下文)

字段定义如下所示:

[
  {
    "name": "@timestamp",
    "type": "date",
    "count": 0,
    "scripted": false,
    "searchable": true,
    "aggregatable": true,
    "readFromDocValues": true
  },
  {
    "name": "_id",
    "type": "string",
    "count": 0,
    "scripted": false,
    "searchable": true,
    "aggregatable": true,
    "readFromDocValues": false
  },
  {
    "name": "_index",
    "type": "string",
    "count": 0,
    "scripted": false,
    "searchable": true,
    "aggregatable": true,
    "readFromDocValues": false
  },
  {
    "name": "_score",
    "type": "number",
    "count": 0,
    "scripted": false,
    "searchable": false,
    "aggregatable": false,
    "readFromDocValues": false
  },
  {
    "name": "_source",
    "type": "_source",
    "count": 0,
    "scripted": false,
    "searchable": false,
    "aggregatable": false,
    "readFromDocValues": false
  },
  {
    "name": "_type",
    "type": "string",
    "count": 0,
    "scripted": false,
    "searchable": true,
    "aggregatable": true,
    "readFromDocValues": false
  },
  {
    "name": "referer",
    "type": "string",
    "count": 0,
    "scripted": false,
    "searchable": true,
    "aggregatable": false,
    "readFromDocValues": false
  },
  ...
]

因此,您需要为每个字段创建这个数组,然后将其字符串化并将字符串放入fields field.

这是表示索引模式的示例文档:

 {
      "type": "index-pattern",
      "updated_at": "2018-01-27T07:12:05.373Z",
      "index-pattern": {
        "title": "test*",
        "timeFieldName": "@timestamp",
        "fields": """[{"name":"@timestamp","type":"date","count":0,"scripted":false,"searchable":true,"aggregatable":true,"readFromDocValues":true},{"name":"_id","type":"string","count":0,"scripted":false,"searchable":true,"aggregatable":true,"readFromDocValues":false},{"name":"_index","type":"string","count":0,"scripted":false,"searchable":true,"aggregatable":true,"readFromDocValues":false},{"name":"_score","type":"number","count":0,"scripted":false,"searchable":false,"aggregatable":false,"readFromDocValues":false},{"name":"_source","type":"_source","count":0,"scripted":false,"searchable":false,"aggregatable":false,"readFromDocValues":false},{"name":"_type","type":"string","count":0,"scripted":false,"searchable":true,"aggregatable":true,"readFromDocValues":false},{"name":"referer","type":"string","count":0,"scripted":false,"searchable":true,"aggregatable":false,"readFromDocValues":false},{"name":"referer.keyword","type":"string","count":0,"scripted":false,"searchable":true,"aggregatable":true,"readFromDocValues":true},{"name":"status","type":"number","count":0,"scripted":false,"searchable":true,"aggregatable":true,"readFromDocValues":true},{"name":"url","type":"string","count":0,"scripted":false,"searchable":true,"aggregatable":false,"readFromDocValues":false},{"name":"url.keyword","type":"string","count":0,"scripted":false,"searchable":true,"aggregatable":true,"readFromDocValues":true}]"""
      }
    }
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如果 ES 中存在索引,是否有基于 API 的方法在 Kibana 中创建索引模式 的相关文章

随机推荐

  • 通过命令行调用laravel控制器

    在 kohana 框架中 我可以使用命令行通过命令行调用控制器 php5 index php uri controller method var1 var2 是否可以通过 cli 在 Laravel 5 中调用我想要的控制器 如果是 该怎么
  • 通过 BigCommerce API 访问 Google 购物字段

    我正在与第三方零件供应商创建自定义集成 以在 BigCommerce 的库存中创建产品 我需要能够为导入的产品打开 Google 购物并添加 MPN 和类别 但我不知道如何在 API 中修改它 如果有人有任何反馈 请告诉我 因此 在联系 B
  • 更新对象的嵌套数据数组(Redux)

    我在更新不可变的 redux 和相当嵌套的数据时遇到问题 这是我的数据结构和我想要更改的内容的示例 如果有人可以向我展示使用 ES6 和扩展运算符访问此更新的模式 我将不胜感激 const formCanvasInit id guid fi
  • 如何正确关闭客户端和服务器中的套接字(python)

    我正在用 python 编写 2 个脚本 客户端 py 服务器 py 客户端和服务器之间有一个套接字 场景是这样的 我有一个客户端要求关闭程序 因此它应该通知服务器 然后服务器将通知另一个客户端 因此我需要关闭从客户端 1 到服务器的套接字
  • Angular2 HTTP 使用 observables 订阅显示数据未定义

    我不知道我做错了什么 但不知怎的 我无法读取数据 尽管数据来自服务器响应 甚至当我放置控制台时数据也显示在服务 extractData 方法中 但是在订阅函数内的组件中 它给了我未定义的信息 帮我看看我做错了什么 我假设这是异步的问题 但是
  • 使用 WCF 服务返回 MembershipUser

    我有 WCF 服务从 ActiveDirectory 获取用户 我从请求 用户名 接收参数并使用 MembershipUser 属性创建响应 由于某种原因 联系变得紧密 服务操作找到用户并成功创建响应 执行行时 返回响应 我在客户端遇到异常
  • 无法使用 CreateJS 预加载和显示 SVG

    我正在尝试预加载一组 SVG 对象并使用 CreateJS PreloadJS 显示它们 到目前为止 我能够在不预加载的情况下显示 SVG 对象 但是一旦我使用 PreloadJS 中的 LoadQueue 我就无法让我的示例工作 有人知道
  • 在tableview中延迟加载图像

    我试图以惰性模式加载我的 uitableviewcells 的图像 我试图以最简单的方式做到这一点 我看到了很多例子 但它们超出了我的目的 这就是我目前正在做的事情 但它不起作用 Configure the cell Info info s
  • 创建 TRESTClient 时出错:“没有注册具有 guid [{}] 接口的对等点”

    我已经创建了我的类来使用 REST 我在运行时遇到 TRESTClient 组件问题 TFrwWebServiceREST class TInterfacedObject IRESTWebServiceProxy private FClie
  • 仅从 DateTime 对象获取日期或时间

    我有一个DateTime具有日期和时间的实例 如何仅提取日期或仅提取时间 var day value Date a DateTime that will just be whole days var time value TimeOfDay
  • 我应该如何在 MongoDB 中实现这个模式?

    我正在尝试编写一个跟踪脚本 但在弄清楚数据库应该如何工作方面遇到了麻烦 在 MySQL 中 我创建一个类似于以下的表 User username name string Campaign title string description s
  • 最多应用一次交换操作以获得严格递增序列

    我正在网上的各个网站上做一些 DS A 问题进行练习 我遇到了这个问题 给定一个非负整数数组 您可以从此数组中选择任何数字并交换其中的任意两位数字 如果在交换操作之后数字包含前导零 则可以省略它们并且不考虑它们 您的任务是检查是否可以最多应
  • 如何找到 tibble 列中最长的重复序列?

    我更新了我的问题 因为我的输出表还需要一列 我有以下内容 library tibble my tbl lt tribble year event id winner id 2011 A 4322 2012 A 4322 2013 A 432
  • 外部源文件中不会发生重新定义错误

    下面是我的代码 main c int t double t 0 int main return 0 我们可以看到上面的代码没有编译 gcc 抛出一个错误 t redefinition different basic types 这很公平 但
  • 为什么我的 UITableView 在 5 行之后重复行?

    我的数据库中有 7 行 我确认所有数据都通过 NSLog postArray 成功传输到 iOS 端 它给出了 7 但是 当我运行我的应用程序时 它只会显示前 5 行 然后是前 2 行 而不是第 6 行和我的数据库中的第七行 另外 当我 N
  • 将大型 csv 文件加载到 neo4j 中

    我想加载一个 csv 其中包含维基百科类别 rels csv 之间的关系 类别之间有 400 万个关系 我尝试通过更改以下参数值来修改设置文件 dbms memory heap initial size 8G dbms memory hea
  • Fortran - 显式接口

    我对 Fortran 非常陌生 为了我的研究 我需要运行一个庞大的模型 所以我一边学习一边学习 所以如果我问了一个 愚蠢 的问题 我很抱歉 我正在尝试编译 Mac OSX 从命令行 并且我已经设法解决了一些问题 但现在我遇到了一些我不确定如
  • flutter中不使用webview或浏览器如何实现paypal?

    我正在尝试在我的 flutter 应用程序中实现 paypal 而不使用 webview 或浏览器 我尝试过 flutter braintree 和 braintree payment 包来进行flutter 但这两个包都重定向到网络浏览器
  • Java:将数组传递给 println [重复]

    这个问题在这里已经有答案了 下面是我刚刚编造的一个示例 旨在帮助我理解 java 的内部工作原理 public class Main public static void main String args int a a new int 1
  • 如果 ES 中存在索引,是否有基于 API 的方法在 Kibana 中创建索引模式

    我在 ES 中有一个索引 我需要使用 API 调用在 kibana 中创建一个相同的索引模式 在这个创建中 我什至想设置将成为时间戳列的列 任何帮助都是赞赏 你可以做到 但你需要自己构建整个结构 索引模式定义如下所示 PUT kibana