class PrometheusExporter::Instrumentation::Hutch
Public Class Methods
new(klass)
click to toggle source
# File lib/prometheus_exporter/instrumentation/hutch.rb, line 5 def initialize(klass) @klass = klass @client = PrometheusExporter::Client.default end
Public Instance Methods
handle(message)
click to toggle source
# File lib/prometheus_exporter/instrumentation/hutch.rb, line 10 def handle(message) success = false start = ::Process.clock_gettime(::Process::CLOCK_MONOTONIC) result = @klass.process(message) success = true result ensure duration = ::Process.clock_gettime(::Process::CLOCK_MONOTONIC) - start @client.send_json( type: "hutch", name: @klass.class.to_s, success: success, duration: duration ) end