Newly created index template does not apply on old indices?

I newly created an index templates that has the following index-pattern log-*,
And i already have an old index under the name log-server which has a timestamp field that contains a different format than the default formats in elasticsearch ,which is yyyy-MM-dd HH:mm:ss,SSS , so i have put this format in the index template under mappings>properties>timestamp>format .
But whenever i try to send a record with that format it keeps saying

failed to parse field [timestamp] of type [date] in document with id '54'. Preview of field's value: '2020-03-18 11:54:23,001'

So i tried to view the properties of the index by a get request to the indice ,it does not display the format unlike my newly created indices :

    "properties": {
        "@version": {
            "type": "keyword"
        "log": {
            "type": "text",
            "norms": false,
            "fields": {
                "keyword": {
                    "type": "keyword",
                    "ignore_above": 256
        "timestamp": {
            "type": "date"

any ideas ?
Thank you.

Index templates are applied at index creation so will not apply to already existing indices.

Thank you ,
I just wanted to validate my assumption ,so sorry if it was a plain question.
So does that mean that i have to delete my index and create a new one and if yes, how can i backup my data inside that index and re-emit them to the new one ?

This topic was automatically closed 28 days after the last reply. New replies are no longer allowed.