oboe 2.6.2.0 → 2.6.3.0
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/.gitignore +0 -1
- data/CHANGELOG.md +12 -0
- data/Gemfile +1 -1
- data/Gemfile.lock +177 -0
- data/lib/method_profiling.rb +3 -3
- data/lib/oboe/api/logging.rb +2 -2
- data/lib/oboe/frameworks/rails/inst/action_view.rb +2 -2
- data/lib/oboe/frameworks/rails/inst/action_view_2x.rb +1 -1
- data/lib/oboe/frameworks/rails/inst/action_view_30.rb +2 -2
- data/lib/oboe/inst/rack.rb +6 -4
- data/lib/oboe/util.rb +29 -2
- data/lib/oboe/version.rb +1 -1
- data/lib/oboe_metal.rb +19 -16
- data/test/frameworks/apps/padrino_simple.rb +2 -0
- data/test/instrumentation/rack_test.rb +12 -4
- data/test/minitest_helper.rb +2 -0
- data/test/support/{srv1_localset_test.rb → liboboe_settings_test.rb} +1 -1
- metadata +5 -4
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA1:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 849242c14c945d9a5687e47d042729a919a29589
|
|
4
|
+
data.tar.gz: 3b21c37c48ea8b1813d9268b2c0acc10de8b4a34
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: cc0243bcd66501f11e95eae0401b94721881e29baabf218286a5f78b440db4426b20a8e4ea3c0b91aac3bd46452b5943c25a7d841f1a0d44e7351451793cff0c
|
|
7
|
+
data.tar.gz: 5ccdaa4436264e9d2775909dfc4d9a8fca1dae95ba98e112339061df7e6c6342653796110a02508237bc50d70ad26991dc6ced62e952306f68f4dcaebba7b59a
|
data/.gitignore
CHANGED
data/CHANGELOG.md
CHANGED
|
@@ -1,3 +1,15 @@
|
|
|
1
|
+
|
|
2
|
+
# oboe 2.6.2.0 (03/24/14)
|
|
3
|
+
|
|
4
|
+
* This patch release improves webserver detection on Heroku and adds in some c extension protections. A oboe-heroku gem release will follow this release.
|
|
5
|
+
|
|
6
|
+
# oboe 2.6.1.0 (03/12/14)
|
|
7
|
+
|
|
8
|
+
This is a patch release to address "Unsupported digest algorithm (SHA256)" occurring under certain cases on Heroku. A oboe-heroku gem release will follow this release.
|
|
9
|
+
|
|
10
|
+
* Support delayed Reporter Initialization for Forking Webservers
|
|
11
|
+
* README syntax fixes
|
|
12
|
+
|
|
1
13
|
# oboe 2.5.0.7 (02/13/14)
|
|
2
14
|
|
|
3
15
|
* Added new Redis redis-rb gem (>= 3.0.0) instrumentation
|
data/Gemfile
CHANGED
data/Gemfile.lock
ADDED
|
@@ -0,0 +1,177 @@
|
|
|
1
|
+
PATH
|
|
2
|
+
remote: .
|
|
3
|
+
specs:
|
|
4
|
+
oboe (2.6.3.dev8)
|
|
5
|
+
json
|
|
6
|
+
|
|
7
|
+
GEM
|
|
8
|
+
remote: https://rubygems.org/
|
|
9
|
+
specs:
|
|
10
|
+
activesupport (3.2.17)
|
|
11
|
+
i18n (~> 0.6, >= 0.6.4)
|
|
12
|
+
multi_json (~> 1.0)
|
|
13
|
+
ansi (1.4.3)
|
|
14
|
+
appraisal (1.0.0)
|
|
15
|
+
bundler
|
|
16
|
+
rake
|
|
17
|
+
thor (>= 0.14.0)
|
|
18
|
+
archive-tar-minitar (0.5.2)
|
|
19
|
+
bson (1.9.2)
|
|
20
|
+
bson_ext (1.9.2)
|
|
21
|
+
bson (~> 1.9.2)
|
|
22
|
+
builder (3.2.2)
|
|
23
|
+
byebug (2.7.0)
|
|
24
|
+
columnize (~> 0.3)
|
|
25
|
+
debugger-linecache (~> 1.2)
|
|
26
|
+
cassandra (0.23.0)
|
|
27
|
+
json
|
|
28
|
+
rake
|
|
29
|
+
simple_uuid (~> 0.3)
|
|
30
|
+
thrift_client (~> 0.7, < 0.9)
|
|
31
|
+
coderay (1.1.0)
|
|
32
|
+
columnize (0.3.6)
|
|
33
|
+
dalli (2.7.0)
|
|
34
|
+
debugger-linecache (1.2.0)
|
|
35
|
+
hashie (2.0.5)
|
|
36
|
+
http_router (0.11.1)
|
|
37
|
+
rack (>= 1.0.0)
|
|
38
|
+
url_mount (~> 0.2.1)
|
|
39
|
+
i18n (0.6.9)
|
|
40
|
+
json (1.8.1)
|
|
41
|
+
linecache (0.46)
|
|
42
|
+
rbx-require-relative (> 0.0.4)
|
|
43
|
+
linecache19 (0.5.12)
|
|
44
|
+
ruby_core_source (>= 0.1.4)
|
|
45
|
+
mail (2.5.4)
|
|
46
|
+
mime-types (~> 1.16)
|
|
47
|
+
treetop (~> 1.4.8)
|
|
48
|
+
memcache-client (1.8.5)
|
|
49
|
+
method_source (0.8.2)
|
|
50
|
+
mime-types (1.25.1)
|
|
51
|
+
minitest (5.3.2)
|
|
52
|
+
minitest-reporters (1.0.2)
|
|
53
|
+
ansi
|
|
54
|
+
builder
|
|
55
|
+
minitest (>= 5.0)
|
|
56
|
+
powerbar
|
|
57
|
+
moneta (0.7.20)
|
|
58
|
+
mongo (1.9.2)
|
|
59
|
+
bson (~> 1.9.2)
|
|
60
|
+
mono_logger (1.1.0)
|
|
61
|
+
moped (1.5.2)
|
|
62
|
+
multi_json (1.9.2)
|
|
63
|
+
padrino (0.12.0)
|
|
64
|
+
padrino-admin (= 0.12.0)
|
|
65
|
+
padrino-cache (= 0.12.0)
|
|
66
|
+
padrino-core (= 0.12.0)
|
|
67
|
+
padrino-gen (= 0.12.0)
|
|
68
|
+
padrino-helpers (= 0.12.0)
|
|
69
|
+
padrino-mailer (= 0.12.0)
|
|
70
|
+
padrino-admin (0.12.0)
|
|
71
|
+
padrino-core (= 0.12.0)
|
|
72
|
+
padrino-helpers (= 0.12.0)
|
|
73
|
+
padrino-cache (0.12.0)
|
|
74
|
+
moneta (~> 0.7.0)
|
|
75
|
+
padrino-core (= 0.12.0)
|
|
76
|
+
padrino-helpers (= 0.12.0)
|
|
77
|
+
padrino-core (0.12.0)
|
|
78
|
+
activesupport (>= 3.1)
|
|
79
|
+
http_router (~> 0.11.0)
|
|
80
|
+
rack-protection (>= 1.5.0)
|
|
81
|
+
sinatra (~> 1.4.2)
|
|
82
|
+
thor (~> 0.17.0)
|
|
83
|
+
tilt (~> 1.4.1)
|
|
84
|
+
padrino-gen (0.12.0)
|
|
85
|
+
bundler (~> 1.0)
|
|
86
|
+
padrino-core (= 0.12.0)
|
|
87
|
+
padrino-helpers (0.12.0)
|
|
88
|
+
i18n (~> 0.6, >= 0.6.7)
|
|
89
|
+
padrino-core (= 0.12.0)
|
|
90
|
+
padrino-mailer (0.12.0)
|
|
91
|
+
mail (~> 2.5.3)
|
|
92
|
+
padrino-core (= 0.12.0)
|
|
93
|
+
perftools.rb (2.0.1)
|
|
94
|
+
polyglot (0.3.4)
|
|
95
|
+
powerbar (1.0.11)
|
|
96
|
+
ansi (~> 1.4.0)
|
|
97
|
+
hashie (>= 1.1.0)
|
|
98
|
+
pry (0.9.12.6)
|
|
99
|
+
coderay (~> 1.0)
|
|
100
|
+
method_source (~> 0.8)
|
|
101
|
+
slop (~> 3.4)
|
|
102
|
+
rack (1.5.2)
|
|
103
|
+
rack-protection (1.5.2)
|
|
104
|
+
rack
|
|
105
|
+
rack-test (0.6.2)
|
|
106
|
+
rack (>= 1.0)
|
|
107
|
+
rake (10.2.2)
|
|
108
|
+
rbx-require-relative (0.0.9)
|
|
109
|
+
redis (3.0.7)
|
|
110
|
+
redis-namespace (1.4.1)
|
|
111
|
+
redis (~> 3.0.4)
|
|
112
|
+
resque (1.25.2)
|
|
113
|
+
mono_logger (~> 1.0)
|
|
114
|
+
multi_json (~> 1.0)
|
|
115
|
+
redis-namespace (~> 1.3)
|
|
116
|
+
sinatra (>= 0.9.2)
|
|
117
|
+
vegas (~> 0.1.2)
|
|
118
|
+
ruby-debug (0.10.4)
|
|
119
|
+
columnize (>= 0.1)
|
|
120
|
+
ruby-debug-base (~> 0.10.4.0)
|
|
121
|
+
ruby-debug-base (0.10.4)
|
|
122
|
+
linecache (>= 0.3)
|
|
123
|
+
ruby-debug-base19 (0.11.25)
|
|
124
|
+
columnize (>= 0.3.1)
|
|
125
|
+
linecache19 (>= 0.5.11)
|
|
126
|
+
ruby_core_source (>= 0.1.4)
|
|
127
|
+
ruby-debug19 (0.11.6)
|
|
128
|
+
columnize (>= 0.3.1)
|
|
129
|
+
linecache19 (>= 0.5.11)
|
|
130
|
+
ruby-debug-base19 (>= 0.11.19)
|
|
131
|
+
ruby_core_source (0.1.5)
|
|
132
|
+
archive-tar-minitar (>= 0.5.2)
|
|
133
|
+
simple_uuid (0.4.0)
|
|
134
|
+
sinatra (1.4.4)
|
|
135
|
+
rack (~> 1.4)
|
|
136
|
+
rack-protection (~> 1.4)
|
|
137
|
+
tilt (~> 1.3, >= 1.3.4)
|
|
138
|
+
slop (3.5.0)
|
|
139
|
+
thor (0.17.0)
|
|
140
|
+
thrift (0.8.0)
|
|
141
|
+
thrift_client (0.8.4)
|
|
142
|
+
thrift (~> 0.8.0)
|
|
143
|
+
tilt (1.4.1)
|
|
144
|
+
treetop (1.4.15)
|
|
145
|
+
polyglot
|
|
146
|
+
polyglot (>= 0.3.1)
|
|
147
|
+
url_mount (0.2.1)
|
|
148
|
+
rack
|
|
149
|
+
vegas (0.1.11)
|
|
150
|
+
rack (>= 1.0.0)
|
|
151
|
+
|
|
152
|
+
PLATFORMS
|
|
153
|
+
ruby
|
|
154
|
+
|
|
155
|
+
DEPENDENCIES
|
|
156
|
+
appraisal
|
|
157
|
+
bson
|
|
158
|
+
bson_ext
|
|
159
|
+
byebug
|
|
160
|
+
cassandra
|
|
161
|
+
dalli
|
|
162
|
+
memcache-client
|
|
163
|
+
minitest
|
|
164
|
+
minitest-reporters
|
|
165
|
+
mongo
|
|
166
|
+
moped
|
|
167
|
+
oboe!
|
|
168
|
+
padrino (= 0.12.0)
|
|
169
|
+
perftools.rb
|
|
170
|
+
pry
|
|
171
|
+
rack-test
|
|
172
|
+
rake
|
|
173
|
+
redis
|
|
174
|
+
resque
|
|
175
|
+
ruby-debug
|
|
176
|
+
ruby-debug19
|
|
177
|
+
sinatra
|
data/lib/method_profiling.rb
CHANGED
|
@@ -35,8 +35,8 @@ module OboeMethodProfiling
|
|
|
35
35
|
code = "def _oboe_profiled_#{method_name}(*args, &block)
|
|
36
36
|
entry_kvs = {}
|
|
37
37
|
entry_kvs['Language'] = 'ruby'
|
|
38
|
-
entry_kvs['ProfileName'] = '#{profile_name}'
|
|
39
|
-
entry_kvs['FunctionName'] = '#{method_name}'
|
|
38
|
+
entry_kvs['ProfileName'] = '#{Oboe::Util.prettify(profile_name)}'
|
|
39
|
+
entry_kvs['FunctionName'] = '#{Oboe::Util.prettify(method_name)}'
|
|
40
40
|
entry_kvs['File'] = '#{file}'
|
|
41
41
|
entry_kvs['LineNumber'] = '#{line}'
|
|
42
42
|
entry_kvs['Args'] = Oboe::API.pps(*args) if #{store_args}
|
|
@@ -48,7 +48,7 @@ module OboeMethodProfiling
|
|
|
48
48
|
|
|
49
49
|
exit_kvs = {}
|
|
50
50
|
exit_kvs['Language'] = 'ruby'
|
|
51
|
-
exit_kvs['ProfileName'] = '#{profile_name}'
|
|
51
|
+
exit_kvs['ProfileName'] = '#{Oboe::Util.prettify(profile_name)}'
|
|
52
52
|
exit_kvs['ReturnValue'] = Oboe::API.pps(ret) if #{store_return}
|
|
53
53
|
|
|
54
54
|
Oboe::Context.log(nil, 'profile_exit', exit_kvs)
|
data/lib/oboe/api/logging.rb
CHANGED
|
@@ -60,7 +60,7 @@ module Oboe
|
|
|
60
60
|
#
|
|
61
61
|
# Returns nothing.
|
|
62
62
|
def log_start(layer, xtrace, opts={})
|
|
63
|
-
return if Oboe.never?
|
|
63
|
+
return if Oboe.never? or (opts.has_key?(:URL) and ::Oboe::Util.static_asset?(opts[:URL]))
|
|
64
64
|
|
|
65
65
|
if xtrace
|
|
66
66
|
Oboe::Context.fromString(xtrace)
|
|
@@ -68,7 +68,7 @@ module Oboe
|
|
|
68
68
|
|
|
69
69
|
if Oboe.tracing?
|
|
70
70
|
log_entry(layer, opts)
|
|
71
|
-
elsif Oboe.sample?(opts.merge(:layer => layer, :xtrace => xtrace)) or opts.has_key?('Force')
|
|
71
|
+
elsif Oboe.always? and (Oboe.sample?(opts.merge(:layer => layer, :xtrace => xtrace)) or opts.has_key?('Force'))
|
|
72
72
|
log_event(layer, 'entry', Oboe::Context.startTrace, opts)
|
|
73
73
|
end
|
|
74
74
|
end
|
|
@@ -17,7 +17,7 @@ if defined?(ActionView::Base) and Oboe::Config[:action_view][:enabled]
|
|
|
17
17
|
def render_partial
|
|
18
18
|
entry_kvs = {}
|
|
19
19
|
begin
|
|
20
|
-
name = @options[:partial]
|
|
20
|
+
name = Oboe::Util.prettify(@options[:partial]) if @options.is_a?(Hash)
|
|
21
21
|
entry_kvs[:FunctionName] = :render_partial
|
|
22
22
|
entry_kvs[:Class] = :PartialRenderer
|
|
23
23
|
entry_kvs[:Module] = :ActionView
|
|
@@ -35,7 +35,7 @@ if defined?(ActionView::Base) and Oboe::Config[:action_view][:enabled]
|
|
|
35
35
|
def render_collection
|
|
36
36
|
entry_kvs = {}
|
|
37
37
|
begin
|
|
38
|
-
name = @path
|
|
38
|
+
name = Oboe::Util.prettify(@path)
|
|
39
39
|
entry_kvs[:FunctionName] = :render_collection
|
|
40
40
|
entry_kvs[:Class] = :PartialRenderer
|
|
41
41
|
entry_kvs[:Module] = :ActionView
|
|
@@ -13,7 +13,7 @@ if defined?(ActionView::Base) and Oboe::Config[:action_view][:enabled]
|
|
|
13
13
|
if options.has_key?(:partial) and options[:partial].is_a?(String)
|
|
14
14
|
entry_kvs = {}
|
|
15
15
|
begin
|
|
16
|
-
name = options[:partial]
|
|
16
|
+
name = Oboe::Util.prettify(options[:partial]) if options.is_a?(Hash)
|
|
17
17
|
entry_kvs[:FunctionName] = :render_partial
|
|
18
18
|
entry_kvs[:Class] = :Partials
|
|
19
19
|
entry_kvs[:Module] = :ActionView
|
|
@@ -10,7 +10,7 @@ if defined?(ActionView::Base) and Oboe::Config[:action_view][:enabled]
|
|
|
10
10
|
def render_partial(object = @object)
|
|
11
11
|
entry_kvs = {}
|
|
12
12
|
begin
|
|
13
|
-
name = @options[:partial]
|
|
13
|
+
name = Oboe::Util.prettify(@options[:partial]) if @options.is_a?(Hash)
|
|
14
14
|
entry_kvs[:FunctionName] = :render_partial
|
|
15
15
|
entry_kvs[:Class] = :PartialRenderer
|
|
16
16
|
entry_kvs[:Module] = 'ActionView::Partials'
|
|
@@ -28,7 +28,7 @@ if defined?(ActionView::Base) and Oboe::Config[:action_view][:enabled]
|
|
|
28
28
|
def render_collection
|
|
29
29
|
entry_kvs = {}
|
|
30
30
|
begin
|
|
31
|
-
name = @path
|
|
31
|
+
name = Oboe::Util.prettify(@path)
|
|
32
32
|
entry_kvs[:FunctionName] = :render_collection
|
|
33
33
|
entry_kvs[:Class] = :PartialRenderer
|
|
34
34
|
entry_kvs[:Module] = 'ActionView::Partials'
|
data/lib/oboe/inst/rack.rb
CHANGED
|
@@ -11,12 +11,10 @@ module Oboe
|
|
|
11
11
|
@app = app
|
|
12
12
|
end
|
|
13
13
|
|
|
14
|
-
def collect(env)
|
|
14
|
+
def collect(req, env)
|
|
15
15
|
report_kvs = {}
|
|
16
16
|
|
|
17
17
|
begin
|
|
18
|
-
req = ::Rack::Request.new(env)
|
|
19
|
-
|
|
20
18
|
if Oboe.always?
|
|
21
19
|
# Only report these KVs under tracing_mode 'always' (never for 'through')
|
|
22
20
|
report_kvs[:SampleRate] = Oboe.sample_rate
|
|
@@ -53,7 +51,11 @@ module Oboe
|
|
|
53
51
|
end
|
|
54
52
|
|
|
55
53
|
def call(env)
|
|
54
|
+
req = ::Rack::Request.new(env)
|
|
55
|
+
|
|
56
56
|
report_kvs = {}
|
|
57
|
+
report_kvs[:URL] = URI.unescape(req.path)
|
|
58
|
+
|
|
57
59
|
xtrace = env.is_a?(Hash) ? env['HTTP_X_TRACE'] : nil
|
|
58
60
|
|
|
59
61
|
result, xtrace = Oboe::API.start_trace('rack', xtrace, report_kvs) do
|
|
@@ -61,7 +63,7 @@ module Oboe
|
|
|
61
63
|
status, headers, response = @app.call(env)
|
|
62
64
|
|
|
63
65
|
if Oboe.tracing?
|
|
64
|
-
report_kvs = collect(env)
|
|
66
|
+
report_kvs = collect(req, env)
|
|
65
67
|
Oboe::API.log(nil, 'info', report_kvs.merge!({ :Status => status }))
|
|
66
68
|
end
|
|
67
69
|
|
data/lib/oboe/util.rb
CHANGED
|
@@ -5,7 +5,7 @@ module Oboe
|
|
|
5
5
|
module Util
|
|
6
6
|
class << self
|
|
7
7
|
##
|
|
8
|
-
#
|
|
8
|
+
# method_alias
|
|
9
9
|
#
|
|
10
10
|
# Centralized utility method to alias a method on an arbitrary
|
|
11
11
|
# class or module.
|
|
@@ -45,7 +45,7 @@ module Oboe
|
|
|
45
45
|
end
|
|
46
46
|
|
|
47
47
|
##
|
|
48
|
-
#
|
|
48
|
+
# send_include
|
|
49
49
|
#
|
|
50
50
|
# Centralized utility method to send a include call for an
|
|
51
51
|
# arbitrary class
|
|
@@ -54,6 +54,33 @@ module Oboe
|
|
|
54
54
|
target_cls.send(:include, cls)
|
|
55
55
|
end
|
|
56
56
|
end
|
|
57
|
+
|
|
58
|
+
##
|
|
59
|
+
# static_asset?
|
|
60
|
+
#
|
|
61
|
+
# Given a path, this method determines whether it is a static asset or not (based
|
|
62
|
+
# solely on filename)
|
|
63
|
+
#
|
|
64
|
+
def static_asset?(path)
|
|
65
|
+
return (path =~ /\.(jpg|jpeg|gif|png|ico|css|zip|tgz|gz|rar|bz2|pdf|txt|tar|wav|bmp|rtf|js|flv|swf|ttf|woff|svg|less)$/i)
|
|
66
|
+
end
|
|
67
|
+
|
|
68
|
+
##
|
|
69
|
+
# prettify
|
|
70
|
+
#
|
|
71
|
+
# Even to my surprise, 'prettify' is a real word:
|
|
72
|
+
# transitive v. To make pretty or prettier, especially in a superficial or insubstantial way.
|
|
73
|
+
# from The American Heritage® Dictionary of the English Language, 4th Edition
|
|
74
|
+
#
|
|
75
|
+
# This method makes things 'purty' for reporting.
|
|
76
|
+
def prettify(x)
|
|
77
|
+
if (x.to_s =~ /^#</) == 0
|
|
78
|
+
x.class.to_s
|
|
79
|
+
else
|
|
80
|
+
x.to_s
|
|
81
|
+
end
|
|
82
|
+
end
|
|
83
|
+
|
|
57
84
|
end
|
|
58
85
|
end
|
|
59
86
|
end
|
data/lib/oboe/version.rb
CHANGED
data/lib/oboe_metal.rb
CHANGED
|
@@ -78,22 +78,25 @@ module Oboe
|
|
|
78
78
|
|
|
79
79
|
class << self
|
|
80
80
|
def sample?(opts = {})
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
opts[:
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
81
|
+
begin
|
|
82
|
+
# Assure defaults since SWIG enforces Strings
|
|
83
|
+
layer = opts[:layer] ? opts[:layer].strip : ''
|
|
84
|
+
xtrace = opts[:xtrace] ? opts[:xtrace].strip : ''
|
|
85
|
+
tv_meta = opts['X-TV-Meta'] ? opts['X-TV-Meta'].strip : ''
|
|
86
|
+
|
|
87
|
+
rv = Oboe::Context.sampleRequest(layer, xtrace, tv_meta)
|
|
88
|
+
|
|
89
|
+
# For older liboboe that returns true/false, just return that.
|
|
90
|
+
return rv if [TrueClass, FalseClass].include?(rv.class) or (rv == 0)
|
|
91
|
+
|
|
92
|
+
# liboboe version > 1.3.1 returning a bit masked integer with SampleRate and
|
|
93
|
+
# source embedded
|
|
94
|
+
Oboe.sample_rate = (rv & SAMPLE_RATE_MASK)
|
|
95
|
+
Oboe.sample_source = (rv & SAMPLE_SOURCE_MASK) >> 24
|
|
96
|
+
rescue StandardError => e
|
|
97
|
+
Oboe.logger.debug "[oboe/error] sample? error: #{e.inspect}"
|
|
98
|
+
false
|
|
99
|
+
end
|
|
97
100
|
end
|
|
98
101
|
|
|
99
102
|
def set_tracing_mode(mode)
|
|
@@ -8,6 +8,7 @@ PADRINO_ROOT = File.dirname(__FILE__) unless defined? PADRINO_ROOT
|
|
|
8
8
|
#
|
|
9
9
|
|
|
10
10
|
class SimpleDemo < Padrino::Application
|
|
11
|
+
set :public_folder, File.dirname(__FILE__)
|
|
11
12
|
set :reload, true
|
|
12
13
|
before { true }
|
|
13
14
|
after { true }
|
|
@@ -37,3 +38,4 @@ end
|
|
|
37
38
|
#
|
|
38
39
|
|
|
39
40
|
Padrino.load!
|
|
41
|
+
|
|
@@ -3,10 +3,7 @@ require 'rack/test'
|
|
|
3
3
|
require 'rack/lobster'
|
|
4
4
|
require 'oboe/inst/rack'
|
|
5
5
|
|
|
6
|
-
|
|
7
|
-
Oboe::Config[:sample_rate] = 1e6
|
|
8
|
-
|
|
9
|
-
class RackTestApp < MiniTest::Unit::TestCase
|
|
6
|
+
class RackTestApp < Minitest::Test
|
|
10
7
|
include Rack::Test::Methods
|
|
11
8
|
|
|
12
9
|
def app
|
|
@@ -51,5 +48,16 @@ class RackTestApp < MiniTest::Unit::TestCase
|
|
|
51
48
|
assert last_response.ok?
|
|
52
49
|
assert last_response['X-Trace']
|
|
53
50
|
end
|
|
51
|
+
|
|
52
|
+
def test_dont_trace_static_assets
|
|
53
|
+
clear_all_traces
|
|
54
|
+
|
|
55
|
+
get "/assets/static_asset.png"
|
|
56
|
+
|
|
57
|
+
traces = get_all_traces
|
|
58
|
+
assert traces.empty?
|
|
59
|
+
|
|
60
|
+
assert last_response.status == 404
|
|
61
|
+
end
|
|
54
62
|
end
|
|
55
63
|
|
data/test/minitest_helper.rb
CHANGED
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.
|
|
4
|
+
version: 2.6.3.0
|
|
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-
|
|
12
|
+
date: 2014-04-07 00:00:00.000000000 Z
|
|
13
13
|
dependencies:
|
|
14
14
|
- !ruby/object:Gem::Dependency
|
|
15
15
|
name: rake
|
|
@@ -52,6 +52,7 @@ files:
|
|
|
52
52
|
- Appraisals
|
|
53
53
|
- CHANGELOG.md
|
|
54
54
|
- Gemfile
|
|
55
|
+
- Gemfile.lock
|
|
55
56
|
- LICENSE
|
|
56
57
|
- README.md
|
|
57
58
|
- Rakefile
|
|
@@ -148,7 +149,7 @@ files:
|
|
|
148
149
|
- test/minitest_helper.rb
|
|
149
150
|
- test/profiling/method_test.rb
|
|
150
151
|
- test/support/config_test.rb
|
|
151
|
-
- test/support/
|
|
152
|
+
- test/support/liboboe_settings_test.rb
|
|
152
153
|
- test/support/xtrace_test.rb
|
|
153
154
|
homepage: http://www.appneta.com/products/traceview/
|
|
154
155
|
licenses:
|
|
@@ -197,7 +198,7 @@ test_files:
|
|
|
197
198
|
- test/instrumentation/cassandra_test.rb
|
|
198
199
|
- test/instrumentation/memcached_test.rb
|
|
199
200
|
- test/profiling/method_test.rb
|
|
200
|
-
- test/support/
|
|
201
|
+
- test/support/liboboe_settings_test.rb
|
|
201
202
|
- test/support/config_test.rb
|
|
202
203
|
- test/support/xtrace_test.rb
|
|
203
204
|
has_rdoc:
|