ElasticSearch 通过script脚本自动生成Asia/Shanghai(东八区)时间

本文主要是介绍ElasticSearch 通过script脚本自动生成Asia/Shanghai(东八区)时间,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

公司规定每次往es重中写入数据的时候都需要自动生成三个时间:create_time(创建时间),update_time(更新时间 默认等于创建时间),delete_time(删除时间默认为0)

一.es默认为utc时间
es默认是按UTC时间计算存储,国内的时区是+8(东八区),所以比UTC时间快8小时
二.script脚本自动生成时间以及默认值
1.定义管道(Pipeline)
# 通过管道修改默认utc时间为东八区时间,并将默认值赋值给 create_time,update_time,delete_timePUT _ingest/pipeline/pipeline_cocktail_py_date
{"description" : "inner pipeline cocktail_py","processors" : [{"script": {"lang": "painless", "source": """def imp = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss.SSS");imp.setTimeZone(TimeZone.getTimeZone("Asia/Shanghai"));def ts = imp.format(new Date((new Date().getTime())));if (ctx.create_time==null  ){ctx.create_time = ts;}if (ctx.delete_time==null  ){ctx.delete_time = 0;}ctx.update_time = ts;"""}}]
}
2.es自定义动态模板
# 通过模板先规范create_time,delete_time,update_time的类型以及相应的格式
PUT /my-index-100002?pretty
{
"settings": {"default_pipeline": "pipeline_cocktail_py_date"},"mappings": {"properties": { "delete_time": {"type": "date","format": "epoch_millis"},"create_time": {"type": "date","format": "yyyy-MM-dd HH:mm:ss.SSS"},"update_time": {"type": "date","format": "yyyy-MM-dd HH:mm:ss.SSS"}}}
}
3.插入测试数据
PUT my-index-100002/_doc/01
{"name": "这是一条测试数据"
}
4.查看相应自动生成的数据情况以及相应mapping
GET /my-index-100002/_search
{"query": {"bool": {"must": []}}
}GET /my-index-100002/_mapping

在这里插入图片描述

在这里插入图片描述

参考:https://www.elastic.co/guide/en/elasticsearch/reference/current/script-processor.html

这篇关于ElasticSearch 通过script脚本自动生成Asia/Shanghai(东八区)时间的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/673152

相关文章

通过Python脚本批量复制并规范命名视频文件

《通过Python脚本批量复制并规范命名视频文件》本文介绍了如何通过Python脚本批量复制并规范命名视频文件,实现自动补齐数字编号、保留原始文件、智能识别有效文件等功能,听过代码示例介绍的非常详细,... 目录一、问题场景:杂乱的视频文件名二、完整解决方案三、关键技术解析1. 智能路径处理2. 精准文件名

Springboot的自动配置是什么及注意事项

《Springboot的自动配置是什么及注意事项》SpringBoot的自动配置(Auto-configuration)是指框架根据项目的依赖和应用程序的环境自动配置Spring应用上下文中的Bean... 目录核心概念:自动配置的关键特点:自动配置工作原理:示例:需要注意的点1.默认配置可能不适合所有场景

web网络安全之跨站脚本攻击(XSS)详解

《web网络安全之跨站脚本攻击(XSS)详解》:本文主要介绍web网络安全之跨站脚本攻击(XSS)的相关资料,跨站脚本攻击XSS是一种常见的Web安全漏洞,攻击者通过注入恶意脚本诱使用户执行,可能... 目录前言XSS 的类型1. 存储型 XSS(Stored XSS)示例:危害:2. 反射型 XSS(Re

MySQL 日期时间格式化函数 DATE_FORMAT() 的使用示例详解

《MySQL日期时间格式化函数DATE_FORMAT()的使用示例详解》`DATE_FORMAT()`是MySQL中用于格式化日期时间的函数,本文详细介绍了其语法、格式化字符串的含义以及常见日期... 目录一、DATE_FORMAT()语法二、格式化字符串详解三、常见日期时间格式组合四、业务场景五、总结一、

nginx生成自签名SSL证书配置HTTPS的实现

《nginx生成自签名SSL证书配置HTTPS的实现》本文主要介绍在Nginx中生成自签名SSL证书并配置HTTPS,包括安装Nginx、创建证书、配置证书以及测试访问,具有一定的参考价值,感兴趣的可... 目录一、安装nginx二、创建证书三、配置证书并验证四、测试一、安装nginxnginx必须有"-

javaScript在表单提交时获取表单数据的示例代码

《javaScript在表单提交时获取表单数据的示例代码》本文介绍了五种在JavaScript中获取表单数据的方法:使用FormData对象、手动提取表单数据、使用querySelector获取单个字... 方法 1:使用 FormData 对象FormData 是一个方便的内置对象,用于获取表单中的键值

前端知识点之Javascript选择输入框confirm用法

《前端知识点之Javascript选择输入框confirm用法》:本文主要介绍JavaScript中的confirm方法的基本用法、功能特点、注意事项及常见用途,文中通过代码介绍的非常详细,对大家... 目录1. 基本用法2. 功能特点①阻塞行为:confirm 对话框会阻塞脚本的执行,直到用户作出选择。②

Java实战之利用POI生成Excel图表

《Java实战之利用POI生成Excel图表》ApachePOI是Java生态中处理Office文档的核心工具,这篇文章主要为大家详细介绍了如何在Excel中创建折线图,柱状图,饼图等常见图表,需要的... 目录一、环境配置与依赖管理二、数据源准备与工作表构建三、图表生成核心步骤1. 折线图(Line Ch

Python3脚本实现Excel与TXT的智能转换

《Python3脚本实现Excel与TXT的智能转换》在数据处理的日常工作中,我们经常需要将Excel中的结构化数据转换为其他格式,本文将使用Python3实现Excel与TXT的智能转换,需要的可以... 目录场景应用:为什么需要这种转换技术解析:代码实现详解核心代码展示改进点说明实战演练:从Excel到

Python脚本实现图片文件批量命名

《Python脚本实现图片文件批量命名》这篇文章主要为大家详细介绍了一个用python第三方库pillow写的批量处理图片命名的脚本,文中的示例代码讲解详细,感兴趣的小伙伴可以了解下... 目录前言源码批量处理图片尺寸脚本源码GUI界面源码打包成.exe可执行文件前言本文介绍一个用python第三方库pi