【发布时间】:2023-03-07 16:22:01
【问题描述】:
我在我的 ELK 堆栈环境中使用 logstash 1.5。 使用以下过滤器配置:
filter {
mutate {
add_filed => { "src_ip" => "%{src}" }
add_filed => { "dst_ip" => "%{dst}" }
}
dns {
reverse => [ "src", "dst" ]
action => "replace"
}
}
我有两个问题:
- 过滤器丢失或在许多日志上跳过 dns 反向过程 - 我的意思是每个日志都进入过滤器过程或 dst 和 src 字段都反转或根本不反转并保留 ip (当我使用 nslookup 进行测试时,所有 ip 字段在 dns 中都有名称)。
- 我不知道如何以及为什么,但我的一些日志有多个值,我收到以下错误:
DNS:跳过反向,不能处理多个值,:field=>"src" , :value=>["10.0.0.1","20.0.0.2"], :level=> 警告
看起来我的(ELK)logstash 无法处理大量日志并足够快地解决它们。看起来他从不同的日志中创建了多个值的数组键。
有什么想法吗? 不知道大家有没有遇到这个问题?
【问题讨论】:
-
您引用的警告表明
src是一个数组(dns过滤器在其查找目标中需要单个值,而不是数组)。如果您的代理多次附加到同一字段,则可能会发生这种情况。 -
tnx rutter - 是的,我知道,但你能想到为什么 logstash 会这样做吗?如果在日志文件中它们都是分开的,为什么他会多次附加到同一个字段而不是一次值
标签: dns logstash logstash-configuration elastic-stack