elasticsearch logstash将数据传输到elasticsearch解析日期错误
这是我的Mysql.configelasticsearch logstash将数据传输到elasticsearch解析日期错误,elasticsearch,logstash,elasticsearch,Logstash,这是我的Mysql.config input { stdin { } jdbc { jdbc_connection_string => "jdbc:mysql://localhost:3306/xc_course?useUnicode=true&characterEncoding=utf-8&useSSL=true&serverTimezone=UTC" # the user we wish to excute our st
input {
stdin {
}
jdbc {
jdbc_connection_string => "jdbc:mysql://localhost:3306/xc_course?useUnicode=true&characterEncoding=utf-8&useSSL=true&serverTimezone=UTC"
# the user we wish to excute our statement as
jdbc_user => "root"
jdbc_password => "1234"
# the path to our downloaded jdbc driver
jdbc_driver_library =>"/usr/local/elasticsearch/logstash/mysql-connector-java-5.1.4.jar"
# the name of the driver class for mysql
jdbc_driver_class => "com.mysql.jdbc.Driver"
jdbc_paging_enabled => "true"
jdbc_page_size => "50000"
#statement_filepath => "/conf/course.sql"
statement => "select * from course_pub where timestamp > date_add(:sql_last_value,INTERVAL 8 HOUR)"
schedule => "* * * * *"
record_last_run => true
last_run_metadata_path => "/usr/local/elasticsearch/elasticsearch-6.2.1/config/logstash_metadata"
}
}
output {
elasticsearch {
hosts => "localhost:9200"
#hosts => ["localhost:9200","localhost:9202","localhost:9203"]
index => "xc_course"
document_id => "%{id}"
document_type => "doc"
template =>"/usr/local/elasticsearch/logstash-6.2.1/config/xc_course_template.json"
template_name =>"xc_course"
template_overwrite =>"true"
}
stdout {
codec => json_lines
}
}
这是我的template.json
{
"mappings": {
"doc": {
"properties": {
"charge": {
"type": "keyword"
},
"description": {
"analyzer": "ik_max_word",
"search_analyzer": "ik_smart",
"type": "text"
},
"end_time": {
"format": "yyyy‐MM‐dd HH:mm:ss",
"type": "date"
},
"expires": {
"format": "yyyy‐MM‐dd HH:mm:ss",
"type": "date"
},
"grade": {
"type": "keyword"
},
"id": {
"type": "keyword"
},
"mt": {
"type": "keyword"
},
"name": {
"analyzer": "ik_max_word",
"search_analyzer": "ik_smart",
"type": "text"
},
"pic": {
"index": false,
"type": "keyword"
},
"price": {
"type": "float"
},
"price_old": {
"type": "float"
},
"pub_time": {
"format": "yyyy‐MM‐dd HH:mm:ss",
"type": "date"
},
"qq": {
"index": false,
"type": "keyword"
},
"st": {
"type": "keyword"
},
"start_time": {
"format": "yyyy‐MM‐dd HH:mm:ss",
"type": "date"
},
"status": {
"type": "keyword"
},
"studymodel": {
"type": "keyword"
},
"teachmode": {
"type": "keyword"
},
"teachplan": {
"analyzer": "ik_max_word",
"search_analyzer": "ik_smart",
"type": "text"
},
"users": {
"index": false,
"type": "text"
},
"valid": {
"type": "keyword"
}
}
}
},
"template": "xc_course"
}
这是我的elasticSearch索引映射
{
"properties": {
"description": {
"analyzer": "ik_max_word",
"search_analyzer": "ik_smart",
"type": "text"
},
"grade": {
"type": "keyword"
},
"id": {
"type": "keyword"
},
"mt": {
"type": "keyword"
},
"name": {
"analyzer": "ik_max_word",
"search_analyzer": "ik_smart",
"type": "text"
},
"users": {
"index": false,
"type": "text"
},
"charge": {
"type": "keyword"
},
"valid": {
"type": "keyword"
},
"pic": {
"index": false,
"type": "keyword"
},
"qq": {
"index": false,
"type": "keyword"
},
"price": {
"type": "float"
},
"price_old": {
"type": "float"
},
"st": {
"type": "keyword"
},
"status": {
"type": "keyword"
},
"studymodel": {
"type": "keyword"
},
"teachmode": {
"type": "keyword"
},
"teachplan": {
"analyzer": "ik_max_word",
"search_analyzer": "ik_smart",
"type": "text"
},
"expires": {
"type": "date",
"format": "yyyy‐MM‐dd HH:mm:ss"
},
"pub_time": {
"type": "date",
"format": "yyyy‐MM‐dd HH:mm:ss"
},
"start_time": {
"type": "date",
"format": "yyyy‐MM‐dd HH:mm:ss"
},
"end_time": {
"type": "date",
"format": "yyyy‐MM‐dd HH:mm:ss"
}
}
}
但是当它开始的时候
无法将事件索引到Elasticsearch。{:状态=>400,:操作=>[“索引”,{:}id=>“4028e58161bd3b380161bd3bcd2f0000”,:}索引=>“xc课程”,:}类型=>“文档”,:{路由=>nil},{LogStash::事件:0x62e0a8f9],:响应=>{“索引”=>{xc课程”,“{类型=>“文档”,“{id”>>“4028E581AB8F8F9=”,“异常状态”=>“解析[start\u time]失败”,“由”=>{“type”=>“非法参数”异常引起”,“原因”=>“无效格式:\“2019-12-20T15:18:13.000Z\”在\“-12-20T15:18:13.000Z\”处格式不正确
未能分析[开始时间],“由”=>{“类型”=>“非法参数”异常引起”
**“无效格式:\”2019-12-20T15:18:13.000Z\”在\“-12-20T15:18:13.000Z\”处格式不正确**
但在我的数据库中,我的数据类型是这样的
当我将date设置为null时,它的工作方式是,但就像2019-12-28 19:24:41一样,解析错误
因此如何处理它jdbc输入将自动将日期列更改为LogStash::Timestamp类型,但您的索引模板希望它们是文本。删除“格式”从索引模板中的日期字段。jdbc输入将自动将日期列更改为LogStash::Timestamp类型,但索引模板要求它们为文本。删除“格式”从索引模板中的日期字段。我看到您没有过滤任何内容,而是将数据拉到ES。您介意在尝试将一个文档放入ES并粘贴到此处之前如何打印它吗?这将有助于我看到您没有过滤任何内容,而是将数据拉到ES。您介意s吗在将文档放入ES并粘贴到此处之前,如何打印一个文档?这会有所帮助