配置数据写入es的时间

1、设置es的pipeline
sql 复制代码
PUT _ingest/pipeline/test-news-server-online      # test-news-server-online 为流水线的名称
{
  "description": "test-news-server-online",       # 对 pipeline 进行描述
  "processors": [
    {
      "grok": {                                   # 使用 grok 对日志内容进行提取
        "field": "message",					      # 选择要提取信息的字段
        "patterns": [
          "%{TIMESTAMP_ISO8601:logatime}"         # 使用 TIMESTAMP_ISO8601 的标准匹配时间,将匹配的值赋值给新增的字段 logatime
        ],
        "ignore_failure": true		              # 如果日志中有不存在时间戳的行,可以添加这个配置来忽略匹配错误产生的 error 信息
      },
      "date": {					                  # 使用 data 时间戳插件来格式化时间输出,替代默认的 @timestamp
        "field": "logatime",				      # 指定使用新增的 logatime 字段
        "timezone": "Asia/Shanghai", 	          # 指定输出时间的时区,不指定的话可能会比正确的时间晚 8 个小时
        "formats": [
          "yy-MM-dd HH:mm:ss.SSS"	              # 指定时间输出的格式
        ],
        "ignore_failure": true		              # 如果遇到错误则忽略
      }
    }
  ]
}

2、检查pipeline是否设置成功

sql 复制代码
GET _ingest/pipeline/test-news-server-online

3、在索引的setting里设置默认pipeline

sql 复制代码
PUT customer
{
  "settings": {
    "index":{
      "default_pipeline":"test-news-server-online"
    }
  }
}

这样,在数据写es时候,就会生成字段date,数据写入时间

相关推荐
贾斯汀玛尔斯1 小时前
每天学一个算法--LSM-Tree(Log-Structured Merge Tree)
java·算法·lsm-tree
bitt TRES1 小时前
springboot与springcloud对应版本
java·spring boot·spring cloud
Y001112361 小时前
JavaWeb-end
java·servlet·web
万少2 小时前
Vibe Coding不停歇,移动端 TRAE SOLO 让你用手机也能编程啦
前端·javascript·后端
bzmK1DTbd2 小时前
Git版本控制:Java项目中的分支管理与合并策略
java·开发语言·git
kyriewen112 小时前
WebAssembly:前端界的“外挂”,让C++代码在浏览器里跑起来
开发语言·前端·javascript·c++·单元测试·ecmascript
烛衔溟3 小时前
TypeScript 接口的基本使用 —— 定义对象形状
前端·javascript·typescript
铁皮饭盒4 小时前
成为AI全栈 - 第3课:路由 RESTful Elysia 状态码 设计规范
前端·后端·全栈
顾昂_4 小时前
Web 性能优化完全指南
前端·面试·性能优化
JWASX4 小时前
【RocketMQ 生产者和消费者】- 事务源码分析(1)
java·rocketmq·java-rocketmq