Sha256: 562876777781988ffc702fbecb75d754445825b781d959202602f2417ddf372a

Contents?: true

Size: 1.01 KB

Versions: 2

Compression:

Stored size: 1.01 KB

Contents

require 'sidekiq/logstash/configuration'
require 'sidekiq/logstash/version'
require 'sidekiq/middleware/server/logstah_logging'
require 'sidekiq/logging/logstash_formatter'
require 'sidekiq/logging/argument_filter'

module Sidekiq
  module Logstash
    def self.configuration
      @configuration ||= Configuration.new
    end

    def self.configure
      yield(configuration)
    end

    def self.setup(opts = {})
      # Calls Sidekiq.configure_server to inject logics
      Sidekiq.configure_server do |config|
        # Remove default Sidekiq error_handler that logs errors
        config.error_handlers.delete_if {|h| h.is_a?(Sidekiq::ExceptionHandler::Logger) }

        # Add logstash support
        config.server_middleware do |chain|
          chain.add Sidekiq::Middleware::Server::LogstashLogging
          chain.remove Sidekiq::Middleware::Server::Logging
        end

        # Set custom formatter for Sidekiq logger
        config.logger.formatter = Sidekiq::Logging::LogstashFormatter.new
      end
    end
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
sidekiq-logstash-0.2.7 lib/sidekiq/logstash.rb
sidekiq-logstash-0.2.6 lib/sidekiq/logstash.rb