如何在Kibana上为日志创建新字段?

时间:2014-06-05 15:43:50

标签: elasticsearch logstash kibana

我配置了Fortimail将其日志消息发送到Logstash,但是,当我在kibana仪表板上查看日志时。

我想在几个字段中拆分消息字段,例如:timedevice_idfromto ......

看到这张图片:

enter image description here

我不知道如何继续自定义字段。

可以给我一些想法,知道要配置哪些文件?

5 个答案:

答案 0 :(得分:5)

Alcazar是对的,但他几乎没有给你任何东西继续下去。

实际上,在您的logstash配置中,您将要设置一个filter{}部分,该部分介绍如何将日志分解为各自的字段。请注意,这是在提取日志时完成的,而不是在他们已经进行弹性搜索之后。

有关详细信息,请参阅grok filter的文档。

答案 1 :(得分:1)

谢谢@Joe。我可以通过configure logstash将消息拆分为多个字段(例如,方法,持续时间,控制器)。

这是我的现实例子,让我们从文件中读取这些日志:

 input {
  file {
    path => "/var/log/http.log"
  }
}
filter {
  grok {
    match => { "message" => "%{IP:client} %{WORD:method} %{URIPATHPARAM:request} %{NUMBER:bytes} %{NUMBER:duration}" }
  }
}

答案 2 :(得分:0)

您需要使用类似kvp过滤器

之类的东西在logstash配置中执行此操作

答案 3 :(得分:0)

检查最新消息(2019年6月)Elastic 7.2 release是否解决了您的问题:

弹性日志(版本7.2.0)可以在Elasticsearch Service上使用,也可以作为default distribution of Elastic Stack的一部分

对于Kibana中的Logs应用程序,其中包括字段固定,也称为自定义列

  

这允许您指定其他字段以显示在日志查看器中,同时还包含默认字段:

https://images.contentstack.io/v3/assets/bltefdd0b53724fa2ce/blt2db52cfca41e7693/5cfff59c6a96af7017dfe507/image1-2.png

答案 4 :(得分:0)

通常来看一下Logstash的grok过滤器和grok模式。就像正则表达式一样,另外还有已经可以用于通用数据的“内置”模式(请参见https://github.com/elastic/logstash/blob/v1.4.2/patterns/grok-patterns