我有一个日志,类似于:
id:0422 time:2013-11-1902:34:58 level:INFO text:(Lorem Ipsum是印刷和排版行业的虚拟文本)params:query:google$ value$dummy data$lorem Ipsum
在使用logstash处理完之后,我将得到具有以下值的字段:
ID=0422
Timestamp=[2013-11-19 02:34:58]
loglevel=INFO
params=query:google$some value$dummy data$lorem Ipsum
text=(Lorem Ipsum is simply dummy text of the printing and typesetting industry)进入弹性搜索第一输出。
& params=query:google$some value$dummy data$lorem Ipsum转换为第二个弹性指数。
我只想提取query:google,以便存储到第二个弹性指数中。
我怎样才能做到这一点?
发布于 2021-04-21 10:06:49
可以使用克隆筛选器复制事件。
https://www.elastic.co/guide/en/logstash/current/plugins-filters-clone.html
只需向其添加一个标记,并使用in标记功能,以确保您只操作要操作的事件,并使用它来决定要写入哪个索引。
clone {
clones => ["params"]
add_tag => ["sendtoindex2"]
}
...
#use the structure below when you want to know which flow to take (you can also use not in [tags])
if ("sendtoindex2" in [tags]) {
...
else {
...
}要确保您只有感兴趣的部分,请使用grok筛选器。
https://www.elastic.co/guide/en/logstash/current/plugins-filters-grok.html
对于这里的例子,应该是这样的:
^%{DATA:name_of_variable_you_want_to_use}\$https://stackoverflow.com/questions/67193031
复制相似问题