Насколько я понимаю, es поддерживает только эпоху в ms. Мой источник данных - couchbase, а в json-документах есть insertEpoch, который хранится в секундах. Я изо всех сил пытаюсь сделать свой документ для сопоставления для преобразования секунд в ms для меня.Документ отображения Elasticsearch для эпохи в секундах
Вот мое отображение документ:
{
"template" : "cb*",
"order" : 10,
"mappings" : {
"couchbaseCheckpoint" : {
"_source" : {
"includes" : ["doc.*"]
},
"dynamic_templates": [
{
"store_no_index": {
"match": "*",
"mapping": {
"store" : "no",
"index" : "no",
"include_in_all" : false
}
}
}
]
},
"couchbaseDoc" : {
"_source" : {
"includes" : ["meta.*","doc.*"]
},
"properties" : {
"meta" : {
"type" : "object",
"include_in_all" : false
},
"doc" : {
"type" : "nested",
"include_in_all" : false,
"transform": {
"script": "ctx._source['insertEpoch'] = ctx._source['insertEpoch'] * 1000",
"params": {},
"lang": "groovy"
}
}
}
}
}
}
Преобразование не происходит.
Новый документ картирование:
{
"template" : "wheepl",
"order" : 10,
"mappings" : {
"couchbaseCheckpoint" : {
"_source" : {
"includes" : ["doc.*"]
},
"dynamic_templates": [
{
"store_no_index": {
"match": "*",
"mapping": {
"store" : "no",
"index" : "no",
"include_in_all" : false
}
}
}
]
},
"couchbaseDoc" : {
"_timestamp" : {
"enabled" : true,
"store" : true
},
"properties" : {
"meta" : {
"type" : "object",
"include_in_all" : false
},
"doc" : {
"type" : "object",
"include_in_all" : false,
"updateEpoch" : {
"type" : "date",
"format" : "date_time",
"numeric_resolution" : "seconds"
}
}
}
}
}
}
Я даже не видеть поле _timestamp, что я должен видеть!
Вот Kibana screenie:
Благодаря
Какую версию ES вы используете? Это должно работать в версии 1.6: https://github.com/elastic/elasticsearch/pull/10420 –
@AndreiStefan 1.4.5. –
Я обновлю до 1.6. Хотя, даже глядя на индексированные данные, я все еще вижу свою «updateEpoch» в мс, а не секунды. –