oboe 2.7.12.1-java → 2.7.13.3-java
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/CHANGELOG.md +23 -0
- data/Gemfile +3 -1
- data/README.md +8 -8
- data/Rakefile +4 -1
- data/lib/oboe/api/logging.rb +10 -5
- data/lib/oboe/version.rb +2 -2
- data/test/instrumentation/faraday_test.rb +6 -6
- data/test/instrumentation/http_test.rb +2 -2
- data/test/instrumentation/typhoeus_test.rb +1 -1
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 8b922b6f6bbabd44a5d5abecc612c3ba39222b09
|
4
|
+
data.tar.gz: 911216302075cf8abbcfbb984659ec1398c8b037
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 13b84ef48cc25a555c53a028ebeb0f785a4b75804bf7c0847ac9a5a7363586a99889e6870ccaa1e0de6cc118db6d64689da067403c1343092564d9189db23299
|
7
|
+
data.tar.gz: 628c5bcf3b0966f09acb10bc08d2ab789e8a32f88a8f9b7291dd48d064fad2c27f33baceca20a33a85d2f9debf19da24d5682ff09c36f3b5f9e17521eefa7300
|
data/CHANGELOG.md
CHANGED
@@ -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
data/README.md
CHANGED
@@ -5,7 +5,7 @@ The oboe gem provides AppNeta [TraceView](http://www.appneta.com/application-per
|
|
5
5
|
|
6
6
|

|
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://
|
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://
|
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://
|
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://
|
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://
|
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
|
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](
|
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://
|
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
data/lib/oboe/api/logging.rb
CHANGED
@@ -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 [
|
186
|
-
|
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
|
-
|
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
|
|
data/lib/oboe/version.rb
CHANGED
@@ -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.
|
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.
|
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.
|
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.
|
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.
|
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.
|
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.
|
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.
|
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.
|
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.
|
4
|
+
version: 2.7.13.3
|
5
5
|
platform: java
|
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-
|
12
|
+
date: 2015-03-11 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: json
|