Date 日志存储未知设置';转换为';对于csv{:level=>;:error}
我正在尝试使用Logstash将CSV文件导入弹性搜索。这是我的配置文件Date 日志存储未知设置';转换为';对于csv{:level=>;:error},date,csv,logstash,Date,Csv,Logstash,我正在尝试使用Logstash将CSV文件导入弹性搜索。这是我的配置文件 input { file { path => "c:/Elkwin_Free_x64/input/export.csv" start_position => beginning } } filter { csv { columns => [
input {
file {
path => "c:/Elkwin_Free_x64/input/export.csv"
start_position => beginning
}
}
filter {
csv {
columns => [
"Date",
"Transaction",
"Name",
"Memo",
"Amount"
]
separator => ","
convert => {"Date" => "date"}
}
}
output {
elasticsearch {
action => "index"
host => "localhost"
index => "USB-%{+YYYY.MM}"
workers => 1
}
stdout {
codec => rubydebug
}
}
我希望将“日期”列转换为“日期”类型,而不是“字符串”。但是,当我运行logstash时,我得到以下错误消息
c:\Elkwin_Free_x64\logstash\bin>logstash -f "C:\Elkwin_Free_x64\logstash\conf\logstash.conf
io/console not supported; tty will not be manipulated
Unknown setting 'convert' for csv {:level=>:error}
Error: Something is wrong with your configuration.
You may be interested in the '--configtest' flag which you can
use to validate logstash's configuration before you choose
to restart a running system.
请建议我要做什么更改。csv/convert设置仅出现在Logstash 2.2中,因此如果您使用的是旧版本的Logstash,这就是它抱怨的原因 您可以升级到Logstash 2.2、2.3或最好是2.4,或者像这样使用(注意,过滤器不支持日期转换):
注:我已经选择了ISO8601,但是要确保它与你的日期字段相匹配。csv/convert设置只出现在Logstash 2.2中,所以如果你使用的是旧版本的Logstash,这就是它抱怨的原因 您可以升级到Logstash 2.2、2.3或最好是2.4,或者像这样使用(注意,过滤器不支持日期转换):
注:我选择了ISO8601,但请确保与日期字段中的匹配。Val-感谢您的回复。我的目标还没有实现。我现在使用的是所有最新版本——elasticsearch 2.4.0、logstash 2.4.0和kibana 4.6.1。我有一个CSV文件,它有一个日期字段,它的值如9/2/2016、9/9/2016等。我希望使用此字段作为事件时间戳,而不是logstash生成的时间戳。我使用convert-in-CSV过滤器,然后使用date过滤器来获取时间戳-date{match=>[“date”,“YYYY-MM-dd HH:MM:ss+SSSS”]}。然而,我得到了一个无效格式的异常:“9/9/2016”在“9/2016”处格式不正确。感谢你的离开。瓦尔-谢谢你的回复。我的目标还没有实现。我现在使用的是所有最新版本——elasticsearch 2.4.0、logstash 2.4.0和kibana 4.6.1。我有一个CSV文件,它有一个日期字段,它的值如9/2/2016、9/9/2016等。我希望使用此字段作为事件时间戳,而不是logstash生成的时间戳。我使用convert-in-CSV过滤器,然后使用date过滤器来获取时间戳-date{match=>[“date”,“YYYY-MM-dd HH:MM:ss+SSSS”]}。然而,我得到了一个无效格式的异常:“9/9/2016”在“9/2016”处格式不正确。谢谢你的离开。
filter {
csv {
columns => [
"Date",
"Transaction",
"Name",
"Memo",
"Amount"
]
separator => ","
}
date {
match => ["Date", "ISO8601", "d/m/yyyy"]
target => "Date"
}
}