class AlacrityRails::Instrumentor
Public Class Methods
instrument(name_or_options) { || ... }
click to toggle source
# File lib/alacrity-rails/instrumentor.rb, line 3 def self.instrument(name_or_options) options = name_or_options.is_a?(String) ? { type: AlacrityRails::Transaction::Custom, data: { name: name_or_options } } : name_or_options Client.reset if options[:reset] transaction = options[:type].new(options[:data]) Client.open_transaction(transaction) yield.tap do |response| Client.close_transaction!(response) end