elasticsearch 对数存储索引,elasticsearch,logstash,logstash-grok,elasticsearch,Logstash,Logstash Grok" /> elasticsearch 对数存储索引,elasticsearch,logstash,logstash-grok,elasticsearch,Logstash,Logstash Grok" />

elasticsearch 对数存储索引

elasticsearch 对数存储索引,elasticsearch,logstash,logstash-grok,elasticsearch,Logstash,Logstash Grok,我想为两个不同的系统创建两个单独的索引,这两个系统正在为udp-syslog向logstash服务器设置发送数据。在Elasticsearch中,我创建了一个名为CiscoASA01的索引和另一个名为CiscoASA02的索引。我如何配置Logstash以过滤来自第一个设备的所有事件以进入CiscoASA01索引,以及来自第二个设备的事件以进入第二个索引?谢谢。您可以使用if来分隔日志。假设您的第一台设备是CiscoASA01,第二台设备是CiscoASA02 这是输出 output {

我想为两个不同的系统创建两个单独的索引,这两个系统正在为udp-syslog向logstash服务器设置发送数据。在Elasticsearch中,我创建了一个名为CiscoASA01的索引和另一个名为CiscoASA02的索引。我如何配置Logstash以过滤来自第一个设备的所有事件以进入CiscoASA01索引,以及来自第二个设备的事件以进入第二个索引?谢谢。

您可以使用
if
来分隔日志。假设您的第一台设备是CiscoASA01,第二台设备是CiscoASA02

这是输出

output {
    if [host] == "CiscoASA01"
    {
            elasticsearch {
                    host => "elasticsearch_server"
                    index => "CiscoASA01"
            }
    }

    if [host] == "CiscoASA02"
    {
            elasticsearch {
                    host => "elasticsearch_server"
                    index => "CiscoASA02"
            }
    }
}
[host]
是日志存储事件中的字段。您可以使用它将日志分隔为不同的输出


希望这能帮助你

尝试一下可能会很有趣:index=>“%{host}”非常感谢!是否有一种方法可以使用子网变量而不是主机?i、 e.子网192.168.1.x>使用index1、192.168.2.x>使用index2中的任何内容?我怀疑我必须使用regex对主机变量执行此操作?实际上,我似乎找不到有关的信息,在logstash的输出部分,我可以引用事件中的任何字段吗?我在配置的过滤区域添加了一个新字段,即“设备类型”=交换机、路由器、防火墙等。在输出区域,我可以访问该字段吗?谢谢。是的,你可以做你需要的![host]是事件字段。所以,如果你想使用“设备类型”,你可以使用这个“如果[设备类型]==开关”。