README.md in oboe-2.6.5.5 vs README.md in oboe-2.6.6.1

- old
+ new

@@ -3,11 +3,11 @@ The oboe gem provides AppNeta [TraceView](http://www.appneta.com/application-performance-management/) instrumentation for Ruby. ![Ruby TraceView](https://s3.amazonaws.com/pglombardo/oboe-ruby-header.png) -It has the ability to report performance metrics on an array of libraries, databases and frameworks such as Rails, Mongo, Memcache, ActiveRecord, Cassandra, Rack, Resque [and more](https://support.tv.appneta.com/support/solutions/articles/86388-ruby-instrumentation-support-matrix). +It has the ability to report performance metrics on an array of libraries, databases and frameworks such as Rails, Mongo, Memcache, ActiveRecord, Cassandra, Rack, Resque [and more](https://support.appneta.com/cloud/ruby-instrumentation-release-notes) It requires a [TraceView](http://www.appneta.com/products/traceview/) account to view metrics. Get yours, [it's free](http://www.appneta.com/products/traceview-free-account/). [![Gem Version](https://badge.fury.io/rb/oboe.png)](http://badge.fury.io/rb/oboe) [![Build Status](https://travis-ci.org/appneta/oboe-ruby.png?branch=master)](https://travis-ci.org/appneta/oboe-ruby) @@ -35,11 +35,11 @@ *Note: You will still need to decide on your `tracing_mode` depending on whether you are running with an instrumented Apache or nginx in front of your Rails stack. See below for more details.* ### The Install Generator -The oboe gem provides a Rails generator used to seed an oboe initializer where you can configure and control `tracing_mode`, `sample_rate` and [other options](https://support.tv.appneta.com/support/solutions/articles/86392-configuring-the-ruby-instrumentation). +The oboe gem provides a Rails generator used to seed an oboe initializer where you can configure and control `tracing_mode`, `sample_rate` and [other options](https://support.appneta.com/cloud/configuring-ruby-instrumentation) To run the install generator run: ```bash bundle exec rails generate oboe:install @@ -97,10 +97,42 @@ end ``` Note: If you're on Heroku, you don't need to set `tracing_mode` or `sample_rate` - they will be automatically configured. +## Grape + +You can instrument your Grape application by adding the following code to your `config.ru` Rackup file: + +```ruby + # If you're not using Bundler.require. Make sure this is done + # after the Grape require directive. + require 'oboe' + + # When traces should be initiated for incoming requests. Valid options are + # "always", "through" (when the request is initiated with a tracing header + # from upstream) and "never". You must set this directive to "always" in + # order to initiate tracing. + Oboe::Config[:tracing_mode] = 'through' + + # You can remove the following line in production to allow for + # auto sampling or managing the sample rate through the TraceView portal. + # Oboe::Config[:sample_rate] = 1000000 + + ... + + class App < Grape::API + use Oboe::Rack + end +``` + +Note: If you're on Heroku, you don't need to set `tracing_mode` or `sample_rate` - they will be automatically configured. + +Make sure that the oboe gem is loaded _after_ Grape either by listing `gem 'oboe'` after Grape in your Gemfile or calling the `require 'oboe'` directive after Grape is loaded. + +You must explicitly tell your Grape application to use Oboe::Rack for tracing to occur. + ## Custom Ruby Scripts & Applications The oboe gem has the ability to instrument any arbitrary Ruby application or script as long as the gem is initialized with the manual methods: ```ruby @@ -122,11 +154,11 @@ From here, you can use the Tracing API to instrument areas of code using `Oboe::API.start_trace` (see below). If you prefer to instead dive directly into code, take a look at [this example](https://gist.github.com/pglombardo/8550713) of an instrumented Ruby script. ## Other -You can send deploy notifications to TraceView and have the events show up on your dashboard. See: [Capistrano Deploy Notifications with tlog](https://support.tv.appneta.com/support/solutions/articles/86389-capistrano-deploy-notifications-with-tlog). +You can send deploy notifications to TraceView and have the events show up on your dashboard. See: [Capistrano Deploy Notifications with tlog](https://support.appneta.com/cloud/capistrano-deploy-notifications-tlog) # Custom Tracing ## The Tracing API @@ -177,15 +209,15 @@ # call syntax: profile_method <method>, <profile_name> profile_method :processor, 'processor' end ``` -This example demonstrates method profiling of instance methods. Class methods are profiled slightly differently. See the TraceView [documentation portal](https://support.tv.appneta.com/support/solutions/articles/86395-ruby-instrumentation-public-api) for full details. +This example demonstrates method profiling of instance methods. Class methods are profiled slightly differently. See the TraceView [documentation portal](https://support.appneta.com/cloud/ruby-custom) for full details. # Support -If you find a bug or would like to request an enhancement, feel free to file an issue. For all other support requests, see our [support portal](https://support.tv.appneta.com/) or on IRC @ #appneta on [Freenode](http://freenode.net/). +If you find a bug or would like to request an enhancement, feel free to file an issue. For all other support requests, see our [support portal](https://support.appneta.com/cloud) or on IRC @ #appneta on [Freenode](http://freenode.net/). # Contributing You are obviously a person of great sense and intelligence. We happily appreciate all contributions to the oboe gem whether it is documentation, a bug fix, new instrumentation for a library or framework or anything else we haven't thought of. @@ -323,10 +355,10 @@ >$ dpkg -l | grep liboboe ii liboboe-dev 1.1.1-precise1 Tracelytics common library -- development files ii liboboe0 1.1.1-precise1 Tracelytics common library ``` -See [Installing Base Packages on Debian and Ubuntu](https://support.tv.appneta.com/support/solutions/articles/86359-installing-base-packages-on-debian-and-ubuntu) in the Knowledge Base for details. Our hacker extraordinaire [Rob Salmond](https://github.com/rsalmond) from the support team has even gotten these packages to [run on Gentoo](http://www.appneta.com/blog/unsupported-doesnt-work/)! +See [Installing Base Packages on Debian and Ubuntu](https://support.appneta.com/cloud/installing-traceview) in the Knowledge Base for details. Our hacker extraordinaire [Rob Salmond](https://github.com/rsalmond) from the support team has even gotten these packages to [run on Gentoo](http://www.appneta.com/blog/unsupported-doesnt-work/)! To see the code related to the C extension, take a look at `ext/oboe_metal/extconf.rb` for details. You can read more about Ruby gems with C extensions in the [Rubygems Guides](http://guides.rubygems.org/gems-with-extensions/).