module CorrelationId

Constants

HEADER_KEY
THREAD_KEY
VERSION

Public Class Methods

disable() { || ... } click to toggle source
# File lib/correlation_id.rb, line 27
def disable
  using_uuid(_uuid) { yield }
end
using_uuid(new_uuid) { || ... } click to toggle source
# File lib/correlation_id.rb, line 31
def using_uuid(new_uuid)
  old_uuid = uuid

  self.uuid = new_uuid
  result = yield
  self.uuid = old_uuid

  result
end
uuid() click to toggle source
# File lib/correlation_id.rb, line 15
def uuid
  Thread.current[THREAD_KEY] ||= _uuid
end
uuid!() click to toggle source
# File lib/correlation_id.rb, line 19
def uuid!
  Thread.current[THREAD_KEY] = _uuid
end
uuid=(value) click to toggle source
# File lib/correlation_id.rb, line 23
def uuid=(value)
  Thread.current[THREAD_KEY] = value
end

Private Class Methods

_uuid() click to toggle source
# File lib/correlation_id.rb, line 43
def _uuid
  SecureRandom.uuid
end