Sha256: a1f377c699a6574acd55a11f9393b8f1d4228ed69a04986dd7c6f368ff4250fc
Contents?: true
Size: 1.6 KB
Versions: 1
Compression:
Stored size: 1.6 KB
Contents
require 'time' require 'logger' module Sidekiq ## # This module is part of Sidekiq core and not intended for extensions. # module Util class Pretty < Logger::Formatter # Provide a call() method that returns the formatted message. def call(severity, time, program_name, message) "#{time.utc.iso8601} #{Process.pid} TID-#{Thread.current.object_id.to_s(36)} #{severity}: #{message}\n" end end def self.logger @logger ||= begin log = Logger.new(STDOUT) log.level = Logger::INFO log.formatter = Pretty.new log end end def self.logger=(log) @logger = (log ? log : Logger.new('/dev/null')) end def constantize(camel_cased_word) names = camel_cased_word.split('::') names.shift if names.empty? || names.first.empty? constant = Object names.each do |name| constant = constant.const_defined?(name) ? constant.const_get(name) : constant.const_missing(name) end constant end def watchdog(last_words) yield rescue => ex logger.error last_words logger.error ex logger.error ex.backtrace.join("\n") end def logger Sidekiq::Util.logger end def redis Sidekiq.redis end def process_id Sidekiq::Util.process_id end def self.process_id @pid ||= begin if Process.pid == 1 # Heroku does not expose pids. require 'securerandom' (SecureRandom.random_number * 4_000_000_000).floor.to_s(16) else Process.pid end end end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
sidekiq-0.8.0 | lib/sidekiq/util.rb |