class LogStash::Filters::Tld

This example filter will replace the contents of the default message field with whatever you specify in the configuration.

It is only intended to be used as an example.

Public Instance Methods

filter(event) click to toggle source
# File lib/logstash/filters/tld.rb, line 37
def filter(event)

  if @source and PublicSuffix.valid?(event.get(@source), default_rule: nil)
    domain = PublicSuffix.parse(event.get(@source))
    # Replace the event message with our message as configured in the
    # config file.
    h = Hash.new
    h['tld'] = domain.tld
    h['sld'] = domain.sld
    h['trd'] = domain.trd
    h['domain'] = domain.domain
    h['subdomain'] = domain.subdomain
    h['top_level_domain'] = domain.tld
    event.set(@target, h)

    # filter_matched should go in the last line of our successful code
    filter_matched(event)

  end
end
register() click to toggle source
# File lib/logstash/filters/tld.rb, line 29
def register
  # Add instance variables
  require 'public_suffix'
  # force the list to be initialised.
  PublicSuffix::List.default
end