Why Gemfury? Push, build, and install  RubyGems npm packages Python packages Maven artifacts PHP packages Go Modules Debian packages RPM packages NuGet packages

Repository URL to install this package:

Details    
elixir-logger / lib / elixir / logger.rb
Size: Mime:
# frozen_string_literal: true

require 'timber'
require 'logger'
require 'request_store'
require 'elixir/logger/elixir_logger'
require 'elixir/logger/filter'
require 'elixir/logger/version'

# Elixir
module Elixir
  # Logger
  module Logger
    # ElixirLogger
    def self.logger(app_name: nil, class_name: nil, filter: [:password])
      timber_key = ENV['TIMBER_API_KEY'] || ''
      args = []
      args.push(Timber::LogDevices::HTTP.new(timber_key)) unless timber_key.empty?
      args.push($stdout)
      # args.push(Jets.logger) if defined?(Jets::VERSION)

      ElixirLogger.new(args,
                       app_name: app_name,
                       class_name: class_name,
                       filter: filter)
    end
  end
end

# module Chewy
#   # Chewy Index
#   class Index
#     def self.descendants
#       ObjectSpace.each_object(Class).select { |klass| klass < self }
#     end
#   end
# end