The LightStep distributed tracing library for Ruby
Перейти к файлу
Nick Gauthier b7e59be826 privacy pass 2016-10-31 18:45:40 -04:00
benchmark KV logging refactor (before span logging) 2016-10-31 15:10:28 -04:00
bin rename gem and bump to version 0.9.0 2016-10-31 13:38:31 -04:00
examples KV logging refactor (before span logging) 2016-10-31 15:10:28 -04:00
lib privacy pass 2016-10-31 18:45:40 -04:00
scripts rename gem and bump to version 0.9.0 2016-10-31 13:38:31 -04:00
spec logs on spans 2016-10-31 18:35:23 -04:00
.gitignore Add Makefile with publish steps 2016-04-14 13:38:41 -07:00
.rspec Normalize to Ruby conventions 2016-04-07 17:16:29 -07:00
Gemfile Normalize to Ruby conventions 2016-04-07 17:16:29 -07:00
LICENSE.txt Normalize to Ruby conventions 2016-04-07 17:16:29 -07:00
Makefile remove thrift from makefile 2016-10-26 16:31:14 -04:00
README.md documentation 2016-10-28 17:09:47 -04:00
Rakefile rubocop -a 2016-10-28 16:27:50 -04:00
circle.yml Update circle.yml to only run on master 2016-04-14 13:41:08 -07:00
example.rb KV logging refactor (before span logging) 2016-10-31 15:10:28 -04:00
lightstep-tracer.gemspec logs on spans 2016-10-31 18:35:23 -04:00

README.md

lightstep-tracer-ruby

Gem Version Circle CI MIT license Code Climate

The LightStep distributed tracing library for Ruby.

Installation

Add this line to your application's Gemfile:

gem 'lightstep-tracer'

And then execute:

$ bundle

Or install it yourself as:

$ gem install lightstep-tracer

Getting started

require 'lightstep-tracer'

# Initialize the singleton tracer
LightStep.configure(component_name: 'lightstep/ruby/example', access_token: 'your_access_token')

# Create a basic span and attach a log to the span
span = LightStep.start_span('my_span')
span.log_event('hello world', 'count' => 42)

# Create a child span (and add some artificial delays to illustrate the timing)
sleep(0.1)
child = LightStep.start_span('my_child', child_of: span)
sleep(0.2)
child.finish
sleep(0.1)
span.finish

Thread Safety

The LightStep Tracer is threadsafe. For increased performance, you can add the concurrent-ruby-ext gem to your Gemfile. This will enable C extensions for concurrent operations.

The LightStep Tracer is not inherently Fork-safe. When forking, you should disable the Tracer before forking, then enable it in the child Process and parent Process after forking. See the fork_children example for more.

Development

After checking out the repo, run bin/setup to install dependencies. Then, run make test to run the tests.

To install this gem onto your local machine, run bundle exec rake install. To release a new version, update the version number in version.rb, and then run bundle exec rake release, which will create a git tag for the version, push git commits and tags, and push the .gem file to rubygems.org.