我正在使用Logstash将数据提供给Elasticsearch,然后使用Kibana分析该数据。我有一个包含数字标识符的字段。这些都不容易阅读。如何让Kibana覆盖或显示更具人类可读性的值?
更具体地说,我有一个' ip.proto'领域。当此字段包含6时,它应显示为' TCP'。当此字段包含7时,它应显示为' UDP'。
我不确定我需要修改ELK堆栈中的哪个工具才能实现此目的。
由于
答案 0 :(得分:3)
您可以使用条件和mutate filter:
filter {
if [ip][proto] == "6" {
mutate {
replace => ["[ip][proto]", "TCP"]
}
} else if [ip][proto] == "7" {
mutate {
replace => ["[ip][proto]", "UDP"]
}
}
}
这很快变得笨拙,translate filter更优雅(可能更快)。未经测试的例子:
filter {
translate {
field => "[ip][proto]"
dictionary => {
"6" => "TCP"
"7" => "UDP"
}
}
}