MOON
Server: Apache
System: Linux vps.erhabenn.com.br 3.10.0-1160.119.1.el7.tuxcare.els2.x86_64 #1 SMP Mon Jul 15 12:09:18 UTC 2024 x86_64
User: sonne (1011)
PHP: 8.2.31
Disabled: NONE
Upload Files
File: //opt/microsoft/omsagent/plugin/filter_flatten.rb
require_relative 'flattenjson_lib'

module Fluent

  class FlattenFilter < Filter
    Fluent::Plugin.register_filter('filter_flatten', self)

    #Usage:
    #  <filter>
    #    type filter_flatten
    #    select record['apps']['app']
    #  </filter>
    config_param :select, :string, :default => 'record'

    def configure(conf)
      super
    end

    def start
      super
      @flattenjson_lib = OMS::FlattenJson.new
    end

    def shutdown
      super
    end

    def filter_stream(tag, es)
      mes = MultiEventStream.new

      es.each do |time, record| 
        @flattenjson_lib.select_split_flatten(time, record, @select, mes)
      end

      return mes
    end
  end  # class
end  # module