Elasticsearch 5.5でアクセスログの分析を試しています。

テンプレート「access_log-template」を登録して「access_log-2017.10.25」というような日毎のインデックスを生成するようにしたのですが、日毎の方が下記のようにtextになってしまいます。
原因などわかりますでしょうか?
データの登録はFluentdを使っています。

・keywordにしたagentフィールドがtext+keywordになる

・longにしたcodeフィールドがtext+keywordになる

登録したテンプレートのJSON

{
  "template": "access_log-*",
  "mappings" : {
    "access_log" : {
      "_source" : { "enabled" : false },
      "properties" : {
        "code" : { "type" : "long" },
        "agent" : { "type" : "keyword" }
      }
    }
  }
}

マッピング情報

{
  "access_log-template" : {
    "mappings" : {
      "access_log" : {
        "_source" : {
          "enabled" : false
        },
        "properties" : {
          "agent" : {
            "type" : "keyword"
          },
          "code" : {
            "type" : "long"
          }
        }
      }
    }
  },
  "access_log-2017.10.25" : {
    "mappings" : {
      "access_log" : {
        "properties" : {
          "@tag_key_name" : {
            "type" : "text",
            "fields" : {
              "keyword" : {
                "type" : "keyword",
                "ignore_above" : 256
              }
            }
          },
          "@timestamp" : {
            "type" : "date"
          },
          "agent" : {
            "type" : "text",
            "fields" : {
              "keyword" : {
                "type" : "keyword",
                "ignore_above" : 256
              }
            }
          },
          "code" : {
            "type" : "text",
            "fields" : {
              "keyword" : {
                "type" : "keyword",
                "ignore_above" : 256
              }
            }
          }
        }
      }
    }
  }
}