我正在使用文件夹作为输入:
input {
file {
path => "C:/ProjectName/Uploads/*"
start_position => "beginning"
sincedb_path => "dev/null"
}
}
并作为输出:
output {
elasticsearch {
hosts => "localhost"
index => "manual_index_name" # want filename here
document_type => "_doc"
}
}
我希望elasticsearch中的索引是要编制索引的文件的名称。 我尝试过这个答案的变体而没有成功,因为我不清楚它在做什么:https://stackoverflow.com/a/40156466/6483906
答案 0 :(得分:2)
您需要使用grok
过滤器来查找文件名的最后一部分:
filter {
grok {
match => ["path", "Uploads/%{GREEDYDATA:index_name}" ]
}
}
然后只使用索引名称index => "%{index_name}"