Logstash 如何基于消息字段为主机名编写多输入和日志存储筛选器

Logstash 如何基于消息字段为主机名编写多输入和日志存储筛选器,logstash,logstash-grok,Logstash,Logstash Grok,作为logstash的新手,我想了解一下,因为我有两种类型的日志,一种是Linux系统日志,另一种是CISCO交换机日志,现在我期待着为这两种日志创建不同的输入和过滤器 我已经将linux日志的类型定义为syslog,将CISCO交换机的类型定义为APIC,并希望为过滤器部分定义and。我的CISCO log Patterns示例如下,其中我的交换机名称是消息中的第7个字段,因此想知道如何将第7个字段作为交换机的主机名 Aug 23 16:36:58 Aug 23 11:06:58.830 my

作为logstash的新手,我想了解一下,因为我有两种类型的日志,一种是Linux系统日志,另一种是CISCO交换机日志,现在我期待着为这两种日志创建不同的输入和过滤器

我已经将linux日志的类型定义为syslog,将CISCO交换机的类型定义为APIC,并希望为过滤器部分定义and。我的CISCO log Patterns示例如下,其中我的交换机名称是消息中的第7个字段,因此想知道如何将第7个字段作为交换机的主机名

Aug 23 16:36:58 Aug 23 11:06:58.830 mydc-leaf-3-5 %LOG_-1-SYSTEM_MSG [E4210472][transition][info][sys] sent user message to syslog group:Syslog_Elastic_Server:final
Blow是我的logstash-syslog.conf文件,用于syslog,但用于CISCO日志需要while,即type=>APIC

过滤器对下面的消息正常工作,并且我正确地获得了字段syslog\u hostname,在这里,以防我得到linuxdev

筛选器不适用于以下消息

Aug 24 10:26:22 Aug 24 04:56:22.444 my-apic-1 %LOG_-3-SYSTEM_MSG [F1546][soaking_clearing][packets-dropped][minor][dbgs/ac/sdvpcpath-207-208-to-109-110/fault-F1546] 2% of packets were dropped during the last collection interval

经过一番摸索,以下是我对Cisco APIC系统日志的模式:

%{SYSLOG5424PRI:initial_code}%{CISCOTIMESTAMP:cisco_timestamp}%{SPACE}%{TZ}%{ISO8601_TIMEZONE}%{SPACE}%{URIHOST:uri_host}%{SPACE}%{SYSLOGPROG:syslog_prog}%{SPACE}%{SYSLOG5424SD:message_code}%{SYSLOG5424SD:message_type}%{SYSLOG5424SD:messa
ge_class}%{NOTSPACE:message_dn}%{SPACE}%{GREEDYDATA:message_content}

让我有一些需要改进的反馈。

问题是APIC部分的模式与syslog部分的模式不同。这是完全不同的message@Val,感谢您作为新手学习者的投入,我无法获得它,虽然我让它有些工作,但我将修改我尝试的模式。适合您的模式是%{CISCOTIMESTAMP:timestamp}%{CISCOTIMESTAMP:time2}%{NOTSPACE:host}?[\w.[/%-]+%{SYSLOG5424SD:f1}%{SYSLOG5424SD:f2}%{SYSLOG5424SD:f3}%{SYSLOG5424SD:f4}%{SYSLOG5424SD:f5}%{GREEDYDATA:message}@Val,再次,让我试试这个。@Val这个可以工作,但是在他更新的帖子中,这个也可以作为您的%{CISCOTIMESTAMP:syslog\U timestamp}%{CISCOTIMESTAMP}%{SYSLOGHOSTNAME:syslog\U hostname}%{GREEDYDATA:syslog message}优雅地工作但是,如果我们能够将`{SYSLOGHOST:syslog\u hostname}`添加到您的模式中,那么唯一的办法就是,我尝试了,但没有成功。
Aug 24 10:26:22 Aug 24 04:56:22.444 my-apic-1 %LOG_-3-SYSTEM_MSG [F1546][soaking_clearing][packets-dropped][minor][dbgs/ac/sdvpcpath-207-208-to-109-110/fault-F1546] 2% of packets were dropped during the last collection interval
%{SYSLOG5424PRI:initial_code}%{CISCOTIMESTAMP:cisco_timestamp}%{SPACE}%{TZ}%{ISO8601_TIMEZONE}%{SPACE}%{URIHOST:uri_host}%{SPACE}%{SYSLOGPROG:syslog_prog}%{SPACE}%{SYSLOG5424SD:message_code}%{SYSLOG5424SD:message_type}%{SYSLOG5424SD:messa
ge_class}%{NOTSPACE:message_dn}%{SPACE}%{GREEDYDATA:message_content}