Sha256: edaebb2c0765de7901c98646efc839eb9494b6b38571cbc9930499d9e2a06a38
Contents?: true
Size: 726 Bytes
Versions: 1
Compression:
Stored size: 726 Bytes
Contents
require 'nori' module Fluent class XmlFilter < Filter Fluent::Plugin.register_filter('xml_simple', self) config_param :fields, :string, default: nil def configure(conf) super raise ConfigError, "'Fields' is required" if self.fields.nil? self.fields = self.fields.split(',') raise ConfigError, "'Fields' must contain at least one key" if self.fields.length < 1 end def start super @parser = Nori.new end def shutdown super @parser = nil end def filter(tag, time, record) self.fields.each { |field| if record.key?(field) record[field] = @parser.parse(xml) end } record end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
fluent-plugin-xml-simple-filter-0.0.3 | lib/fluent/plugin/filter_xml_simple.rb |