如记录 Logstash支持例如 and 和 or 在条件表达式中,所以你 可以 说
and
or
if [host] =~ /^10\.1\.1\.5$/ or [host] =~ /^10\.1\.1\.6$/ { ... }
但这不会很有效。相反,尝试找到匹配多个主机的正则表达式(可能一次全部1000个)。例如,如果要包括整个10.1.1.0/24子网,请执行以下操作:
if [host] =~ /^10\.1\.1\./ { ... }
如果那是不可能的话,另一种选择是枚举所有IP地址并使用 in 运营商:
in
if [host] in ["10.1.1.5", "10.1.1.6", "10.1.1.7"] { ... }
最后一个选项是以某种方式标记来自这些主机的消息,这样您就不必将条件放在IP地址上。这似乎是最好的选择,但其可行性取决于日志的收集和运输方式。