fluent-plugin-filter-list 0.6.0 → 0.7.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/.github/dependabot.yml +8 -0
- data/.rubocop.yml +12 -9
- data/.travis.yml +3 -4
- data/Gemfile +1 -1
- data/README.md +18 -1
- data/fluent-plugin-out_filter_list.gemspec +5 -4
- data/lib/base.rb +8 -0
- data/lib/fluent/plugin/filter_filter_list.rb +5 -1
- data/lib/fluent/plugin/out_filter_list.rb +8 -9
- data/lib/fluent/plugin/out_filter_list/version.rb +1 -1
- data/lib/matcher.rb +15 -4
- metadata +17 -15
    
        checksums.yaml
    CHANGED
    
    | @@ -1,7 +1,7 @@ | |
| 1 1 | 
             
            ---
         | 
| 2 2 | 
             
            SHA256:
         | 
| 3 | 
            -
              metadata.gz:  | 
| 4 | 
            -
              data.tar.gz:  | 
| 3 | 
            +
              metadata.gz: 43e0a813287433d553675fa915bf85f371e693a06284f9b6b459de6541009798
         | 
| 4 | 
            +
              data.tar.gz: 2d0774d211c5d2ea449dd25be10ea238a0208bc3ed051923ab43bd2bc0c14e85
         | 
| 5 5 | 
             
            SHA512:
         | 
| 6 | 
            -
              metadata.gz:  | 
| 7 | 
            -
              data.tar.gz:  | 
| 6 | 
            +
              metadata.gz: 63650ac66d20e8d8df80e27c8e3e677111bab9201dd375aa96ea57088e6fb32cc66a176b2f2d468630ab0f553dcddca8188dee724ca87ded717cedbf7cb5efb2
         | 
| 7 | 
            +
              data.tar.gz: 26fe217237f2ea7c2406894ff4991646560234c62073efb6fbd0ab048cac41499917c557377de3a7f8a435792854d4e6b445437e777998373f7c2248414ffb73
         | 
    
        data/.rubocop.yml
    CHANGED
    
    | @@ -1,6 +1,11 @@ | |
| 1 | 
            -
             | 
| 2 | 
            -
               | 
| 3 | 
            -
             | 
| 1 | 
            +
            AllCops:
         | 
| 2 | 
            +
              TargetRubyVersion: 2.5
         | 
| 3 | 
            +
              NewCops: enable
         | 
| 4 | 
            +
             | 
| 5 | 
            +
             | 
| 6 | 
            +
            Naming/MethodParameterName:
         | 
| 7 | 
            +
              Enabled: false
         | 
| 8 | 
            +
            Layout/LineLength:
         | 
| 4 9 | 
             
              Max: 160
         | 
| 5 10 | 
             
            Style/FormatString:
         | 
| 6 11 | 
             
              EnforcedStyle: sprintf
         | 
| @@ -35,7 +40,7 @@ Metrics/PerceivedComplexity: | |
| 35 40 | 
             
            Style/GlobalVars:
         | 
| 36 41 | 
             
              Exclude:
         | 
| 37 42 | 
             
                - 'test/test_helper.rb'
         | 
| 38 | 
            -
             | 
| 43 | 
            +
            Lint/MissingSuper:
         | 
| 39 44 | 
             
              Exclude:
         | 
| 40 45 | 
             
                - 'test/test_helper.rb'
         | 
| 41 46 | 
             
            Style/MissingRespondToMissing:
         | 
| @@ -45,9 +50,7 @@ Style/TernaryParentheses: | |
| 45 50 | 
             
              Enabled: false
         | 
| 46 51 | 
             
            Style/BlockDelimiters:
         | 
| 47 52 | 
             
              AutoCorrect: false
         | 
| 48 | 
            -
             | 
| 49 | 
            -
              AutoCorrect: false
         | 
| 50 | 
            -
            Style/BracesAroundHashParameters:
         | 
| 51 | 
            -
              Enabled: false
         | 
| 52 | 
            -
            Layout/IndentHash:
         | 
| 53 | 
            +
            Layout/FirstHashElementIndentation:
         | 
| 53 54 | 
             
              EnforcedStyle: consistent
         | 
| 55 | 
            +
            Style/RedundantSelfAssignment:
         | 
| 56 | 
            +
              Enabled: false
         | 
    
        data/.travis.yml
    CHANGED
    
    | @@ -1,12 +1,11 @@ | |
| 1 1 | 
             
            language: ruby
         | 
| 2 2 | 
             
            rvm:
         | 
| 3 | 
            -
              - 2.3
         | 
| 4 | 
            -
              - 2.4
         | 
| 5 3 | 
             
              - 2.5
         | 
| 6 4 | 
             
              - 2.6
         | 
| 5 | 
            +
              - 2.7
         | 
| 7 6 | 
             
            before_install:
         | 
| 8 | 
            -
              - gem update --remote bundler
         | 
| 9 7 | 
             
              - gem update --system
         | 
| 10 | 
            -
              - gem  | 
| 8 | 
            +
              - gem update --remote bundler
         | 
| 11 9 | 
             
            script:
         | 
| 10 | 
            +
              - bundle exec rubocop -d
         | 
| 12 11 | 
             
              - bundle exec rake
         | 
    
        data/Gemfile
    CHANGED
    
    
    
        data/README.md
    CHANGED
    
    | @@ -29,6 +29,9 @@ This repository contains two plugins: _Filter_ and _Output_, and expects two mai | |
| 29 29 | 
             
            Use the `filter_list` filter. Configure fluentd as follows.
         | 
| 30 30 |  | 
| 31 31 | 
             
            #### ACMatcher
         | 
| 32 | 
            +
             | 
| 33 | 
            +
            _ACMatcher_ is a matcher using [Aho–Corasick algorithm](https://en.wikipedia.org/wiki/Aho%E2%80%93Corasick_algorithm) to enable faster multiple-pattern matching.
         | 
| 34 | 
            +
             | 
| 32 35 | 
             
            ```
         | 
| 33 36 | 
             
            <filter pattern>
         | 
| 34 37 | 
             
              @type filter_list
         | 
| @@ -66,7 +69,7 @@ While the following message is passed through as the target field specified in t | |
| 66 69 | 
             
            }
         | 
| 67 70 | 
             
            ```
         | 
| 68 71 |  | 
| 69 | 
            -
            Additionally, the following message is also omitted since `filter_empty` is `true`. The value is determined to be empty when the  | 
| 72 | 
            +
            Additionally, the following message is also omitted since `filter_empty` is `true`. The value is determined to be empty when the trimmed value is empty.
         | 
| 70 73 |  | 
| 71 74 | 
             
            ```json
         | 
| 72 75 | 
             
            {
         | 
| @@ -75,6 +78,19 @@ Additionally, the following message is also omitted since `filter_empty` is `tru | |
| 75 78 | 
             
            }
         | 
| 76 79 | 
             
            ```
         | 
| 77 80 |  | 
| 81 | 
            +
            All these examples are _blacklisting_. That is, a text matched to a pattern will be determined to be filtered. The plugin provides the other type of filtering: _whitelisting_. With the type you can filter records that don't match any pattern. You can enable _whitelisting_ by specifying the `action` (the default value is _blacklist_) explicitly as follows.
         | 
| 82 | 
            +
             | 
| 83 | 
            +
            ```
         | 
| 84 | 
            +
            <filter>
         | 
| 85 | 
            +
              @type filter_list
         | 
| 86 | 
            +
             | 
| 87 | 
            +
              filter AC
         | 
| 88 | 
            +
              key_to_filter foo
         | 
| 89 | 
            +
              pattern_file_paths blacklist.txt
         | 
| 90 | 
            +
              action whitelist
         | 
| 91 | 
            +
            </filter>
         | 
| 92 | 
            +
            ```
         | 
| 93 | 
            +
             | 
| 78 94 | 
             
            #### IPMatcher
         | 
| 79 95 | 
             
            ```
         | 
| 80 96 | 
             
            <filter pattern>
         | 
| @@ -132,6 +148,7 @@ The other use case is to filter messages likewise, but process the filtered mess | |
| 132 148 | 
             
              key_to_filter field_name_you_want_to_filter
         | 
| 133 149 | 
             
              pattern_file_paths ["file_including_patterns_separated_by_new_line"]
         | 
| 134 150 | 
             
              filter_empty true
         | 
| 151 | 
            +
              action blacklist
         | 
| 135 152 |  | 
| 136 153 | 
             
              <retag>
         | 
| 137 154 | 
             
                add_prefix x # retag non-filtered messages whose tag will be "x.your_tag"
         | 
| @@ -8,6 +8,7 @@ Gem::Specification.new do |spec| | |
| 8 8 | 
             
              spec.version       = Fluent::Plugin::FilterList::VERSION
         | 
| 9 9 | 
             
              spec.authors       = ['Shun Yanaura']
         | 
| 10 10 | 
             
              spec.email         = ['metroplexity@gmail.com']
         | 
| 11 | 
            +
              spec.required_ruby_version = '>= 2.5.0'
         | 
| 11 12 |  | 
| 12 13 | 
             
              spec.summary       = 'A fluentd output plugin to filter keywords from messages'
         | 
| 13 14 | 
             
              spec.description   = 'A fluentd output plugin to filter keywords from messages'
         | 
| @@ -21,9 +22,9 @@ Gem::Specification.new do |spec| | |
| 21 22 | 
             
              spec.executables   = spec.files.grep(%r{^bin/}) { |f| File.basename(f) }
         | 
| 22 23 | 
             
              spec.require_paths = ['lib']
         | 
| 23 24 |  | 
| 24 | 
            -
              spec.add_development_dependency 'bundler', '~> 2. | 
| 25 | 
            -
              spec.add_development_dependency 'minitest', '~> 5. | 
| 26 | 
            -
              spec.add_development_dependency 'rake', '~>  | 
| 27 | 
            -
              spec.add_development_dependency 'test-unit', '~> 3. | 
| 25 | 
            +
              spec.add_development_dependency 'bundler', '~> 2.1'
         | 
| 26 | 
            +
              spec.add_development_dependency 'minitest', '~> 5.13'
         | 
| 27 | 
            +
              spec.add_development_dependency 'rake', '~> 13.0'
         | 
| 28 | 
            +
              spec.add_development_dependency 'test-unit', '~> 3.3'
         | 
| 28 29 | 
             
              spec.add_runtime_dependency 'fluentd', '>= 0.14.0', '< 2.0.0'
         | 
| 29 30 | 
             
            end
         | 
    
        data/lib/base.rb
    ADDED
    
    
| @@ -2,12 +2,14 @@ require 'fluent/plugin/out_filter_list/version' | |
| 2 2 | 
             
            require 'matcher'
         | 
| 3 3 | 
             
            require 'fluent/plugin/filter'
         | 
| 4 4 | 
             
            require 'ip'
         | 
| 5 | 
            +
            require 'base'
         | 
| 5 6 |  | 
| 6 7 | 
             
            module Fluent
         | 
| 7 8 | 
             
              module Plugin
         | 
| 8 9 | 
             
                class FilterListFilter < Filter
         | 
| 9 10 | 
             
                  include Matchers
         | 
| 10 11 | 
             
                  include IP
         | 
| 12 | 
            +
                  include BaseFilter
         | 
| 11 13 |  | 
| 12 14 | 
             
                  Plugin.register_filter('filter_list', self)
         | 
| 13 15 |  | 
| @@ -15,6 +17,7 @@ module Fluent | |
| 15 17 | 
             
                  config_param :key_to_filter, :string, default: nil
         | 
| 16 18 | 
             
                  config_param :pattern_file_paths, :array, default: [], value_type: :string
         | 
| 17 19 | 
             
                  config_param :filter_empty, :bool, default: false
         | 
| 20 | 
            +
                  config_param :action, :enum, list: %i[blacklist whitelist], default: :blacklist
         | 
| 18 21 |  | 
| 19 22 | 
             
                  def configure(conf)
         | 
| 20 23 | 
             
                    super
         | 
| @@ -24,7 +27,8 @@ module Fluent | |
| 24 27 |  | 
| 25 28 | 
             
                  def filter(_tag, _time, record)
         | 
| 26 29 | 
             
                    target = record[@key_to_filter]
         | 
| 27 | 
            -
             | 
| 30 | 
            +
             | 
| 31 | 
            +
                    return nil if should_filter?(target)
         | 
| 28 32 |  | 
| 29 33 | 
             
                    record
         | 
| 30 34 | 
             
                  end
         | 
| @@ -2,12 +2,14 @@ require 'fluent/plugin/output' | |
| 2 2 | 
             
            require 'fluent/plugin/out_filter_list/version'
         | 
| 3 3 | 
             
            require 'matcher'
         | 
| 4 4 | 
             
            require 'ip'
         | 
| 5 | 
            +
            require 'base'
         | 
| 5 6 |  | 
| 6 7 | 
             
            module Fluent
         | 
| 7 8 | 
             
              module Plugin
         | 
| 8 9 | 
             
                class FilterListOutput < Output
         | 
| 9 10 | 
             
                  include Matchers
         | 
| 10 11 | 
             
                  include IP
         | 
| 12 | 
            +
                  include BaseFilter
         | 
| 11 13 |  | 
| 12 14 | 
             
                  Plugin.register_output('filter_list', self)
         | 
| 13 15 |  | 
| @@ -17,6 +19,7 @@ module Fluent | |
| 17 19 | 
             
                  config_param :key_to_filter, :string, default: nil
         | 
| 18 20 | 
             
                  config_param :pattern_file_paths, :array, default: [], value_type: :string
         | 
| 19 21 | 
             
                  config_param :filter_empty, :bool, default: false
         | 
| 22 | 
            +
                  config_param :action, :enum, list: %i[blacklist whitelist], default: :blacklist
         | 
| 20 23 |  | 
| 21 24 | 
             
                  config_section :retag, required: true, multi: false do
         | 
| 22 25 | 
             
                    config_param :tag, :string, default: nil
         | 
| @@ -28,10 +31,6 @@ module Fluent | |
| 28 31 | 
             
                    config_param :add_prefix, :string, default: nil
         | 
| 29 32 | 
             
                  end
         | 
| 30 33 |  | 
| 31 | 
            -
                  def initialize
         | 
| 32 | 
            -
                    super
         | 
| 33 | 
            -
                  end
         | 
| 34 | 
            -
             | 
| 35 34 | 
             
                  def validate(retag)
         | 
| 36 35 | 
             
                    return unless retag
         | 
| 37 36 | 
             
                    raise Fluent::ConfigError, "missing tag and add_prefix" unless retag.tag || retag.add_prefix
         | 
| @@ -39,15 +38,15 @@ module Fluent | |
| 39 38 | 
             
                  end
         | 
| 40 39 |  | 
| 41 40 | 
             
                  def configure_prefixes
         | 
| 42 | 
            -
                    @prefix_for_filtered_tag = @retag_for_filtered.add_prefix | 
| 43 | 
            -
                    @prefix_for_filtered_tag = @retag_for_filtered | 
| 44 | 
            -
                    @prefix = @retag | 
| 41 | 
            +
                    @prefix_for_filtered_tag = "#{@retag_for_filtered.add_prefix}." if @retag_for_filtered&.add_prefix
         | 
| 42 | 
            +
                    @prefix_for_filtered_tag = @retag_for_filtered&.add_prefix ? "#{@retag_for_filtered.add_prefix}." : ''
         | 
| 43 | 
            +
                    @prefix = @retag&.add_prefix ? "#{@retag.add_prefix}." : ''
         | 
| 45 44 | 
             
                  end
         | 
| 46 45 |  | 
| 47 46 | 
             
                  def configure(conf)
         | 
| 48 47 | 
             
                    super
         | 
| 49 48 | 
             
                    [@retag, @retag_for_filtered].each { |c| validate c }
         | 
| 50 | 
            -
                    patterns = @pattern_file_paths.flat_map { |p| File.readlines(p).map(&: | 
| 49 | 
            +
                    patterns = @pattern_file_paths.flat_map { |p| File.readlines(p).map(&:strip).reject(&:empty?) }
         | 
| 51 50 | 
             
                    @matcher = (@filter == 'IP') ? IPMatcher.new(patterns) : ACMatcher.new(patterns)
         | 
| 52 51 | 
             
                    configure_prefixes
         | 
| 53 52 | 
             
                  end
         | 
| @@ -72,7 +71,7 @@ module Fluent | |
| 72 71 | 
             
                      target = record[@key_to_filter]
         | 
| 73 72 | 
             
                      log.debug "target: #{target}"
         | 
| 74 73 | 
             
                      # Do filter
         | 
| 75 | 
            -
                      if  | 
| 74 | 
            +
                      if should_filter?(target)
         | 
| 76 75 | 
             
                        if @retag_for_filtered
         | 
| 77 76 | 
             
                          t = @retag_for_filtered.tag || ((tag && !tag.empty?) ? @prefix_for_filtered_tag + tag : @retag_for_filtered.add_prefix)
         | 
| 78 77 | 
             
                          log.debug "re-emit with the tag: '#{t}', originally: '#{tag}'"
         | 
    
        data/lib/matcher.rb
    CHANGED
    
    | @@ -13,16 +13,26 @@ module Matchers | |
| 13 13 | 
             
                def matches?(text)
         | 
| 14 14 | 
             
                  node = @trie.root
         | 
| 15 15 | 
             
                  text.to_s.chars.each do |char|
         | 
| 16 | 
            -
                     | 
| 16 | 
            +
                    failure = node.failure
         | 
| 17 17 | 
             
                    node = node.children[char]
         | 
| 18 | 
            -
             | 
| 18 | 
            +
             | 
| 19 | 
            +
                    return true unless node.nil? || node.output.nil?
         | 
| 20 | 
            +
                    return true unless failure.nil? || failure.output.nil?
         | 
| 21 | 
            +
             | 
| 22 | 
            +
                    # Follow failure if it exists in case pattern doesn't match
         | 
| 23 | 
            +
                    node = failure.children[char] if node.nil?
         | 
| 19 24 | 
             
                  end
         | 
| 20 | 
            -
             | 
| 25 | 
            +
             | 
| 26 | 
            +
                  return false if node.nil?
         | 
| 27 | 
            +
                  return true unless node.failure.nil? || node.failure.output.nil?
         | 
| 28 | 
            +
             | 
| 29 | 
            +
                  !node.output.nil?
         | 
| 21 30 | 
             
                end
         | 
| 22 31 | 
             
              end
         | 
| 23 32 |  | 
| 24 33 | 
             
              class IPMatcher
         | 
| 25 34 | 
             
                attr_reader :trie
         | 
| 35 | 
            +
             | 
| 26 36 | 
             
                include IP
         | 
| 27 37 |  | 
| 28 38 | 
             
                def initialize(patterns)
         | 
| @@ -40,6 +50,7 @@ module Matchers | |
| 40 50 |  | 
| 41 51 | 
             
              class Trie
         | 
| 42 52 | 
             
                attr_reader :root
         | 
| 53 | 
            +
             | 
| 43 54 | 
             
                def initialize(patterns)
         | 
| 44 55 | 
             
                  @root = Node.new
         | 
| 45 56 | 
             
                  @root.children.default = @root
         | 
| @@ -59,7 +70,7 @@ module Matchers | |
| 59 70 |  | 
| 60 71 | 
             
                def new_queue
         | 
| 61 72 | 
             
                  q = Queue.new
         | 
| 62 | 
            -
                  @root.children. | 
| 73 | 
            +
                  @root.children.each_value do |child|
         | 
| 63 74 | 
             
                    q.push(child)
         | 
| 64 75 | 
             
                    child.failure = @root # set root on root's children's failure
         | 
| 65 76 | 
             
                  end
         | 
    
        metadata
    CHANGED
    
    | @@ -1,14 +1,14 @@ | |
| 1 1 | 
             
            --- !ruby/object:Gem::Specification
         | 
| 2 2 | 
             
            name: fluent-plugin-filter-list
         | 
| 3 3 | 
             
            version: !ruby/object:Gem::Version
         | 
| 4 | 
            -
              version: 0. | 
| 4 | 
            +
              version: 0.7.3
         | 
| 5 5 | 
             
            platform: ruby
         | 
| 6 6 | 
             
            authors:
         | 
| 7 7 | 
             
            - Shun Yanaura
         | 
| 8 | 
            -
            autorequire: | 
| 8 | 
            +
            autorequire:
         | 
| 9 9 | 
             
            bindir: bin
         | 
| 10 10 | 
             
            cert_chain: []
         | 
| 11 | 
            -
            date:  | 
| 11 | 
            +
            date: 2021-06-14 00:00:00.000000000 Z
         | 
| 12 12 | 
             
            dependencies:
         | 
| 13 13 | 
             
            - !ruby/object:Gem::Dependency
         | 
| 14 14 | 
             
              name: bundler
         | 
| @@ -16,56 +16,56 @@ dependencies: | |
| 16 16 | 
             
                requirements:
         | 
| 17 17 | 
             
                - - "~>"
         | 
| 18 18 | 
             
                  - !ruby/object:Gem::Version
         | 
| 19 | 
            -
                    version: '2. | 
| 19 | 
            +
                    version: '2.1'
         | 
| 20 20 | 
             
              type: :development
         | 
| 21 21 | 
             
              prerelease: false
         | 
| 22 22 | 
             
              version_requirements: !ruby/object:Gem::Requirement
         | 
| 23 23 | 
             
                requirements:
         | 
| 24 24 | 
             
                - - "~>"
         | 
| 25 25 | 
             
                  - !ruby/object:Gem::Version
         | 
| 26 | 
            -
                    version: '2. | 
| 26 | 
            +
                    version: '2.1'
         | 
| 27 27 | 
             
            - !ruby/object:Gem::Dependency
         | 
| 28 28 | 
             
              name: minitest
         | 
| 29 29 | 
             
              requirement: !ruby/object:Gem::Requirement
         | 
| 30 30 | 
             
                requirements:
         | 
| 31 31 | 
             
                - - "~>"
         | 
| 32 32 | 
             
                  - !ruby/object:Gem::Version
         | 
| 33 | 
            -
                    version: '5. | 
| 33 | 
            +
                    version: '5.13'
         | 
| 34 34 | 
             
              type: :development
         | 
| 35 35 | 
             
              prerelease: false
         | 
| 36 36 | 
             
              version_requirements: !ruby/object:Gem::Requirement
         | 
| 37 37 | 
             
                requirements:
         | 
| 38 38 | 
             
                - - "~>"
         | 
| 39 39 | 
             
                  - !ruby/object:Gem::Version
         | 
| 40 | 
            -
                    version: '5. | 
| 40 | 
            +
                    version: '5.13'
         | 
| 41 41 | 
             
            - !ruby/object:Gem::Dependency
         | 
| 42 42 | 
             
              name: rake
         | 
| 43 43 | 
             
              requirement: !ruby/object:Gem::Requirement
         | 
| 44 44 | 
             
                requirements:
         | 
| 45 45 | 
             
                - - "~>"
         | 
| 46 46 | 
             
                  - !ruby/object:Gem::Version
         | 
| 47 | 
            -
                    version: ' | 
| 47 | 
            +
                    version: '13.0'
         | 
| 48 48 | 
             
              type: :development
         | 
| 49 49 | 
             
              prerelease: false
         | 
| 50 50 | 
             
              version_requirements: !ruby/object:Gem::Requirement
         | 
| 51 51 | 
             
                requirements:
         | 
| 52 52 | 
             
                - - "~>"
         | 
| 53 53 | 
             
                  - !ruby/object:Gem::Version
         | 
| 54 | 
            -
                    version: ' | 
| 54 | 
            +
                    version: '13.0'
         | 
| 55 55 | 
             
            - !ruby/object:Gem::Dependency
         | 
| 56 56 | 
             
              name: test-unit
         | 
| 57 57 | 
             
              requirement: !ruby/object:Gem::Requirement
         | 
| 58 58 | 
             
                requirements:
         | 
| 59 59 | 
             
                - - "~>"
         | 
| 60 60 | 
             
                  - !ruby/object:Gem::Version
         | 
| 61 | 
            -
                    version: '3. | 
| 61 | 
            +
                    version: '3.3'
         | 
| 62 62 | 
             
              type: :development
         | 
| 63 63 | 
             
              prerelease: false
         | 
| 64 64 | 
             
              version_requirements: !ruby/object:Gem::Requirement
         | 
| 65 65 | 
             
                requirements:
         | 
| 66 66 | 
             
                - - "~>"
         | 
| 67 67 | 
             
                  - !ruby/object:Gem::Version
         | 
| 68 | 
            -
                    version: '3. | 
| 68 | 
            +
                    version: '3.3'
         | 
| 69 69 | 
             
            - !ruby/object:Gem::Dependency
         | 
| 70 70 | 
             
              name: fluentd
         | 
| 71 71 | 
             
              requirement: !ruby/object:Gem::Requirement
         | 
| @@ -95,6 +95,7 @@ executables: | |
| 95 95 | 
             
            extensions: []
         | 
| 96 96 | 
             
            extra_rdoc_files: []
         | 
| 97 97 | 
             
            files:
         | 
| 98 | 
            +
            - ".github/dependabot.yml"
         | 
| 98 99 | 
             
            - ".gitignore"
         | 
| 99 100 | 
             
            - ".rubocop.yml"
         | 
| 100 101 | 
             
            - ".travis.yml"
         | 
| @@ -106,6 +107,7 @@ files: | |
| 106 107 | 
             
            - bin/console
         | 
| 107 108 | 
             
            - bin/setup
         | 
| 108 109 | 
             
            - fluent-plugin-out_filter_list.gemspec
         | 
| 110 | 
            +
            - lib/base.rb
         | 
| 109 111 | 
             
            - lib/fluent/plugin/filter_filter_list.rb
         | 
| 110 112 | 
             
            - lib/fluent/plugin/out_filter_list.rb
         | 
| 111 113 | 
             
            - lib/fluent/plugin/out_filter_list/version.rb
         | 
| @@ -115,7 +117,7 @@ homepage: https://github.com/yanana/fluent-plugin-filter-list | |
| 115 117 | 
             
            licenses:
         | 
| 116 118 | 
             
            - MIT
         | 
| 117 119 | 
             
            metadata: {}
         | 
| 118 | 
            -
            post_install_message: | 
| 120 | 
            +
            post_install_message:
         | 
| 119 121 | 
             
            rdoc_options: []
         | 
| 120 122 | 
             
            require_paths:
         | 
| 121 123 | 
             
            - lib
         | 
| @@ -123,15 +125,15 @@ required_ruby_version: !ruby/object:Gem::Requirement | |
| 123 125 | 
             
              requirements:
         | 
| 124 126 | 
             
              - - ">="
         | 
| 125 127 | 
             
                - !ruby/object:Gem::Version
         | 
| 126 | 
            -
                  version:  | 
| 128 | 
            +
                  version: 2.5.0
         | 
| 127 129 | 
             
            required_rubygems_version: !ruby/object:Gem::Requirement
         | 
| 128 130 | 
             
              requirements:
         | 
| 129 131 | 
             
              - - ">="
         | 
| 130 132 | 
             
                - !ruby/object:Gem::Version
         | 
| 131 133 | 
             
                  version: '0'
         | 
| 132 134 | 
             
            requirements: []
         | 
| 133 | 
            -
            rubygems_version: 3. | 
| 134 | 
            -
            signing_key: | 
| 135 | 
            +
            rubygems_version: 3.1.4
         | 
| 136 | 
            +
            signing_key:
         | 
| 135 137 | 
             
            specification_version: 4
         | 
| 136 138 | 
             
            summary: A fluentd output plugin to filter keywords from messages
         | 
| 137 139 | 
             
            test_files: []
         |