gpt4 book ai didi

elasticsearch - 如何将 “updatedAt”时间戳添加到Elasticsearch文档

转载 作者:行者123 更新时间:2023-12-03 00:07:17 24 4
gpt4 key购买 nike

我想确保某个doc_type的所有文档都具有一个“updatedAt”时间戳(ISO 8601),该时间戳将在文档更新时进行更新。它需要是服务器端的时间戳,因为我不知道我是否可以相信所有客户端时间都是同步的。

我使用摄取管道添加“createdAt”时间戳,但似乎使用更新API不支持管道。

我尝试使用更新脚本(使用新提供的'ctx._now'值),但是无法将解析转换为ISO 8601。此外,我不确定更新脚本是否是最可维护的方法,因为每种更新类型都需要自定义脚本。

最佳答案

在我的脚本中,我使用下面的简单代码来标记“updatedAt timestamp”:

ctx._source.updatedAt = ZonedDateTime.ofInstant(Instant.ofEpochMilli(ctx._now), ZoneId.of("Z"));

Z区域ID是UTC时区。 updatedAt字段的日期类型设置为 date。奇怪的是,仅将 ctx._now分配给field也可以。但是它在来源上看起来与我的其他日期字段不同,因此我更喜欢采用上述方法来保持一致。

关于elasticsearch - 如何将 “updatedAt”时间戳添加到Elasticsearch文档,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44244230/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com