| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990 | [[mapping-timestamp-field]]=== `_timestamp`The `_timestamp` field allows to automatically index the timestamp of adocument. If it is not provided it will be automatically setto a <<mapping-timestamp-field-default,default date>>.[float]==== enabledBy default it is disabled. In order to enable it, the following mappingshould be defined:[source,js]--------------------------------------------------{    "tweet" : {        "_timestamp" : { "enabled" : true }    }}--------------------------------------------------[float][[mapping-timestamp-field-format]]==== formatYou can define the <<mapping-date-format,dateformat>> used to parse the provided timestamp value. For example:[source,js]--------------------------------------------------{    "tweet" : {        "_timestamp" : {            "enabled" : true,            "path" : "post_date",            "format" : "YYYY-MM-dd"        }    }}--------------------------------------------------Note, the default format is `epoch_millis||strictDateOptionalTime`. The timestamp value willfirst be parsed as a number and if it fails the format will be tried.[float][[mapping-timestamp-field-default]]==== defaultYou can define a default value for when timestamp is not providedwithin the index request or in the `_source` document.By default, the default value is `now` which means the date the document was processed by the indexing chain.You can reject documents which do not provide a `timestamp` value by setting `ignore_missing` to false (default to `true`):[source,js]--------------------------------------------------{    "tweet" : {        "_timestamp" : {            "enabled" : true,            "ignore_missing" : false        }    }}--------------------------------------------------You can also set the default value to any date respecting <<mapping-timestamp-field-format,timestamp format>>:[source,js]--------------------------------------------------{    "tweet" : {        "_timestamp" : {            "enabled" : true,            "format" : "YYYY-MM-dd",            "default" : "1970-01-01"        }    }}--------------------------------------------------If you don't provide any timestamp value, _timestamp will be set to this default value.In elasticsearch 1.4, we allowed setting explicitly `"default":null` which is not possible anymoreas we added a new `ignore_missing` setting.When reading an index created with elasticsearch 1.4 and using this, we automatically update it byremoving `"default": null` and setting `"ignore_missing": false`
 |