[英]How to create a new fields on Kibana for logs?
城堡是正确的,但是他几乎没有给您继续做的事情。
实际上,在您的logstash配置中,您将需要设置一个filter{}
部分,该部分描述如何将日志分为各个字段。 请注意,这是在提取日志时完成的,而不是在已经进行弹性搜索之后。
有关更多信息,请参见grok过滤器的文档。
谢谢@乔。 我可以通过配置logstash将消息拆分为几个字段(例如,方法,持续时间,控制器)。
这是我的实际示例,让我们从文件中读取这些日志:
input {
file {
path => "/var/log/http.log"
}
}
filter {
grok {
match => { "message" => "%{IP:client} %{WORD:method} %{URIPATHPARAM:request} %{NUMBER:bytes} %{NUMBER:duration}" }
}
}
您需要使用类似kvp过滤器的操作在logstash配置中执行此操作
检查最新(2019年6月) Elastic 7.2版本是否解决了您的问题:
弹性日志 ,版本7.2.0,可从Elasticsearch服务 ,或为部分弹性栈的默认分配
对于Kibana中的Logs App而言,这包括字段固定 ,也称为自定义列 。
这使您可以指定其他字段以显示在日志查看器中,以及默认字段:
大致了解一下Logstash的grok过滤器和grok模式。 就像正则表达式一样,另外还有已经可以用于通用数据的“内置”模式(请参阅https://github.com/elastic/logstash/blob/v1.4.2/patterns/grok-patterns )
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.