Sha256: 686b475be418247e413b1eec6c551c3e405dd6ae23d9ee672cf30a5974ef244b
Contents?: true
Size: 1.07 KB
Versions: 6
Compression:
Stored size: 1.07 KB
Contents
#!/usr/bin/env ruby require 'bundler' Bundler.setup require 'zipkin/tracer' url = ENV['ZIPKIN_URL'] || 'http://localhost:9411' tracer1 = Zipkin::Tracer.build(url: url, service_name: 'test-service') tracer2 = Zipkin::Tracer.build(url: url, service_name: 'downstream-service') outer_span = tracer1.start_span( 'receive request', tags: { 'span.kind' => 'server' } ) sleep 1 inner_span = tracer1.start_span( 'fetch info from downstream', child_of: outer_span, tags: { 'span.kind' => 'client', 'peer.service' => 'downstream-service', 'peer.ipv4' => '6.6.6.6', 'peer.port' => 443 } ) sleep 0.3 # emulate network delay downstream_span = tracer2.start_span( 'downstream operation', child_of: inner_span, tags: { 'span.kind' => 'server' } ) downstream_span.log_kv(event: 'custom-event') downstream_span.log_kv(foo: 'bar', baz: 'buz') sleep 0.5 downstream_span.finish sleep 0.2 # emulate network delay inner_span.finish sleep 0.1 # doing something with fetched info outer_span.finish puts 'Finishing...' sleep 3 tracer1.stop tracer2.stop puts 'Finished'
Version data entries
6 entries across 6 versions & 1 rubygems