oboe 2.6.8 → 2.7.0.3

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.
@@ -1,6 +1,6 @@
1
1
  require 'minitest_helper'
2
2
 
3
- describe Oboe::Inst::Dalli do
3
+ describe Oboe::Inst::Dalli < ::MiniTest::Spec do
4
4
  before do
5
5
  clear_all_traces
6
6
  @dc = Dalli::Client.new
@@ -1,6 +1,6 @@
1
1
  require 'minitest_helper'
2
2
 
3
- if RUBY_VERSION < '2.0'
3
+ if RUBY_VERSION < '2.0' and not defined?(JRUBY_VERSION)
4
4
  describe Oboe::Inst::Memcached do
5
5
  require 'memcached'
6
6
  require 'memcached/rails'
@@ -1,6 +1,6 @@
1
1
  require 'minitest_helper'
2
2
 
3
- if RUBY_VERSION >= '1.9.3' and (defined?(::Moped::VERSION) and ::Moped::VERSION < "2.0")
3
+ if RUBY_VERSION >= '1.9.3'
4
4
  # Moped is tested against MRI 1.9.3, 2.0.0, and JRuby (1.9).
5
5
 
6
6
  describe Oboe::Inst::Moped do
@@ -47,6 +47,7 @@ class RackTestApp < Minitest::Test
47
47
  assert traces[0].has_key?('SampleSource')
48
48
 
49
49
  assert last_response.ok?
50
+
50
51
  assert last_response['X-Trace']
51
52
  end
52
53
 
@@ -60,5 +61,13 @@ class RackTestApp < Minitest::Test
60
61
 
61
62
  assert last_response.status == 404
62
63
  end
64
+
65
+ def test_must_return_xtrace_header
66
+ clear_all_traces
67
+ get "/lobster"
68
+ xtrace = last_response['X-Trace']
69
+ assert xtrace
70
+ assert Oboe::XTrace.valid?(xtrace)
71
+ end
63
72
  end
64
73
 
@@ -1,3 +1,4 @@
1
+ require "minitest/spec"
1
2
  require "minitest/autorun"
2
3
  require "minitest/reporters"
3
4
 
@@ -14,6 +15,10 @@ unless RUBY_VERSION =~ /^1.8/
14
15
  MiniTest::Reporters.use! MiniTest::Reporters::SpecReporter.new
15
16
  end
16
17
 
18
+ if defined?(JRUBY_VERSION)
19
+ ENV['JAVA_OPTS'] = "-J-javaagent:/usr/local/tracelytics/tracelyticsagent.jar"
20
+ end
21
+
17
22
  require 'rubygems'
18
23
  require 'bundler'
19
24
 
@@ -38,7 +43,7 @@ Oboe.logger.level = Logger::DEBUG
38
43
  # Truncates the trace output file to zero
39
44
  #
40
45
  def clear_all_traces
41
- File.truncate($trace_file, 0)
46
+ Oboe::Reporter.clear_all_traces
42
47
  end
43
48
 
44
49
  ##
@@ -47,24 +52,7 @@ end
47
52
  # Retrieves all traces written to the trace file
48
53
  #
49
54
  def get_all_traces
50
- io = File.open($trace_file, "r")
51
- contents = io.readlines(nil)
52
-
53
- return contents if contents.empty?
54
-
55
- s = StringIO.new(contents[0])
56
-
57
- traces = []
58
-
59
- until s.eof?
60
- if ::BSON.respond_to? :read_bson_document
61
- traces << BSON.read_bson_document(s)
62
- else
63
- traces << BSON::Document.from_bson(s)
64
- end
65
- end
66
-
67
- traces
55
+ Oboe::Reporter.get_all_traces
68
56
  end
69
57
 
70
58
  ##
@@ -100,6 +88,7 @@ end
100
88
  # has he specified key
101
89
  #
102
90
  def layer_has_key(traces, layer, key)
91
+ return false if traces.empty?
103
92
  has_key = false
104
93
 
105
94
  traces.each do |t|
@@ -120,6 +109,7 @@ end
120
109
  # (regardless of event type) doesn't have the specified key
121
110
  #
122
111
  def layer_doesnt_have_key(traces, layer, key)
112
+ return false if traces.empty?
123
113
  has_key = false
124
114
 
125
115
  traces.each do |t|
@@ -3,39 +3,44 @@ require 'rack/test'
3
3
  require 'rack/lobster'
4
4
  require 'oboe/inst/rack'
5
5
 
6
- Oboe::Config[:tracing_mode] = 'always'
7
- Oboe::Config[:sample_rate] = 1e6
8
-
9
- class RackTestApp < Minitest::Test
10
- include Rack::Test::Methods
11
-
12
- def app
13
- @app = Rack::Builder.new {
14
- use Rack::CommonLogger
15
- use Rack::ShowExceptions
16
- use Oboe::Rack
17
- map "/lobster" do
18
- use Rack::Lint
19
- run Rack::Lobster.new
20
- end
21
- }
22
- end
6
+ unless defined?(JRUBY_VERSION)
7
+ Oboe::Config[:tracing_mode] = 'always'
8
+ Oboe::Config[:sample_rate] = 1e6
9
+
10
+ class RackTestApp < Minitest::Test
11
+ include Rack::Test::Methods
12
+
13
+ def app
14
+ @app = Rack::Builder.new {
15
+ use Rack::CommonLogger
16
+ use Rack::ShowExceptions
17
+ use Oboe::Rack
18
+ map "/lobster" do
19
+ use Rack::Lint
20
+ run Rack::Lobster.new
21
+ end
22
+ }
23
+ end
23
24
 
24
- def test_localset_sample_source
25
- clear_all_traces
25
+ def test_localset_sample_source
26
+ # We make an initial call here which will force the oboe gem to retrieve
27
+ # the sample_rate and sample_source from liboboe (via sample? method)
28
+ get "/lobster"
26
29
 
27
- get "/lobster"
30
+ clear_all_traces
28
31
 
29
- traces = get_all_traces
30
- traces.count.must_equal 3
32
+ get "/lobster"
31
33
 
32
- validate_outer_layers(traces, 'rack')
34
+ traces = get_all_traces
35
+ traces.count.must_equal 3
33
36
 
34
- kvs = {}
35
- kvs["SampleRate"] = "1000000"
36
- kvs["SampleSource"] = OBOE_SAMPLE_RATE_SOURCE_FILE.to_s
37
- validate_event_keys(traces[0], kvs)
37
+ validate_outer_layers(traces, 'rack')
38
38
 
39
+ kvs = {}
40
+ kvs["SampleRate"] = "1000000"
41
+ kvs["SampleSource"] = OBOE_SAMPLE_RATE_SOURCE_FILE.to_s
42
+ validate_event_keys(traces[0], kvs)
43
+
44
+ end
39
45
  end
40
46
  end
41
-
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.6.8
4
+ version: 2.7.0.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: 2014-07-31 00:00:00.000000000 Z
12
+ date: 2014-08-20 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: json
@@ -39,7 +39,8 @@ dependencies:
39
39
  - - ">="
40
40
  - !ruby/object:Gem::Version
41
41
  version: '0'
42
- description: The oboe gem provides TraceView instrumentation for Ruby and Ruby frameworks.
42
+ description: The oboe gem provides TraceView instrumentation for MRI Ruby, JRuby and
43
+ related frameworks.
43
44
  email: traceviewsupport@appneta.com
44
45
  executables: []
45
46
  extensions:
@@ -52,7 +53,6 @@ files:
52
53
  - Appraisals
53
54
  - CHANGELOG.md
54
55
  - Gemfile
55
- - Gemfile.lock
56
56
  - LICENSE
57
57
  - README.md
58
58
  - Rakefile
@@ -1,114 +0,0 @@
1
- PATH
2
- remote: .
3
- specs:
4
- oboe (2.6.7)
5
- json
6
-
7
- GEM
8
- remote: https://rubygems.org/
9
- specs:
10
- ansi (1.4.3)
11
- appraisal (1.0.0)
12
- bundler
13
- rake
14
- thor (>= 0.14.0)
15
- bson (1.10.2)
16
- builder (3.2.2)
17
- byebug (3.1.2)
18
- columnize (~> 0.8)
19
- debugger-linecache (~> 1.2)
20
- cassandra (0.23.0)
21
- json
22
- rake
23
- simple_uuid (~> 0.3)
24
- thrift_client (~> 0.7, < 0.9)
25
- coderay (1.1.0)
26
- columnize (0.8.9)
27
- dalli (2.7.2)
28
- debugger (1.6.8)
29
- columnize (>= 0.3.1)
30
- debugger-linecache (~> 1.2.0)
31
- debugger-ruby_core_source (~> 1.3.5)
32
- debugger-linecache (1.2.0)
33
- debugger-ruby_core_source (1.3.5)
34
- json (1.8.1)
35
- linecache (0.46)
36
- rbx-require-relative (> 0.0.4)
37
- memcache-client (1.8.5)
38
- memcached (1.7.2)
39
- method_source (0.8.2)
40
- minitest (5.4.0)
41
- minitest-reporters (1.0.5)
42
- ansi
43
- builder
44
- minitest (>= 5.0)
45
- ruby-progressbar
46
- mongo (1.3.1)
47
- bson (>= 1.3.1)
48
- mono_logger (1.1.0)
49
- multi_json (1.10.1)
50
- perftools.rb (2.0.1)
51
- pry (0.10.0)
52
- coderay (~> 1.1.0)
53
- method_source (~> 0.8.1)
54
- slop (~> 3.4)
55
- rack (1.5.2)
56
- rack-protection (1.5.3)
57
- rack
58
- rack-test (0.6.2)
59
- rack (>= 1.0)
60
- rake (10.3.2)
61
- rbx-require-relative (0.0.9)
62
- redis (3.1.0)
63
- redis-namespace (1.5.0)
64
- redis (~> 3.0, >= 3.0.4)
65
- resque (1.25.2)
66
- mono_logger (~> 1.0)
67
- multi_json (~> 1.0)
68
- redis-namespace (~> 1.3)
69
- sinatra (>= 0.9.2)
70
- vegas (~> 0.1.2)
71
- ruby-debug (0.10.4)
72
- columnize (>= 0.1)
73
- ruby-debug-base (~> 0.10.4.0)
74
- ruby-debug-base (0.10.4)
75
- linecache (>= 0.3)
76
- ruby-progressbar (1.5.1)
77
- simple_uuid (0.4.0)
78
- sinatra (1.4.5)
79
- rack (~> 1.4)
80
- rack-protection (~> 1.4)
81
- tilt (~> 1.3, >= 1.3.4)
82
- slop (3.5.0)
83
- thor (0.17.0)
84
- thrift (0.8.0)
85
- thrift_client (0.8.4)
86
- thrift (~> 0.8.0)
87
- tilt (1.4.1)
88
- vegas (0.1.11)
89
- rack (>= 1.0.0)
90
-
91
- PLATFORMS
92
- ruby
93
-
94
- DEPENDENCIES
95
- appraisal
96
- bson (= 1.10.2)
97
- byebug
98
- cassandra
99
- dalli
100
- debugger
101
- memcache-client
102
- memcached (= 1.7.2)
103
- minitest
104
- minitest-reporters
105
- mongo
106
- oboe!
107
- perftools.rb
108
- pry
109
- rack-test
110
- rake
111
- redis
112
- resque
113
- ruby-debug
114
- sinatra