Regex Logstash config--根据正则表达式捕获组添加字段
因此,我有一个hostname字段,看起来像: amma-pr-app-03.hst.hosting.com 我制作了以下正则表达式: ([^-]{4,5})-(pr|st)-(app|svc|srv)-(d+) 它应该分成4个捕获组——在本例中为 安装-安马 域-pr 服务-应用程序 节点-03 鉴于当前的捕获组,我将如何变异 我尝试添加字段,然后使用$1中的值Regex Logstash config--根据正则表达式捕获组添加字段,regex,split,logstash,logstash-grok,logstash-configuration,Regex,Split,Logstash,Logstash Grok,Logstash Configuration,因此,我有一个hostname字段,看起来像: amma-pr-app-03.hst.hosting.com 我制作了以下正则表达式: ([^-]{4,5})-(pr|st)-(app|svc|srv)-(d+) 它应该分成4个捕获组——在本例中为 安装-安马 域-pr 服务-应用程序 节点-03 鉴于当前的捕获组,我将如何变异 我尝试添加字段,然后使用$1中的值 有人对此有什么建议吗?您可以这样命名您的捕获组: (?<field_name>pattern) (?<insta
有人对此有什么建议吗?您可以这样命名您的捕获组:
(?<field_name>pattern)
(?<installation>[^-]{4,5})-(?<domain>(pr|st))-(?<service>(app|svc|srv))-(?<node>(\d+))
(?模式)
使用此选项,您的grok图案可以如下所示:
(?<field_name>pattern)
(?<installation>[^-]{4,5})-(?<domain>(pr|st))-(?<service>(app|svc|srv))-(?<node>(\d+))
(?[^-]{4,5})-(?(pr|st))-(?(app|svc|srv))-(?(\d+)
作为一个问题,这是否适用于filebeat添加的字段?主机名不是日志文件本身的一部分,而是发送日志时filebeat添加的内容的一部分。据我所知,我的logstash配置与“message”字段匹配,该字段位于该字段之前。您手动添加或使用Filebeat自动添加的任何字段都应该可以在您的logstash筛选器中访问。酷,让我来测试一下(有人刚刚重新启动了我的VM,但您的答案似乎完全符合我的需要)这似乎不起作用,我在以下位置提出了一个新问题: