elasticsearch Elasticsearch logstash jdbc:datetime列被解析为文本类型
我正在使用logstashjdbc插件导入一个表,我不明白为什么一个列被动态解析为tex 这是我的sql专栏:
elasticsearch Elasticsearch logstash jdbc:datetime列被解析为文本类型,
elasticsearch,jdbc,logstash,
elasticsearch,Jdbc,Logstash,我正在使用logstashjdbc插件导入一个表,我不明白为什么一个列被动态解析为tex 这是我的sql专栏: [DATE_VISA] [datetime] 我的日志存储配置文件: input { jdbc { jdbc_connection_string => "jdbc:sqlserver://192.168.100.205;databaseName=myDB;" jdbc_user => "user" jdbc_
[DATE_VISA] [datetime]
我的日志存储配置文件:
input {
jdbc {
jdbc_connection_string => "jdbc:sqlserver://192.168.100.205;databaseName=myDB;"
jdbc_user => "user"
jdbc_password => "pass"
jdbc_driver_library => "C:\Program Files (x86)\sqljdbc_6.0\enu\sqljdbc42.jar"
jdbc_driver_class => "com.microsoft.sqlserver.jdbc.SQLServerDriver"
statement => "SELECT [DATE_VISA] FROM [dbo].[TABLE] WHERE [DATE_VISA] IS NOT NULL"
}
}
output {
elasticsearch {
hosts => "localhost:9200"
index => "myindex"
document_type => "mytype"
}
}
当我在ES中请求映射时,我看到:
"date_visa": {
"type": "text",
"fields": {
"keyword": {
"type": "keyword",
"ignore_above": 256
}
}
}
如果我试图在映射之前创建映射,则在导入过程中会引发错误
您知道会发生什么错误,以及如何进行筛选或转换吗?两个选项:
- 让logstash使用日期{}过滤器将其设置为日期
- 让elasticsearch使用带有与数据库中的值匹配的“format”参数的模板将其设置为日期