oboe 2.7.12.1 → 2.7.13.3

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: dfce26e81a5f2b277f2e9f78c53fa1d75b9fdd61
4
- data.tar.gz: 1429c9511ce4eda6e8a8e98a8dcd7a4769c7ecc0
3
+ metadata.gz: dea66d9392e02f4dc3f95f94255d936d05538728
4
+ data.tar.gz: 282b194a123ef6b47d67a7175c2517a73462c9fa
5
5
  SHA512:
6
- metadata.gz: 0c8852cb34616557c3ab272200aa8f74c545f828976e6056678823729f3aa2231f1b98673eb963c3e05db0df9208b52985b40b6d2f216e5c704be9b5d2345705
7
- data.tar.gz: 0901f4acbde6e5f24f0b10744d4bb12b4bf10eee5464969d23e93f4d874705fbd0d85f463cc36f4a24375426ba8563b2ff82909e206c2a94e79a9916c4a591d4
6
+ metadata.gz: 8d85ed382fbff8eba52ec81a4715aeab9dcf5cdee7f9b6b980edd25bbe10f5033004a07d3000f6335577f67b135600c0c79c3ee9969235f71ac6596e3d99b15f
7
+ data.tar.gz: da5b4204b7069874eee538fe2422172ba6cbe8063cfc67f27b3aa524a45df71fe05e3042a77162add80349830d7c1cc7e52c3e4c3d21c7960c65f4aeafc8f7b3
@@ -4,6 +4,29 @@ https://github.com/appneta/oboe-ruby/releases
4
4
 
5
5
  Dates in this file are in the format MM/DD/YYYY.
6
6
 
7
+ # oboe 2.7.13.3
8
+
9
+ This build release includes:
10
+
11
+ * Protect against unknown data type reporting: #106
12
+
13
+ Pushed to Rubygems:
14
+
15
+ https://rubygems.org/gems/oboe/versions/2.7.13.3
16
+ https://rubygems.org/gems/oboe/versions/2.7.13.3-java
17
+
18
+ # oboe 2.7.12.1
19
+
20
+ This patch release includes:
21
+
22
+ * Report values using BSON data types: #103
23
+ * Avoid double tracing rack layer for nested apps: #104
24
+
25
+ Pushed to Rubygems:
26
+
27
+ https://rubygems.org/gems/oboe/versions/2.7.12.1
28
+ https://rubygems.org/gems/oboe/versions/2.7.12.1-java
29
+
7
30
  # oboe 2.7.11.1
8
31
 
9
32
  This patch release includes:
data/Gemfile CHANGED
@@ -4,7 +4,9 @@ group :development, :test do
4
4
  gem 'minitest'
5
5
  gem 'minitest-reporters'
6
6
  gem 'rack-test'
7
- gem 'appraisal'
7
+ if RUBY_VERSION > '1.8.7'
8
+ gem 'appraisal'
9
+ end
8
10
  end
9
11
 
10
12
  group :development do
data/README.md CHANGED
@@ -5,7 +5,7 @@ The oboe gem provides AppNeta [TraceView](http://www.appneta.com/application-per
5
5
 
6
6
  ![Ruby TraceView](https://s3.amazonaws.com/pglombardo/oboe-ruby-header.png)
7
7
 
8
- 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)
8
+ 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://docs.appneta.com/ruby-instrumentation-supported-components)
9
9
 
10
10
  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/).
11
11
 
@@ -45,7 +45,7 @@ No special steps are needed to instrument Ruby on Rails. Once part of the bundl
45
45
 
46
46
  ### The Install Generator
47
47
 
48
- 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)
48
+ 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://docs.appneta.com/configuring-ruby-instrumentation)
49
49
 
50
50
  To run the install generator run:
51
51
 
@@ -149,7 +149,7 @@ Once inside of the `Oboe::API.start_trace` block, performance metrics will be au
149
149
 
150
150
  ## Other
151
151
 
152
- 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)
152
+ You can send deploy notifications to TraceView and have the events show up on your dashboard. See: [Capistrano Deploy Notifications with tlog](https://docs.appneta.com/capistrano-deploy-notifications-tlog)
153
153
 
154
154
  # Custom Tracing
155
155
 
@@ -204,11 +204,11 @@ class Engine
204
204
  end
205
205
  ```
206
206
 
207
- 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.
207
+ This example demonstrates method profiling of instance methods. Class methods are profiled slightly differently. See the TraceView [documentation portal](https://docs.appneta.com/custom-ruby-instrumentation) for full details.
208
208
 
209
209
  # Support
210
210
 
211
- 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/).
211
+ 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://tickets.appneta.com) or on IRC @ #appneta on [Freenode](http://freenode.net/).
212
212
 
213
213
  # Contributing
214
214
 
@@ -222,7 +222,7 @@ We at AppNeta have made a large effort to expose as much technical information a
222
222
 
223
223
  * The [TraceView blog](http://www.appneta.com/blog) has a constant stream of great technical articles. (See [A Gentle X-Trace Introduction](http://www.appneta.com/blog/x-trace-introduction/) for details on the basic methodology that TraceView uses to gather structured performance data across hosts and stacks.)
224
224
 
225
- * The [TraceView Knowledge Base](https://support.tv.appneta.com) has a large collection of technical articles or, if needed, you can submit a support request directly to the team.
225
+ * The [TraceView Documentation Portal](https://docs.appneta.com/ruby) has a large collection of technical articles or, if needed, you can [submit a support request](https://tickets.appneta.com) directly to the team.
226
226
 
227
227
  * You can also reach the TraceView team on our IRC channel #appneta on freenode.
228
228
 
@@ -255,7 +255,7 @@ Here, I'll use a stripped down version of the Dalli instrumentation (`lib/oboe/i
255
255
 
256
256
  The Dalli gem nicely routes all memcache operations through a single `perform` operation. Wrapping this method allows us to capture all Dalli operations called by an application.
257
257
 
258
- First, we define a module (Oboe::Inst::Dalli) and our own custom `perform_with_oboe` method that we will use as a wrapper around Dalli's `perform` method. We also declare an `included` method which automatically gets called when this module is included by another. See ['included' Ruby reference documentation](http://apidock.com/ruby/Module/included).
258
+ First, we define a module (Oboe::Inst::Dalli) and our own custom `perform_with_oboe` method that we will use as a wrapper around Dalli's `perform` method. We also declare an `included` method which automatically gets called when this module is included by another. See ['included' Ruby reference documentation](https://www.omniref.com/ruby/2.2.1/symbols/Module/included).
259
259
 
260
260
  ```ruby
261
261
  module Oboe
@@ -350,7 +350,7 @@ ii liboboe-dev 1.1.1-precise1 Tracelytics common library -- development f
350
350
  ii liboboe0 1.1.1-precise1 Tracelytics common library
351
351
  ```
352
352
 
353
- 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/)!
353
+ See [Installing Base Packages on Debian and Ubuntu](https://docs.appneta.com/installation-overview) 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/)!
354
354
 
355
355
  To see the code related to the C extension, take a look at `ext/oboe_metal/extconf.rb` for details.
356
356
 
data/Rakefile CHANGED
@@ -3,7 +3,10 @@
3
3
  require 'rubygems'
4
4
  require 'bundler/setup'
5
5
  require 'rake/testtask'
6
- require 'appraisal'
6
+
7
+ if RUBY_VERSION > '1.8.7'
8
+ require 'appraisal'
9
+ end
7
10
 
8
11
  Rake::TestTask.new do |t|
9
12
  t.libs << "test"
@@ -181,17 +181,22 @@ module Oboe
181
181
  Oboe.layer = nil if label == 'exit'
182
182
 
183
183
  opts.each do |k, v|
184
+ value = nil
185
+
184
186
  if valid_key? k
185
- if [Class, Module, Symbol, Array, Hash,
186
- TrueClass, FalseClass].include?(v.class)
187
- value = v.to_s
187
+ if [Integer, Float, Fixnum, NilClass, String].include?(v.class)
188
+ value = v
188
189
  elsif v.class == Set
189
190
  value = v.to_a.to_s
190
191
  else
191
- value = v
192
+ value = v.to_s if v.respond_to?(:to_s)
192
193
  end
193
194
 
194
- event.addInfo(k.to_s, value)
195
+ begin
196
+ event.addInfo(k.to_s, value)
197
+ rescue ArgumentError => e
198
+ Oboe.logger.debug "[oboe/debug] Couldn't add event KV: #{k.to_s} => #{v.class}"
199
+ end
195
200
  end
196
201
  end if !opts.nil? && opts.any?
197
202
 
@@ -8,8 +8,8 @@ module Oboe
8
8
  module Version
9
9
  MAJOR = 2
10
10
  MINOR = 7
11
- PATCH = 12
12
- BUILD = 1
11
+ PATCH = 13
12
+ BUILD = 3
13
13
 
14
14
  STRING = [MAJOR, MINOR, PATCH, BUILD].compact.join('.')
15
15
  end
@@ -54,7 +54,7 @@ describe Oboe::Inst::FaradayConnection do
54
54
 
55
55
  it 'should trace a Faraday request' do
56
56
  Oboe::API.start_trace('faraday_test') do
57
- conn = Faraday.new(:url => 'http://www.curlmyip.com') do |faraday|
57
+ conn = Faraday.new(:url => 'http://www.curlmyip.de') do |faraday|
58
58
  faraday.adapter Faraday.default_adapter # make requests with Net::HTTP
59
59
  end
60
60
  response = conn.get '/?q=ruby_test_suite'
@@ -71,7 +71,7 @@ describe Oboe::Inst::FaradayConnection do
71
71
  traces[3]['Layer'].must_equal 'net-http'
72
72
  traces[3]['IsService'].must_equal 1
73
73
  traces[3]['RemoteProtocol'].must_equal 'HTTP'
74
- traces[3]['RemoteHost'].must_equal 'www.curlmyip.com'
74
+ traces[3]['RemoteHost'].must_equal 'www.curlmyip.de'
75
75
  traces[3]['ServiceArg'].must_equal '/?q=ruby_test_suite'
76
76
  traces[3]['HTTPMethod'].must_equal 'GET'
77
77
  traces[3]['HTTPStatus'].must_equal '200'
@@ -88,7 +88,7 @@ describe Oboe::Inst::FaradayConnection do
88
88
 
89
89
  it 'should trace a Faraday alternate request method' do
90
90
  Oboe::API.start_trace('faraday_test') do
91
- Faraday.get('http://www.curlmyip.com', {:a => 1})
91
+ Faraday.get('http://www.curlmyip.de', {:a => 1})
92
92
  end
93
93
 
94
94
  traces = get_all_traces
@@ -102,7 +102,7 @@ describe Oboe::Inst::FaradayConnection do
102
102
  traces[3]['Layer'].must_equal 'net-http'
103
103
  traces[3]['IsService'].must_equal 1
104
104
  traces[3]['RemoteProtocol'].must_equal 'HTTP'
105
- traces[3]['RemoteHost'].must_equal 'www.curlmyip.com'
105
+ traces[3]['RemoteHost'].must_equal 'www.curlmyip.de'
106
106
  traces[3]['ServiceArg'].must_equal '/?a=1'
107
107
  traces[3]['HTTPMethod'].must_equal 'GET'
108
108
  traces[3]['HTTPStatus'].must_equal '200'
@@ -119,7 +119,7 @@ describe Oboe::Inst::FaradayConnection do
119
119
 
120
120
  it 'should trace a Faraday with an alternate adapter' do
121
121
  Oboe::API.start_trace('faraday_test') do
122
- conn = Faraday.new(:url => 'http://www.curlmyip.com') do |faraday|
122
+ conn = Faraday.new(:url => 'http://www.curlmyip.de') do |faraday|
123
123
  faraday.adapter :excon
124
124
  end
125
125
  response = conn.get '/?q=1'
@@ -135,7 +135,7 @@ describe Oboe::Inst::FaradayConnection do
135
135
 
136
136
  traces[2]['IsService'].must_equal 1
137
137
  traces[2]['RemoteProtocol'].must_equal 'HTTP'
138
- traces[2]['RemoteHost'].must_equal 'www.curlmyip.com'
138
+ traces[2]['RemoteHost'].must_equal 'www.curlmyip.de'
139
139
  traces[2]['ServiceArg'].must_equal '/?q=1'
140
140
  traces[2]['HTTPMethod'].downcase.must_equal 'get'
141
141
 
@@ -48,7 +48,7 @@ describe Oboe::Inst do
48
48
 
49
49
  it "should trace a Net::HTTP request" do
50
50
  Oboe::API.start_trace('net-http_test', '', {}) do
51
- uri = URI('http://www.curlmyip.com')
51
+ uri = URI('http://www.curlmyip.de')
52
52
  http = Net::HTTP.new(uri.host, uri.port)
53
53
  http.get('/?q=1').read_body
54
54
  end
@@ -61,7 +61,7 @@ describe Oboe::Inst do
61
61
  traces[1]['Layer'].must_equal 'net-http'
62
62
  traces[2]['IsService'].must_equal 1
63
63
  traces[2]['RemoteProtocol'].must_equal "HTTP"
64
- traces[2]['RemoteHost'].must_equal "www.curlmyip.com"
64
+ traces[2]['RemoteHost'].must_equal "www.curlmyip.de"
65
65
  traces[2]['ServiceArg'].must_equal "/?q=1"
66
66
  traces[2]['HTTPMethod'].must_equal "GET"
67
67
  traces[2]['HTTPStatus'].must_equal "200"
@@ -275,7 +275,7 @@ describe Oboe::Inst::TyphoeusRequestOps do
275
275
 
276
276
  first_request = Typhoeus::Request.new("www.appneta.com/products/traceview/")
277
277
  second_request = Typhoeus::Request.new("www.appneta.com/products/")
278
- third_request = Typhoeus::Request.new("www.curlmyip.com")
278
+ third_request = Typhoeus::Request.new("www.curlmyip.de")
279
279
 
280
280
  hydra.queue first_request
281
281
  hydra.queue second_request
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: oboe
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.7.12.1
4
+ version: 2.7.13.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Peter Giacomo Lombardo
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2015-03-03 00:00:00.000000000 Z
12
+ date: 2015-03-11 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: json
@@ -224,4 +224,3 @@ test_files:
224
224
  - test/support/config_test.rb
225
225
  - test/support/xtrace_test.rb
226
226
  - test/support/dnt_test.rb
227
- has_rdoc: