解决方案是使用
.value
{ "script_fields": { "new_date_field": { "script": { "inline": "doc['date_field'].value + 14400" } } }}
但是,我实际上想将其用于重新索引,但格式略有不同。这是我在
_reindexapi中 *** 纵时间的版本
POST _reindex{ "source": { "index": "some_index_v1" }, "dest": { "index": "some_index_v2" }, "script": { "inline": "def sf = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss"); def dt = sf.parse(ctx._source.date_field); def calendar = sf.getCalendar(); calendar.setTime(dt); def instant = calendar.toInstant(); def localDateTime = LocalDateTime.ofInstant(instant, ZoneOffset.UTC); ctx._source.date_field = localDateTime.plusHours(4);" }}
这是可读版本的内联脚本
def sf = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss");def dt = sf.parse(ctx._source.date_field);def calendar = sf.getCalendar();calendar.setTime(dt);def instant = calendar.toInstant();def localDateTime = LocalDateTime.ofInstant(instant, ZoneOffset.UTC);ctx._source.date_field = localDateTime.plusHours(4);
这是无痛支持的功能列表,很痛苦。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)