README.md in instana-0.9.2 vs README.md in instana-0.10.1

- old
+ new

@@ -1,19 +1,19 @@ <div align="center"> -<img src="https://www.instana.com/wp-content/uploads/2016/04/stan@2x.png"> +<img src="https://www.instana.com/wp-content/uploads/2016/04/stan@2x.png" height="300px"/> </div> # Instana -The Instana gem provides Ruby metrics for [Instana](https://www.instana.com/). +The Instana gem provides Ruby metrics and traces (request, queue & cross-host) for [Instana](https://www.instana.com/). [![Build Status](https://travis-ci.org/instana/ruby-sensor.svg?branch=master)](https://travis-ci.org/instana/ruby-sensor) [![Gem Version](https://badge.fury.io/rb/instana.svg)](https://badge.fury.io/rb/instana) ## Note -This gem is currently in beta and supports Ruby versions 2.0 or greater. +This gem supports Ruby versions 2.0 or greater. Any and all feedback is welcome. Happy Ruby visibility. ## Installation @@ -35,17 +35,54 @@ The instana gem is a zero configuration tool that will automatically collect key metrics from your Ruby processes. Just install and go. ## Configuration -Although the gem has no configuration required for metrics, individual components can be disabled with a local config. +Although the gem has no configuration required for out of the box metrics and tracing, components can be configured if needed. +### Agent Reporting + +This agent spawns a lightweight background thread to periodically collect and report metrics and traces. Be default, this uses a standard Ruby thread. If you wish to have greater control and potentially boot the agent reporting manually in an alternative thread system (such as actor based threads), you can do so with the following: + +```Ruby +gem "instana", :require => "instana/setup" +``` + +...then in the background thread of your choice simply call: + +```Ruby +::Instana.agent.start +``` + +Note that this call is blocking. It kicks off a loop of timers that periodically collects and reports metrics and trace data. This should only be called from inside an already initialized background thread: + +```Ruby +Thread.new do + ::Instana.agent.start +end +``` + +### Components + +Individual components can be disabled with a local config. + To disable a single component in the gem, you can disable a single component with the following code: ```Ruby ::Instana.config[:metrics][:gc][:enabled] = false ``` Current components are `:gc`, `:memory` and `:thread`. + +### Rack Middleware + +This gem will detect and automagically insert the Instana Rack middleware into the middleware stack when Ruby on Rails is present. We are currently adding support for more frameworks. If you are using a framework other than Ruby on Rails, you can insert the Instana Rack middleware with the following: + +```Ruby +require "instana/rack" +config.middleware.use ::Instana::Rack +``` + +...or whatever specific middleware call is appropriate for your framework. ## Documentation You can find more documentation covering supported components and minimum versions in the Instana [documentation portal](https://instana.atlassian.net/wiki/display/DOCS/Ruby).