使用elasticsearch 8.4.3 的管道解析日志(kibana操作)

使用elasticsearch的管道解析日志(kibana操作)

    • [一. 什么是 pipeline](#一. 什么是 pipeline)
    • [二. 案例](#二. 案例)

前言

这是我在这个网站整理的笔记,有错误的地方请指出,关注我,接下来还会持续更新。

作者:神的孩子都在歌唱

以下是一个简单的文档解析案例,更多的操作解析可以看 : 官方文档

一. 什么是 pipeline

管道可让您在插入数据之前 对数据执行常见转换。例如,您可以使用管道删除字段、从文本中提取值以及丰富数据。

管道由一系列称为 处理器 的可配置任务组成。每个处理器按顺序运行,对传入文档进行特定更改。处理器运行后,Elasticsearch 将转换后的文档添加到您的索引中。

二. 案例

比如我的文档数据如下,是一个json字符串,我想在它插入的时候转成json插入,这时候就可以用到管道

css 复制代码
"{\"status\":true,\"log_type\":[\"system\",\"access_log\",\"security_log\"]}"

首先我们创建一个 test_pipline 管道

json 复制代码
PUT _ingest/pipeline/test_pipline
{
  "description": "提取消息",
  "processors": [
    {
      "json": {
        "field": "message",
        "target_field": "data"
      }
    }
  ]
}

也可以通过kibana的页面操作,首先进入到Stack Management > Ingest Pipelines 页面,点击 Create pipeline -> Add a processor -> Save pipeline 就可以了

我们的管道创建好了,接下来插入文档数据测试

首先我们插入一条没经过管道的数据

json 复制代码
POST /customer/_doc
{
  "message":"{\"status\":true,\"log_type\":[\"system\",\"access_log\",\"security_log\"]}"
}

GET /customer/_search
{
 "query": {
 "match_all": {}
 } 
}

然后在插入一条经过管道的

json 复制代码
POST /customer/_doc?pipeline=test_pipline
{
  "message":"{\"status\":true,\"log_type\":[\"system\",\"access_log\",\"security_log\"]}"
}

再次查询发现输出的第二条日志有一个data字段,里面就是我们通过message转成json后的值

作者:神的孩子都在歌唱

本人博客:https://blog.csdn.net/weixin_46654114

转载说明:务必注明来源,附带本人博客连接。

相关推荐
2601_957787583 小时前
全场景矩阵系统多端统一体验与跨端实时同步技术实践
大数据·人工智能·矩阵·多端统一·跨端同步
面向Google编程4 小时前
从零学习Kafka:消费者组重平衡
大数据·kafka·负载均衡
TDengine (老段)5 小时前
TDengine RAFT共识协议 — 选举、日志复制、快照与仲裁
android·大数据·数据库·物联网·架构·时序数据库·tdengine
Tingjct8 小时前
git/gdb指令
大数据·git·elasticsearch
dingzd959 小时前
Reddit验证资料测试之后跨境品牌如何提升社区运营可信度
大数据·人工智能·矩阵·新媒体运营·内容营销·跨境
多年小白10 小时前
紫光国微(002049) 分析
大数据·科技·深度学习·ai
小杨互联网11 小时前
你的旧 Kindle 还能用,但平台说它该退休了
大数据·经验分享·科技·ai
泰迪智能科技11 小时前
高校人工智能与大数据产品体系及解决方案介绍
大数据·人工智能
沪漂阿龙11 小时前
面试题详解:Agent 记忆管理全解析——历史对话获取、摘要记忆、事实记忆、知识图谱记忆一次讲透
大数据·人工智能·知识图谱