2017-02-14 4 views
0

私のマッピングには次の動的テンプレートがあります。しかしElasticSearch - マッピングの日時フォーマットが無効

"dt": { 
    "match": "*Time", 
    "mapping": { 
     "type": "date", 
     "format": "yyyy-MM-dd HH:mm:ss||yyyy-MM-dd HH:mm:ss.SSS||yyyy-MM-ddTHH:mm:ssZ" 
    } 
} 

私は "BirthTime" でドキュメントを挿入します。 "1992-05-06T00:00:00Zは、" 私は、次のエラーが表示されます。

"type":"illegal_argument_exception","reason":"Invalid format: [yyyy-MM-ddTHH:mm:ssZ]: Illegal pattern component: T" 

私は私の日時形式がISOであると思いましたESがその箱から理解しなければならない標準です。 BirthTimeをサポートするために、私のマッピングフォーマットはどのようにすべきですか?

ありがとうございます。

答えて

3

使用

"format": "yyyy-MM-dd HH:mm:ss||yyyy-MM-dd HH:mm:ss.SSS||yyyy-MM-dd'T'HH:mm:ssZZ"

代わり

"format": "yyyy-MM-dd HH:mm:ss||yyyy-MM-dd HH:mm:ss.SSS||yyyy-MM-ddTHH:mm:ssZ"

+0

の勤務!なぜこれが動作するのか、どこにドキュメントがあるのか​​を指すポインタですか?再度、感謝します! – user481779

+0

Elasticsearchは、日付時間操作にJodaを使用します。参照先:http://www.joda.org/joda-time/apidocs/org/joda/time/format/DateTimeFormat.html –

関連する問題