我有以下请求发送到elasticsearch服务器,如:
http://localhost:9200/myindex/_bulk
但是,时间戳不会被识别为文档时间戳,而是显示为任何具有长值的字段。
Elasticsearch文档说Unix纪元是一种标准的时间格式,我不必为此创建任何特殊的映射。
{ "index" : { "_type" : "regionserver.Regions" } }
{ "@timestamp" : 1492012311392, "type" : "regionserver.Regions", "region" : "1588230740", "table" : "meta", "storeCount" : 1, "storeFileCount" : 2, "memStoreSize" : 416, "storeFileSize" : 13453 }
答案 0 :(得分:0)
您需要为@timestamp
字段定义显式映射为date
类型,以便索引unix timestamp
值,否则Elasticsearch将其视为long
类型。因此,在将unix timestamp
值索引到@timestamp
字段之前,请定义映射,如下所示:
PUT myindex
{
"mappings": {
"regionserver.Regions": {
"properties": {
"@timestamp": {
"type": "date"
}
}
}
}
}
希望这有帮助!