Sha256: 515804eb1841c0066a7713c3d7c5b9c5fe187ec2cd1e3b0c1d5654c0c003087c
Contents?: true
Size: 845 Bytes
Versions: 7
Compression:
Stored size: 845 Bytes
Contents
# frozen_string_literal: true require_relative './remote_reporter/buffer' module Jaeger module Reporters class RemoteReporter def initialize(sender:, flush_interval:) @sender = sender @flush_interval = flush_interval @buffer = Buffer.new end def flush spans = @buffer.retrieve @sender.send_spans(spans) if spans.any? spans end def report(span) return if !span.context.sampled? && !span.context.debug? init_reporter_thread @buffer << span end private def init_reporter_thread return if @initializer_pid == Process.pid @initializer_pid = Process.pid Thread.new do loop do flush sleep(@flush_interval) end end end end end end
Version data entries
7 entries across 7 versions & 3 rubygems