elasticsearch 如何通过LogStat和analyzer将数据传输到elastic?
我在下面有一个logstash配置文件。Elastic将我的数据读取为
elasticsearch 如何通过LogStat和analyzer将数据传输到elastic?,
elasticsearch,logstash,
elasticsearch,Logstash,我在下面有一个logstash配置文件。Elastic将我的数据读取为ab,而我希望它读取为ab我发现我需要使用未分析的用于我的sscat字段和最大瓦片大小,最小瓦片大小,以获得最佳结果 我是否也应该在products字段中使用not_analysis?这样会有更好的结果吗 我应该如何填写我的my_id_analyzer,以便在不同字段上实际使用分析仪 如何将模板与logstash配置文件连接 input{ file{ path => "path" start_po
a
b
,而我希望它读取为ab
我发现我需要使用未分析的用于我的sscat
字段和最大瓦片大小
,最小瓦片大小
,以获得最佳结果
我是否也应该在products字段中使用not_analysis
?这样会有更好的结果吗
我应该如何填写我的my_id_analyzer
,以便在不同字段上实际使用分析仪
如何将模板与logstash配置文件连接
input{
file{
path => "path"
start_position =>"beginning"
}
}
filter{
csv{
separator => ","
columns => ["Index", "Category", "Scat", "Sscat", "Products", "Measure", "Price", "Description", "Gst"]
}
mutate{convert => ["Index", "float"] }
mutate{convert => ["Price", "float"] }
mutate{convert => ["Gst", "float"] }
}
output{
elasticsearch{
hosts => "host"
user => "elastic"
password => "pass"
index => "masterdb"
}
}
我也有一个模板,可以为所有我上传的未来文件
curl user:pass host:"host" /_template/logstash-id -XPUT -d '{
"template": "logstash-*",
"settings" : {
"analysis": {
"analyzer": {
"my_id_analyzer"{
}
}
}
}
},
"mappings": {
"properties" : {
"id" : { "type" : "string", "analyzer" : "my_id_analyzer" }
}
}
}'
在创建映射时,可以使用“忽略上面的内容:”和“未分析的内容””来限制最大长度,以便不分析文本。
将类型声明为关键字而不是文本将是另一种选择。
关于使用logstash的连接模板,为什么需要它?在elasticsearch上创建模板后,您可以创建索引,该索引将遵循创建的模板定义,您可以开始索引。我应该如何在日志存储配置文件中添加未分析的内容?“未分析”应该是映射的一部分。因此,在es中创建映射时,请使用“未分析”。