From 5020bfd6cabb588dd34ff4171acac42c9b0e1945 Mon Sep 17 00:00:00 2001 From: Nat Lasseter Date: Thu, 25 Jun 2020 13:16:56 +0100 Subject: Added transactions to the collector so we can support exception handling on the raiders --- lib/longboat/raiders.rb | 33 +++++++++++++++++++++------------ 1 file changed, 21 insertions(+), 12 deletions(-) (limited to 'lib/longboat/raiders.rb') diff --git a/lib/longboat/raiders.rb b/lib/longboat/raiders.rb index 3e6f246..2740570 100644 --- a/lib/longboat/raiders.rb +++ b/lib/longboat/raiders.rb @@ -21,19 +21,28 @@ module Longboat end def raid! + puts "RAID" @raiders.each do |name, raider| - start_time = Time.now - raider.raid - end_time = Time.now - time_taken = end_time - start_time - - @collector.report!( - "longboat_meta_raider_runtime", - (time_taken.to_f * 1000).to_i, - help: "Time taken by a raider whilst raiding in ms", - type: "guage", - labels: {raider: name} - ) + @collector.begin! + + begin + start_time = Time.now + raider.raid + end_time = Time.now + time_taken = end_time - start_time + + @collector.report!( + "longboat_meta_raider_runtime", + (time_taken.to_f * 1000).to_i, + help: "Time taken by a raider whilst raiding in ms", + type: "guage", + labels: {raider: name} + ) + + @collector.commit! + rescue Exception => e + @collector.abort! + end end end -- cgit v1.2.1