lib/imprint/tracer.rb in imprint-1.4.3 vs lib/imprint/tracer.rb in imprint-1.5.0
- old
+ new
@@ -1,13 +1,14 @@
+require 'securerandom'
+
module Imprint
class Tracer
TRACER_HEADER = 'HTTP_IMPRINTID'
TRACER_KEY = 'IMPRINTID'
RAILS_REQUEST_ID = "action_dispatch.request_id"
TRACE_ID_DEFAULT = "-1"
TRACER_TIMESTAMP = "TIMESTAMP"
- TRACE_CHARS = [('a'..'z'), ('A'..'Z')].map { |i| i.to_a }.flatten
def self.set_trace_id(id, rack_env = {})
Thread.current[TRACER_TIMESTAMP] = Time.now.utc.strftime("%Y-%m-%dT%H:%M:%S.%6N")
Thread.current[TRACER_KEY] = id
# setting to the rack_env, gives error tracking support in some systems
@@ -40,10 +41,10 @@
end
end
end
def self.rand_trace_id
- (0...6).map { TRACE_CHARS[rand(TRACE_CHARS.length)] }.join
+ SecureRandom.uuid
end
end
end