Setting "not_analyzed" for all strings in Elastic Search AWS managed instance does not work for me
<p>I deleted all data, deleted my index, and ran the following command after verifying there are no other templates:</p>

<pre><code>curl -XPUT https://search-xxxx.us-east-1.es.amazonaws.com/_template/all -d '
{
"template": "*",
    "settings": {
        "index.refresh_interval": "5s"
    },
    "mappings": {
        "_default_": {
            "dynamic_templates": [
                {
                    "string_fields": {
                        "match": "*",
                        "match_mapping_type": "string",
                        "mapping": {
                            "index": "not_analyzed",
                            "omit_norms": true,
                            "type": "string"
                        }
                    }
                }
            ],
            "properties": {
                "@version": {
                    "type": "string",
                    "index": "not_analyzed"
                }
            }
        }
    }
    }
'
</code></pre>

<p>I then proceeded to add some documents, and expected the string fields to not be analyzed, yet I still get the same behavior: a warning from kibana when doing a visualization that the field is analyzed (hence split) so results are messed up (which they obviously are).</p>

<p>Running the following before adding any data successfully added a "not_analyzed" index instruction to the oneFieldThatCould property, so this does work in a single property case, but I need this to be a general rule for all dynamically added prooerties:</p>

<pre><code>curl -XPUT https://search-xxxx.us-east-1.es.amazonaws.com/production/_mapping/events -d '
{
      "properties": {
        "oneFieldThatCould": {
          "index": "not_analyzed",
          "type": "string"
        }
    }
}
'
</code></pre>