【问题标题】:can you forward logs to different targets for different log classes?您可以将日志转发到不同日志类别的不同目标吗?
【发布时间】:2021-02-04 18:21:19
【问题描述】:

我知道你可以在 logstash 中转发日志。

你可以为不同的类使用不同的目标和协议吗?我想将我的 json 和 syslog 日志之间的转发目标分开。我该怎么做?

【问题讨论】:

    标签: logstash elk logstash-forwarder


    【解决方案1】:

    您可以根据需要使用标签分隔不同的流,并相应地对其应用操作。示例代码如下:

     input {
          beats { port => 2200  tag => apache   }
          tcp { port => 9999  tag => firewall   }
        }
        filter {
           if "apache" in [tags] {  
            <someoperation> { ... }
           } else if "firewall" in [tags] {  
            grok { ... }
           }  
        }
        output {
           if "apache" in [tags] {  
            elasticsearch { ... }
           } else if "firewall" in [tags] {  
            tcp { ... }
           }  
        }
    

    解释:

    在输入插件中,所有从端口 2200 和 9999 流出的事件都分别添加了标签 apache 和防火墙。这将用于根据输入插件中添加的标签对每个事件应用单独的过滤器操作。 现在,以同样的方式,这些事件可以分别发送到不同或相同的端点(无论是日志文件、控制台输出、Elasticsearch 存储等)

    【讨论】:

      猜你喜欢
      • 2019-09-20
      • 2022-10-14
      • 1970-01-01
      • 1970-01-01
      • 2020-12-25
      • 2017-08-24
      • 2018-03-11
      • 2023-02-17
      • 2019-05-13
      相关资源
      最近更新 更多