class Logux::Node
Attributes
last_time[RW]
node_id[W]
sequence[RW]
Public Instance Methods
generate_action_id()
click to toggle source
# File lib/logux/node.rb, line 10 def generate_action_id mutex.synchronize do if last_time && now_time <= last_time @sequence += 1 else @sequence = 0 @last_time = now_time end "#{last_time} #{node_id} #{sequence}" end end
node_id()
click to toggle source
# File lib/logux/node.rb, line 23 def node_id @node_id ||= "server:#{Nanoid.generate(size: 8)}" end
Private Instance Methods
mutex()
click to toggle source
# File lib/logux/node.rb, line 33 def mutex @mutex ||= Mutex.new end
now_time()
click to toggle source
# File lib/logux/node.rb, line 29 def now_time Time.now.to_datetime.strftime('%Q') end