traceview 3.0.0-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 +7 -0
- data/.gitignore +10 -0
- data/.rubocop.yml +5 -0
- data/.travis.yml +58 -0
- data/Appraisals +10 -0
- data/CHANGELOG.md +490 -0
- data/CONFIG.md +16 -0
- data/Gemfile +95 -0
- data/LICENSE +199 -0
- data/README.md +380 -0
- data/Rakefile +109 -0
- data/examples/DNT.md +35 -0
- data/examples/carrying_context.rb +225 -0
- data/examples/instrumenting_metal_controller.rb +8 -0
- data/examples/puma_on_heroku_config.rb +17 -0
- data/examples/tracing_async_threads.rb +125 -0
- data/examples/tracing_background_jobs.rb +52 -0
- data/examples/tracing_forked_processes.rb +100 -0
- data/examples/unicorn_on_heroku_config.rb +28 -0
- data/ext/oboe_metal/extconf.rb +61 -0
- data/ext/oboe_metal/noop/noop.c +7 -0
- data/ext/oboe_metal/src/bson/bson.h +221 -0
- data/ext/oboe_metal/src/bson/platform_hacks.h +91 -0
- data/ext/oboe_metal/src/oboe.h +275 -0
- data/ext/oboe_metal/src/oboe.hpp +352 -0
- data/ext/oboe_metal/src/oboe_wrap.cxx +3886 -0
- data/ext/oboe_metal/tests/test.rb +11 -0
- data/gemfiles/mongo.gemfile +33 -0
- data/gemfiles/moped.gemfile +33 -0
- data/get_version.rb +5 -0
- data/init.rb +4 -0
- data/lib/joboe_metal.rb +206 -0
- data/lib/oboe/README +2 -0
- data/lib/oboe/backward_compatibility.rb +59 -0
- data/lib/oboe/inst/rack.rb +11 -0
- data/lib/oboe.rb +7 -0
- data/lib/oboe_metal.rb +151 -0
- data/lib/rails/generators/traceview/install_generator.rb +76 -0
- data/lib/rails/generators/traceview/templates/traceview_initializer.rb +159 -0
- data/lib/traceview/api/layerinit.rb +51 -0
- data/lib/traceview/api/logging.rb +209 -0
- data/lib/traceview/api/memcache.rb +31 -0
- data/lib/traceview/api/profiling.rb +50 -0
- data/lib/traceview/api/tracing.rb +135 -0
- data/lib/traceview/api/util.rb +121 -0
- data/lib/traceview/api.rb +18 -0
- data/lib/traceview/base.rb +225 -0
- data/lib/traceview/config.rb +238 -0
- data/lib/traceview/frameworks/grape.rb +97 -0
- data/lib/traceview/frameworks/padrino/templates.rb +58 -0
- data/lib/traceview/frameworks/padrino.rb +64 -0
- data/lib/traceview/frameworks/rails/helpers/rum/rum_ajax_header.js.erb +5 -0
- data/lib/traceview/frameworks/rails/helpers/rum/rum_footer.js.erb +1 -0
- data/lib/traceview/frameworks/rails/helpers/rum/rum_header.js.erb +3 -0
- data/lib/traceview/frameworks/rails/inst/action_controller.rb +216 -0
- data/lib/traceview/frameworks/rails/inst/action_view.rb +56 -0
- data/lib/traceview/frameworks/rails/inst/action_view_2x.rb +54 -0
- data/lib/traceview/frameworks/rails/inst/action_view_30.rb +48 -0
- data/lib/traceview/frameworks/rails/inst/active_record.rb +24 -0
- data/lib/traceview/frameworks/rails/inst/connection_adapters/mysql.rb +43 -0
- data/lib/traceview/frameworks/rails/inst/connection_adapters/mysql2.rb +28 -0
- data/lib/traceview/frameworks/rails/inst/connection_adapters/oracle.rb +18 -0
- data/lib/traceview/frameworks/rails/inst/connection_adapters/postgresql.rb +30 -0
- data/lib/traceview/frameworks/rails/inst/connection_adapters/utils.rb +117 -0
- data/lib/traceview/frameworks/rails.rb +145 -0
- data/lib/traceview/frameworks/sinatra/templates.rb +56 -0
- data/lib/traceview/frameworks/sinatra.rb +95 -0
- data/lib/traceview/inst/cassandra.rb +279 -0
- data/lib/traceview/inst/dalli.rb +86 -0
- data/lib/traceview/inst/em-http-request.rb +99 -0
- data/lib/traceview/inst/excon.rb +111 -0
- data/lib/traceview/inst/faraday.rb +73 -0
- data/lib/traceview/inst/http.rb +87 -0
- data/lib/traceview/inst/httpclient.rb +173 -0
- data/lib/traceview/inst/memcache.rb +102 -0
- data/lib/traceview/inst/memcached.rb +94 -0
- data/lib/traceview/inst/mongo.rb +238 -0
- data/lib/traceview/inst/moped.rb +474 -0
- data/lib/traceview/inst/rack.rb +122 -0
- data/lib/traceview/inst/redis.rb +271 -0
- data/lib/traceview/inst/resque.rb +192 -0
- data/lib/traceview/inst/rest-client.rb +38 -0
- data/lib/traceview/inst/sequel.rb +162 -0
- data/lib/traceview/inst/typhoeus.rb +102 -0
- data/lib/traceview/instrumentation.rb +21 -0
- data/lib/traceview/loading.rb +94 -0
- data/lib/traceview/logger.rb +41 -0
- data/lib/traceview/method_profiling.rb +84 -0
- data/lib/traceview/ruby.rb +36 -0
- data/lib/traceview/support.rb +113 -0
- data/lib/traceview/thread_local.rb +26 -0
- data/lib/traceview/util.rb +250 -0
- data/lib/traceview/version.rb +16 -0
- data/lib/traceview/xtrace.rb +90 -0
- data/lib/traceview.rb +62 -0
- data/test/frameworks/apps/grape_nested.rb +30 -0
- data/test/frameworks/apps/grape_simple.rb +24 -0
- data/test/frameworks/apps/padrino_simple.rb +45 -0
- data/test/frameworks/apps/sinatra_simple.rb +24 -0
- data/test/frameworks/grape_test.rb +142 -0
- data/test/frameworks/padrino_test.rb +30 -0
- data/test/frameworks/sinatra_test.rb +30 -0
- data/test/instrumentation/cassandra_test.rb +380 -0
- data/test/instrumentation/dalli_test.rb +171 -0
- data/test/instrumentation/em_http_request_test.rb +86 -0
- data/test/instrumentation/excon_test.rb +207 -0
- data/test/instrumentation/faraday_test.rb +235 -0
- data/test/instrumentation/http_test.rb +140 -0
- data/test/instrumentation/httpclient_test.rb +296 -0
- data/test/instrumentation/memcache_test.rb +251 -0
- data/test/instrumentation/memcached_test.rb +226 -0
- data/test/instrumentation/mongo_test.rb +462 -0
- data/test/instrumentation/moped_test.rb +496 -0
- data/test/instrumentation/rack_test.rb +116 -0
- data/test/instrumentation/redis_hashes_test.rb +265 -0
- data/test/instrumentation/redis_keys_test.rb +318 -0
- data/test/instrumentation/redis_lists_test.rb +310 -0
- data/test/instrumentation/redis_misc_test.rb +160 -0
- data/test/instrumentation/redis_sets_test.rb +293 -0
- data/test/instrumentation/redis_sortedsets_test.rb +325 -0
- data/test/instrumentation/redis_strings_test.rb +333 -0
- data/test/instrumentation/resque_test.rb +62 -0
- data/test/instrumentation/rest-client_test.rb +294 -0
- data/test/instrumentation/sequel_mysql2_test.rb +326 -0
- data/test/instrumentation/sequel_mysql_test.rb +326 -0
- data/test/instrumentation/sequel_pg_test.rb +330 -0
- data/test/instrumentation/typhoeus_test.rb +285 -0
- data/test/minitest_helper.rb +187 -0
- data/test/profiling/method_test.rb +198 -0
- data/test/servers/rackapp_8101.rb +22 -0
- data/test/support/backcompat_test.rb +269 -0
- data/test/support/config_test.rb +128 -0
- data/test/support/dnt_test.rb +73 -0
- data/test/support/liboboe_settings_test.rb +104 -0
- data/test/support/xtrace_test.rb +35 -0
- data/traceview.gemspec +29 -0
- metadata +248 -0
checksums.yaml
ADDED
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
---
|
|
2
|
+
SHA1:
|
|
3
|
+
metadata.gz: 419e8c941085b63d93dc35f85bce9f8b56a200c8
|
|
4
|
+
data.tar.gz: 3e7518114ba1299214ae651baf5d99567a74b5ed
|
|
5
|
+
SHA512:
|
|
6
|
+
metadata.gz: 1aadebfdbff8b454c9574c16ec26b0ecd2f7180bddab2c4cc97eeb6364ea24e57ca0aac82cc645d3afc075169dc3ffce017340b9ee5e7abbb8663aa58213e47b
|
|
7
|
+
data.tar.gz: 00905d0709474322db264419a43e110b72b83f188b4996fed9a2ab8e48ed9de316882bd18308cca49489d04deeaf77b77353c328f44feac40f2b47811b31652a
|
data/.gitignore
ADDED
data/.rubocop.yml
ADDED
data/.travis.yml
ADDED
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
language: ruby
|
|
2
|
+
|
|
3
|
+
cache:
|
|
4
|
+
bundler: true
|
|
5
|
+
directories:
|
|
6
|
+
- vendor/bundle
|
|
7
|
+
|
|
8
|
+
rvm:
|
|
9
|
+
- 2.2.0
|
|
10
|
+
- 2.1.1
|
|
11
|
+
- 2.0.0
|
|
12
|
+
- 1.9.3
|
|
13
|
+
- 1.9.2
|
|
14
|
+
- 1.8.7
|
|
15
|
+
- ree
|
|
16
|
+
- jruby-19mode
|
|
17
|
+
|
|
18
|
+
#gemfile:
|
|
19
|
+
# - gemfiles/mongo.gemfile
|
|
20
|
+
# - gemfiles/moped.gemfile
|
|
21
|
+
|
|
22
|
+
# Attempt Travis/Cassandra fix re: https://github.com/travis-ci/travis-ci/issues/1484
|
|
23
|
+
# Updated Cassandra: https://github.com/travis-ci/travis-ci/issues/1650
|
|
24
|
+
before_install:
|
|
25
|
+
- gem update --system
|
|
26
|
+
- gem update bundler
|
|
27
|
+
- gem --version
|
|
28
|
+
- sudo sh -c "echo 'JVM_OPTS=\"\${JVM_OPTS} -Djava.net.preferIPv4Stack=false\"' >> /usr/local/cassandra/conf/cassandra-env.sh"
|
|
29
|
+
- echo "127.0.0.1 localhost" | sudo tee /etc/hosts
|
|
30
|
+
- echo "127.0.0.1 " `hostname` | sudo tee /etc/hosts
|
|
31
|
+
- sudo service cassandra start
|
|
32
|
+
|
|
33
|
+
install:
|
|
34
|
+
- wget https://www.tracelytics.com/install_tracelytics.sh
|
|
35
|
+
- sudo sh ./install_tracelytics.sh f51e2a43-0ee5-4851-8a54-825773b3218e
|
|
36
|
+
- sudo apt-get install -y tracelytics-java-agent
|
|
37
|
+
|
|
38
|
+
before_script:
|
|
39
|
+
- bundle install --without development
|
|
40
|
+
- bundle exec rake compile
|
|
41
|
+
- psql -c 'create database travis_ci_test;' -U postgres
|
|
42
|
+
- mysql -e 'create database travis_ci_test;'
|
|
43
|
+
- sleep 10
|
|
44
|
+
|
|
45
|
+
script: "bundle exec rake test"
|
|
46
|
+
|
|
47
|
+
services:
|
|
48
|
+
- mongodb
|
|
49
|
+
- memcached
|
|
50
|
+
- cassandra
|
|
51
|
+
- redis
|
|
52
|
+
|
|
53
|
+
matrix:
|
|
54
|
+
allow_failures:
|
|
55
|
+
# FIXME: Until the joboe test reporter supports cross thread
|
|
56
|
+
# event collection.
|
|
57
|
+
- rvm: jruby-19mode
|
|
58
|
+
|
data/Appraisals
ADDED
data/CHANGELOG.md
ADDED
|
@@ -0,0 +1,490 @@
|
|
|
1
|
+
|
|
2
|
+
For the latest release info, see here:
|
|
3
|
+
https://github.com/appneta/oboe-ruby/releases
|
|
4
|
+
|
|
5
|
+
Dates in this file are in the format MM/DD/YYYY.
|
|
6
|
+
|
|
7
|
+
# traceview 3.0.0
|
|
8
|
+
|
|
9
|
+
The oboe gem has been renamed to traceview. The final oboe
|
|
10
|
+
gem (2.7.19) has a post-install deprecation warning and will
|
|
11
|
+
not have anymore updates.
|
|
12
|
+
|
|
13
|
+
All development going forward will be done on this traceview gem.
|
|
14
|
+
|
|
15
|
+
As a first release, this is simply a renamed version of oboe gem 2.7.19.
|
|
16
|
+
|
|
17
|
+
It contains no bug fixes or new features.
|
|
18
|
+
|
|
19
|
+
Pushed to Rubygems:
|
|
20
|
+
|
|
21
|
+
https://rubygems.org/gems/traceview/versions/3.0.0
|
|
22
|
+
https://rubygems.org/gems/traceview/versions/3.0.0-java
|
|
23
|
+
|
|
24
|
+
# oboe 2.7.19
|
|
25
|
+
|
|
26
|
+
__Note that this will be the last release for the oboe gem. The gem
|
|
27
|
+
will be renamed to _traceview_ and all future updates will be to that
|
|
28
|
+
other gem.__
|
|
29
|
+
|
|
30
|
+
This version will show a post-install warning message stating this. A
|
|
31
|
+
final version of this gem will be released with only a deprecation
|
|
32
|
+
warning.
|
|
33
|
+
|
|
34
|
+
This patch release includes the following fix:
|
|
35
|
+
|
|
36
|
+
* Report TraceMode in __Init: #120
|
|
37
|
+
* Add RemoteHost reporting to Dalli Instrumentation: #119
|
|
38
|
+
|
|
39
|
+
Pushed to Rubygems:
|
|
40
|
+
|
|
41
|
+
https://rubygems.org/gems/oboe/versions/2.7.19
|
|
42
|
+
https://rubygems.org/gems/oboe/versions/2.7.19-java
|
|
43
|
+
|
|
44
|
+
# oboe 2.7.18
|
|
45
|
+
|
|
46
|
+
This patch release includes the following fix:
|
|
47
|
+
|
|
48
|
+
* For custom ActionView renderers, properly accept and pass on blocks: #118
|
|
49
|
+
|
|
50
|
+
Pushed to Rubygems:
|
|
51
|
+
|
|
52
|
+
https://rubygems.org/gems/oboe/versions/2.7.18
|
|
53
|
+
https://rubygems.org/gems/oboe/versions/2.7.18-java
|
|
54
|
+
|
|
55
|
+
# oboe 2.7.17.1
|
|
56
|
+
|
|
57
|
+
This patch release includes:
|
|
58
|
+
|
|
59
|
+
* New config option to optionally not report URL query parameters: #116
|
|
60
|
+
* New HTTPClient instrumentation: #115
|
|
61
|
+
|
|
62
|
+
Pushed to Rubygems:
|
|
63
|
+
|
|
64
|
+
https://rubygems.org/gems/oboe/versions/2.7.17.1
|
|
65
|
+
https://rubygems.org/gems/oboe/versions/2.7.17.1-java
|
|
66
|
+
|
|
67
|
+
# oboe 2.7.16.1
|
|
68
|
+
|
|
69
|
+
This patch release includes:
|
|
70
|
+
|
|
71
|
+
* New rest-client instrumentation: #109
|
|
72
|
+
* New excon instrumentation: #114
|
|
73
|
+
* Fix `uninitialized constant` on unsupported platforms: #113
|
|
74
|
+
|
|
75
|
+
Pushed to Rubygems:
|
|
76
|
+
|
|
77
|
+
https://rubygems.org/gems/oboe/versions/2.7.16.1
|
|
78
|
+
https://rubygems.org/gems/oboe/versions/2.7.16.1-java
|
|
79
|
+
|
|
80
|
+
# oboe 2.7.15.1
|
|
81
|
+
|
|
82
|
+
This patch release includes:
|
|
83
|
+
|
|
84
|
+
* Rails Instrumentation should respect top-level rescue handlers: #111
|
|
85
|
+
|
|
86
|
+
Pushed to Rubygems:
|
|
87
|
+
|
|
88
|
+
https://rubygems.org/gems/oboe/versions/2.7.15.1
|
|
89
|
+
https://rubygems.org/gems/oboe/versions/2.7.15/1-java
|
|
90
|
+
|
|
91
|
+
# oboe 2.7.14.1
|
|
92
|
+
|
|
93
|
+
This patch release includes:
|
|
94
|
+
|
|
95
|
+
* Fixed support for Puma on Heroku: #108
|
|
96
|
+
|
|
97
|
+
Pushed to Rubygems:
|
|
98
|
+
|
|
99
|
+
https://rubygems.org/gems/oboe/versions/2.7.14.1
|
|
100
|
+
https://rubygems.org/gems/oboe/versions/2.7.14/1-java
|
|
101
|
+
|
|
102
|
+
# oboe 2.7.13.3
|
|
103
|
+
|
|
104
|
+
This build release includes:
|
|
105
|
+
|
|
106
|
+
* Protect against unknown data type reporting: #106
|
|
107
|
+
|
|
108
|
+
Pushed to Rubygems:
|
|
109
|
+
|
|
110
|
+
https://rubygems.org/gems/oboe/versions/2.7.13.3
|
|
111
|
+
https://rubygems.org/gems/oboe/versions/2.7.13.3-java
|
|
112
|
+
|
|
113
|
+
# oboe 2.7.12.1
|
|
114
|
+
|
|
115
|
+
This patch release includes:
|
|
116
|
+
|
|
117
|
+
* Report values using BSON data types: #103
|
|
118
|
+
* Avoid double tracing rack layer for nested apps: #104
|
|
119
|
+
|
|
120
|
+
Pushed to Rubygems:
|
|
121
|
+
|
|
122
|
+
https://rubygems.org/gems/oboe/versions/2.7.12.1
|
|
123
|
+
https://rubygems.org/gems/oboe/versions/2.7.12.1-java
|
|
124
|
+
|
|
125
|
+
# oboe 2.7.11.1
|
|
126
|
+
|
|
127
|
+
This patch release includes:
|
|
128
|
+
|
|
129
|
+
* Grape instrumentation fixes and improvements: #102
|
|
130
|
+
* Report Sequel and Typhoeus versions in __Init: #101
|
|
131
|
+
|
|
132
|
+
Pushed to Rubygems:
|
|
133
|
+
|
|
134
|
+
https://rubygems.org/gems/oboe/versions/2.7.11.1
|
|
135
|
+
https://rubygems.org/gems/oboe/versions/2.7.11.1-java
|
|
136
|
+
|
|
137
|
+
# oboe 2.7.10.1
|
|
138
|
+
|
|
139
|
+
This patch release includes:
|
|
140
|
+
|
|
141
|
+
* Add the ability to configure the do not trace list: #100
|
|
142
|
+
|
|
143
|
+
Pushed to Rubygems:
|
|
144
|
+
|
|
145
|
+
https://rubygems.org/gems/oboe/versions/2.7.10.1
|
|
146
|
+
https://rubygems.org/gems/oboe/versions/2.7.10.1-java
|
|
147
|
+
|
|
148
|
+
# oboe 2.7.9.6
|
|
149
|
+
|
|
150
|
+
This patch release includes:
|
|
151
|
+
|
|
152
|
+
* Better, faster, stronger Rack instrumentation: #99
|
|
153
|
+
* A Typhoeus instrumentation fix for cross-app tracing: #97
|
|
154
|
+
|
|
155
|
+
Pushed to Rubygems:
|
|
156
|
+
|
|
157
|
+
https://rubygems.org/gems/oboe/versions/2.7.9.6
|
|
158
|
+
https://rubygems.org/gems/oboe/versions/2.7.9.6-java
|
|
159
|
+
|
|
160
|
+
# oboe 2.7.8.1
|
|
161
|
+
|
|
162
|
+
This patch release includes:
|
|
163
|
+
|
|
164
|
+
* Improved sampling management and reporting
|
|
165
|
+
|
|
166
|
+
Pushed to Rubygems:
|
|
167
|
+
|
|
168
|
+
https://rubygems.org/gems/oboe/versions/2.7.8.1
|
|
169
|
+
https://rubygems.org/gems/oboe/versions/2.7.8.1-java
|
|
170
|
+
|
|
171
|
+
|
|
172
|
+
# oboe 2.7.7.1
|
|
173
|
+
|
|
174
|
+
This patch release includes:
|
|
175
|
+
|
|
176
|
+
* Add support and instrumentation for Sequel: #91
|
|
177
|
+
|
|
178
|
+
Pushed to Rubygems:
|
|
179
|
+
|
|
180
|
+
https://rubygems.org/gems/oboe/versions/2.7.7.1
|
|
181
|
+
https://rubygems.org/gems/oboe/versions/2.7.7.1-java
|
|
182
|
+
|
|
183
|
+
# oboe 2.7.6.2
|
|
184
|
+
|
|
185
|
+
This patch release includes:
|
|
186
|
+
|
|
187
|
+
* Fixed metrics when hosting a JRuby application under a Java webserver such as Tomcat: #94
|
|
188
|
+
* Fix for moped aggregate calls: #95
|
|
189
|
+
|
|
190
|
+
Pushed to Rubygems:
|
|
191
|
+
|
|
192
|
+
https://rubygems.org/gems/oboe/versions/2.7.6.2
|
|
193
|
+
https://rubygems.org/gems/oboe/versions/2.7.6.2-java
|
|
194
|
+
|
|
195
|
+
# oboe 2.7.5.1 (11/20/2014)
|
|
196
|
+
|
|
197
|
+
This patch release includes:
|
|
198
|
+
|
|
199
|
+
* New [Typhoeus](https://github.com/typhoeus/typhoeus) instrumentation: #90
|
|
200
|
+
* JRuby: Better Handling of Agent JSON Parsing Errors: #89
|
|
201
|
+
* Faraday doesn't Log like the others; Fixup Verbose Logging: #79
|
|
202
|
+
* Add DB Adapters to __Init reporting: #83
|
|
203
|
+
* Extended Typhoeus tests: #92
|
|
204
|
+
|
|
205
|
+
Pushed to Rubygems:
|
|
206
|
+
|
|
207
|
+
https://rubygems.org/gems/oboe/versions/2.7.5.1
|
|
208
|
+
https://rubygems.org/gems/oboe/versions/2.7.5.1-java
|
|
209
|
+
|
|
210
|
+
# oboe 2.7.4.1 (10/26/2014)
|
|
211
|
+
|
|
212
|
+
This patch release includes:
|
|
213
|
+
|
|
214
|
+
* Make Oboe::API available even when liboboe.so is not #81 (thanks Cannon!)
|
|
215
|
+
* Add OS and Oboe::Config info to support report #80
|
|
216
|
+
|
|
217
|
+
Pushed to Rubygems:
|
|
218
|
+
|
|
219
|
+
https://rubygems.org/gems/oboe/versions/2.7.4.1
|
|
220
|
+
https://rubygems.org/gems/oboe/versions/2.7.4.1-java
|
|
221
|
+
|
|
222
|
+
# oboe 2.7.3.1 (10/15/2014)
|
|
223
|
+
|
|
224
|
+
This patch release includes:
|
|
225
|
+
|
|
226
|
+
* Fix require statements under certain variations of REE-1.8.7: #78 (thanks @madrobby)
|
|
227
|
+
* Faraday instrumentation fails to capture and pass params update block: #79
|
|
228
|
+
* Add method to log environment details for support investigations (`Oboe.support_ report`): #77
|
|
229
|
+
|
|
230
|
+
Pushed to Rubygems:
|
|
231
|
+
|
|
232
|
+
https://rubygems.org/gems/oboe/versions/2.7.3.1
|
|
233
|
+
https://rubygems.org/gems/oboe/versions/2.7.3.1-java
|
|
234
|
+
|
|
235
|
+
# oboe 2.7.2.2 (09/26/2014)
|
|
236
|
+
|
|
237
|
+
This patch release includes:
|
|
238
|
+
|
|
239
|
+
* New [Faraday](https://github.com/lostisland/faraday) instrumentation: https://github.com/appneta/oboe-ruby/pull/68
|
|
240
|
+
* Auto-initialize instrumentation when no framework detected: https://github.com/appneta/oboe-ruby/pull/76
|
|
241
|
+
* Willingly ignore traceview missing libraries warning: https://github.com/appneta/oboe-ruby/pull/75 (thanks @theist!)
|
|
242
|
+
|
|
243
|
+
Pushed to Rubygems:
|
|
244
|
+
|
|
245
|
+
https://rubygems.org/gems/oboe/versions/2.7.2.2
|
|
246
|
+
https://rubygems.org/gems/oboe/versions/2.7.2.2-java
|
|
247
|
+
|
|
248
|
+
# oboe 2.7.1.7 (09/08/2014)
|
|
249
|
+
|
|
250
|
+
This patch release includes:
|
|
251
|
+
|
|
252
|
+
* Fixed load stack trace when missing TraceView base libraries: [#72](https://github.com/appneta/oboe-ruby/pull/72) - thanks @theist!
|
|
253
|
+
* Beta `em-http-request` instrumentation: [#60](https://github.com/appneta/oboe-ruby/pull/60)/[#73](https://github.com/appneta/oboe-ruby/pull/73) - Thanks @diogobenica!
|
|
254
|
+
* Improved loading when on Heroku with oboe-heroku gem
|
|
255
|
+
|
|
256
|
+
Pushed to Rubygems:
|
|
257
|
+
|
|
258
|
+
https://rubygems.org/gems/oboe/versions/2.7.1.7
|
|
259
|
+
https://rubygems.org/gems/oboe/versions/2.7.1.7-java
|
|
260
|
+
|
|
261
|
+
# oboe 2.7.0.3 (08/19/2014)
|
|
262
|
+
|
|
263
|
+
This minor release includes:
|
|
264
|
+
|
|
265
|
+
* [JRuby instrumentation](https://github.com/appneta/oboe-ruby/pull/51) is back and better than ever.
|
|
266
|
+
* [Updated moped instrumentation](https://github.com/appneta/oboe-ruby/pull/63) to support moped v2 changes
|
|
267
|
+
* Simplify start_trace by setting a default param: [#67](https://github.com/appneta/oboe-ruby/pull/67)
|
|
268
|
+
|
|
269
|
+
This release also includes [our first pure java platform Ruby gem](https://rubygems.org/gems/oboe/versions/2.7.0.3-java) (no c-extension for JRuby yay!).
|
|
270
|
+
|
|
271
|
+
Pushed to Rubygems:
|
|
272
|
+
|
|
273
|
+
https://rubygems.org/gems/oboe/versions/2.7.0.3
|
|
274
|
+
https://rubygems.org/gems/oboe/versions/2.7.0.3-java
|
|
275
|
+
|
|
276
|
+
Related: http://www.appneta.com/blog/jruby-whole-java-world/
|
|
277
|
+
|
|
278
|
+
# oboe 2.6.8 (07/31/2014)
|
|
279
|
+
|
|
280
|
+
This patch release includes:
|
|
281
|
+
|
|
282
|
+
* Fix [instrumentation load for Padrino in test environments](https://github.com/appneta/oboe-ruby/pull/65)
|
|
283
|
+
* [Add delay](https://github.com/appneta/oboe-ruby/pull/66) in test suite to allow downloading of sample rate info
|
|
284
|
+
|
|
285
|
+
Pushed to Rubygems: https://rubygems.org/gems/oboe/versions/2.6.8
|
|
286
|
+
|
|
287
|
+
# oboe 2.6.7.1 (07/23/2014)
|
|
288
|
+
|
|
289
|
+
This patch release includes better error handling, API clean-up and RUM template improvements.
|
|
290
|
+
|
|
291
|
+
* [Add RUM helpers](https://github.com/appneta/oboe-ruby/pull/56) for Sinatra and Padrino stacks. Thanks @tlunter!
|
|
292
|
+
* Prefer [StandardError over Exception](https://github.com/appneta/oboe-ruby/pull/59) for rescue blocks that we handle directly
|
|
293
|
+
* [Clean up Oboe logging API](https://github.com/appneta/oboe-ruby/pull/58): Oboe.log, Oboe::Context.log and Oboe::API.log redundancy
|
|
294
|
+
|
|
295
|
+
# oboe 2.6.6.1 (06/16/2014)
|
|
296
|
+
|
|
297
|
+
This patch release adds new instrumentation and a couple fixes:
|
|
298
|
+
|
|
299
|
+
* [Add instrumentation support](https://github.com/appneta/oboe-ruby/pull/37) for [Grape API Micro Framework](http://intridea.github.io/grape/) (thanks @tlunter!)
|
|
300
|
+
* Important [Mongo find operation with block fix](https://github.com/appneta/oboe-ruby/pull/53) (thanks @rafaelfranca!)
|
|
301
|
+
* Better and more [data independent tests](https://github.com/appneta/oboe-ruby/pull/52) for Travis
|
|
302
|
+
|
|
303
|
+
# oboe 2.6.5.5 (06/02/2014)
|
|
304
|
+
|
|
305
|
+
This patch release improves [instrumentation for Mongo](https://github.com/appneta/oboe-ruby/pull/48) version >= 1.10 and fixes TraceView [sample rate reporting](https://github.com/appneta/oboe-ruby/pull/50).
|
|
306
|
+
|
|
307
|
+
# oboe 2.6.4.1 (04/30/2014)
|
|
308
|
+
|
|
309
|
+
This patch release adds detection and support for Redhat [OpenShift](https://www.openshift.com/). See our OpenShift [TraceView cartridge](https://github.com/appneta/openshift-cartridge-traceview) for base libraries before using this gem on OpenShift.
|
|
310
|
+
|
|
311
|
+
# oboe 2.6.3.0 (04/07/2014)
|
|
312
|
+
|
|
313
|
+
This patch releases fixes a number of smaller issues:
|
|
314
|
+
|
|
315
|
+
* the gem will no longer start traces on static assets (https://github.com/appneta/oboe-ruby/pull/31)
|
|
316
|
+
* fix occasionally broken `profile_name` values when using [custom method tracing](https://github.com/appneta/oboe-ruby#tracing-methods)
|
|
317
|
+
* fix for incorrectly starting traces when in `through` tracing mode under certain circumstances
|
|
318
|
+
* Expand the test suite to validate sample rates and tracing modes (https://github.com/appneta/oboe-ruby/pull/8)
|
|
319
|
+
|
|
320
|
+
# oboe 2.6.2.0 (03/24/2014)
|
|
321
|
+
|
|
322
|
+
* This patch release improves webserver detection on Heroku and adds in some c extension protections. A oboe-heroku gem release will follow this release.
|
|
323
|
+
|
|
324
|
+
# oboe 2.6.1.0 (03/12/2014)
|
|
325
|
+
|
|
326
|
+
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.
|
|
327
|
+
|
|
328
|
+
* Support delayed Reporter Initialization for Forking Webservers
|
|
329
|
+
* README syntax fixes
|
|
330
|
+
|
|
331
|
+
# oboe 2.5.0.7 (02/2013/2014)
|
|
332
|
+
|
|
333
|
+
* Added new Redis redis-rb gem (>= 3.0.0) instrumentation
|
|
334
|
+
* Fix a SampleSource bitmask high bit issue
|
|
335
|
+
* Expanded __Init reports
|
|
336
|
+
* Fix Ruby standalone returning nil X-Trace headers (1B000000...)
|
|
337
|
+
* Test against Ruby 2.1.0 on TravisCI
|
|
338
|
+
* Fix errant Oboe::Config warning
|
|
339
|
+
|
|
340
|
+
# oboe 2.4.0.1 (01/12/2013)
|
|
341
|
+
|
|
342
|
+
* Report SampleRate & SampleSource per updated SWIG API
|
|
343
|
+
* Change OboeHeroku __Init Key
|
|
344
|
+
* Remove oboe_fu artifacts
|
|
345
|
+
* CodeClimate Initiated improvements
|
|
346
|
+
* Remove SSL connection requirement from Net::HTTP tests
|
|
347
|
+
* oboe.gemspec doesn't specify Ruby 1.8 json dependency
|
|
348
|
+
* add config to blacklist tracing of actions (thanks @nathantsoi!)
|
|
349
|
+
* Report the application server used
|
|
350
|
+
* Support Oboe::Config.merge! and warn on non-existent (thanks @adamjt!)
|
|
351
|
+
|
|
352
|
+
# oboe 2.3.4.1 (11/21/2013)
|
|
353
|
+
|
|
354
|
+
* Stacks that use a caching system like Varnish could see corrupted traces; fixed.
|
|
355
|
+
|
|
356
|
+
# oboe 2.3.3.7 (11/06/2013)
|
|
357
|
+
|
|
358
|
+
* Rename the _Init layer to "rack"
|
|
359
|
+
* Decode URLS when reporting them
|
|
360
|
+
* Resque layer naming split into 1) client queuing of a job: 'resque-client', 2) Resque worker running a job: 'resque-worker'
|
|
361
|
+
* Fix for an extension load error and some refactoring of functionality into a base module (OboeBase)
|
|
362
|
+
* Improved and more resilient method profiling
|
|
363
|
+
* Further refactoring for Ruby 2.0 support
|
|
364
|
+
* Track the version of the instrumentation installed
|
|
365
|
+
|
|
366
|
+
# oboe 2.3.2 (10/22/2013)
|
|
367
|
+
|
|
368
|
+
* Backtrace collection can now be configured to skip certain components if a lighter-weight trace is desired
|
|
369
|
+
* On MRI Ruby the hostname of the Tracelyzer is now configurable via Oboe::Config[:reporter_host] (default is localhost)
|
|
370
|
+
* Fix to MongoDb query identification
|
|
371
|
+
* Event building in the Rack layer optimized
|
|
372
|
+
* Renamed "sampling_rate" to be "sample_rate" for consistency
|
|
373
|
+
* More tests added and documentation in anticipation of our Ruby open-source initiative
|
|
374
|
+
|
|
375
|
+
# oboe 2.2.6 (09/27/2013)
|
|
376
|
+
|
|
377
|
+
* Query Privacy now fully supported; can configure the app to not send SQL parameters if needed
|
|
378
|
+
* Configuring the local sample rate now supports 1e6 notation
|
|
379
|
+
* Improved log messaging if a gem dependency is missing
|
|
380
|
+
* Now reporting HTTPStatus on http client calls
|
|
381
|
+
* Heroku - the start time when a request hits the load balancer now captured
|
|
382
|
+
|
|
383
|
+
# oboe 2.2.0 (09/12/2013)
|
|
384
|
+
|
|
385
|
+
* Initial support for Rails 4
|
|
386
|
+
* Various internal reporting fixes and improvements
|
|
387
|
+
* Fix for auto sampling rate
|
|
388
|
+
|
|
389
|
+
# oboe 2.1.4 (08/01/2013)
|
|
390
|
+
|
|
391
|
+
* Integration support for AppView Web
|
|
392
|
+
|
|
393
|
+
# oboe 2.1.3 (07/16/2013)
|
|
394
|
+
|
|
395
|
+
* Allow _Access Key_ assignment via Environment variable: TRACEVIEW_CUUID
|
|
396
|
+
|
|
397
|
+
# oboe 2.1.1
|
|
398
|
+
|
|
399
|
+
* The gem now logs via a standard Ruby logger: Oboe.logger
|
|
400
|
+
* Add in rspec tests
|
|
401
|
+
* JRuby now supports Smart Tracing
|
|
402
|
+
* Fixed an invalid Profile name in ActionView Partial tracing
|
|
403
|
+
|
|
404
|
+
# oboe 1.4.2.2
|
|
405
|
+
|
|
406
|
+
* Rack - add handling for potential nil result
|
|
407
|
+
|
|
408
|
+
# oboe 1.4.2
|
|
409
|
+
|
|
410
|
+
* Cassandra - ensure all keys are captured when reporting exceptions
|
|
411
|
+
* JRuby detection fix
|
|
412
|
+
|
|
413
|
+
# oboe 1.4.1.2
|
|
414
|
+
|
|
415
|
+
* HTTP keys now captured at Rack level instead of Rails
|
|
416
|
+
* RUM templates are now pre-loaded
|
|
417
|
+
* Improved layer agnostic info event reporting
|
|
418
|
+
|
|
419
|
+
# oboe 1.4.0.2
|
|
420
|
+
|
|
421
|
+
* Resque support
|
|
422
|
+
* Fix Rails 2 bug where SET and SHOW could result in recursive calls
|
|
423
|
+
* Memcache - multi-get calls now report a total for number of keys and number
|
|
424
|
+
of hits
|
|
425
|
+
* Configuration - added ability to identify components to skip from
|
|
426
|
+
instrumentation
|
|
427
|
+
* Configuration - sending Resque parameters can be skipped if privacy an issue.
|
|
428
|
+
|
|
429
|
+
# oboe 1.3.9.1
|
|
430
|
+
|
|
431
|
+
* Add in Rack instrumentation
|
|
432
|
+
* Fix Function profiling of class methods bug
|
|
433
|
+
* Add backtraces to Cassandra and Mongo operations
|
|
434
|
+
* Rename the "render" layer to "actionview"
|
|
435
|
+
|
|
436
|
+
# oboe 1.3.8
|
|
437
|
+
|
|
438
|
+
* More comprehensive JRuby support
|
|
439
|
+
|
|
440
|
+
# oboe 1.3.7
|
|
441
|
+
|
|
442
|
+
* Added Moped driver instrumentation (Mongo/Mongoid)
|
|
443
|
+
|
|
444
|
+
# oboe 1.3.6
|
|
445
|
+
|
|
446
|
+
* Added Rails ActionView partial and collection rendering instrumentation
|
|
447
|
+
|
|
448
|
+
# oboe 1.3.5
|
|
449
|
+
|
|
450
|
+
* Added cassandra instrumentation
|
|
451
|
+
|
|
452
|
+
# oboe 1.3.4
|
|
453
|
+
|
|
454
|
+
* Added mongo-ruby-driver support
|
|
455
|
+
|
|
456
|
+
# oboe 1.3.3
|
|
457
|
+
|
|
458
|
+
* Updated RUM instrumentation templates
|
|
459
|
+
|
|
460
|
+
# oboe 1.3.2
|
|
461
|
+
|
|
462
|
+
* Fix a case when the RUM instrumentation header/footer methods would not
|
|
463
|
+
return JS output, depending on how the way they were called from HAML.
|
|
464
|
+
|
|
465
|
+
# oboe 1.3.1
|
|
466
|
+
|
|
467
|
+
* Support for RUM instrumentation.
|
|
468
|
+
Fix for certain cases where exceptions were not properly propagated up to Rails
|
|
469
|
+
error handlers.
|
|
470
|
+
|
|
471
|
+
# oboe 1.3.0
|
|
472
|
+
|
|
473
|
+
* The oboe and oboe_fu gems have been merged to simplify installation. The
|
|
474
|
+
final oboe_fu gem (1.3.0) simply calls "require 'oboe'" now for backwards
|
|
475
|
+
compatibility.
|
|
476
|
+
* Please note our updated installation instructions for the new location of
|
|
477
|
+
Ruby oboe API methods.
|
|
478
|
+
* Our gem now successfully installs even if your platform does not have our
|
|
479
|
+
base packages (liboboe) installed, so you can deploy to environments with or
|
|
480
|
+
without TraceView support.
|
|
481
|
+
|
|
482
|
+
# oboe_fu 1.2.1
|
|
483
|
+
|
|
484
|
+
* Support for instrumenting the dalli module.
|
|
485
|
+
|
|
486
|
+
# oboe_fu 1.2.0
|
|
487
|
+
|
|
488
|
+
* Support for Rails 2.3, 3.0, 3.1, and 3.2.
|
|
489
|
+
|
|
490
|
+
|
data/CONFIG.md
ADDED
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
# TraceView Gem Configuration
|
|
2
|
+
|
|
3
|
+
## Environment Variables
|
|
4
|
+
|
|
5
|
+
The following environment variables are detected by the traceview gem:
|
|
6
|
+
|
|
7
|
+
* `IGNORE_TRACEVIEW_WARNING` - tells the traceview gem to __not__ output the _missing TraceView libraries_ message on stack initialization
|
|
8
|
+
|
|
9
|
+
* `TRACEVIEW_GEM_VERBOSE` - sets the verbose flag (`TraceView::Config[:verbose]`) early in the gem loading process which may output valuable information
|
|
10
|
+
|
|
11
|
+
## TraceView::Config
|
|
12
|
+
|
|
13
|
+
`TraceView::Config` is a nested hash used by the traceview gem to store preferences and switches.
|
|
14
|
+
|
|
15
|
+
See [this Rails generator template file](https://github.com/appneta/oboe-ruby/blob/master/lib/rails/generators/traceview/templates/traceview_initializer.rb) for documentation on all of the supported values.
|
|
16
|
+
|
data/Gemfile
ADDED
|
@@ -0,0 +1,95 @@
|
|
|
1
|
+
source 'https://rubygems.org'
|
|
2
|
+
|
|
3
|
+
group :development, :test do
|
|
4
|
+
gem 'minitest', "5.5.1"
|
|
5
|
+
gem 'minitest-reporters'
|
|
6
|
+
gem 'minitest-debugger', :require => false
|
|
7
|
+
gem 'rack-test'
|
|
8
|
+
gem 'puma'
|
|
9
|
+
if RUBY_VERSION < '1.9.3'
|
|
10
|
+
# i18n 0.7.0 dropped support for Ruby 1.9.2 and older. ActiveSupport
|
|
11
|
+
# depends on i18n 0.7.0 since v 4.0.5. For < 1.9.2 Ruby support, lock
|
|
12
|
+
# down to these versions to maintain functionality.
|
|
13
|
+
gem 'i18n', '< 0.7.0'
|
|
14
|
+
gem 'activesupport', '< 4.0.5'
|
|
15
|
+
gem 'appraisal'
|
|
16
|
+
else
|
|
17
|
+
gem 'appraisal'
|
|
18
|
+
end
|
|
19
|
+
end
|
|
20
|
+
|
|
21
|
+
group :development do
|
|
22
|
+
gem 'ruby-debug', :platforms => [ :mri_18, :jruby ]
|
|
23
|
+
gem 'debugger', :platform => :mri_19
|
|
24
|
+
gem 'byebug', :platforms => [ :mri_20, :mri_21, :mri_22 ]
|
|
25
|
+
# gem 'perftools.rb', :platforms => [ :mri_20, :mri_21 ], :require => 'perftools'
|
|
26
|
+
if RUBY_VERSION > '1.8.7'
|
|
27
|
+
gem 'pry'
|
|
28
|
+
gem 'pry-byebug', :platforms => [ :mri_20, :mri_21, :mri_22 ]
|
|
29
|
+
else
|
|
30
|
+
gem 'pry', '0.9.12.4'
|
|
31
|
+
end
|
|
32
|
+
end
|
|
33
|
+
|
|
34
|
+
# Instrumented gems
|
|
35
|
+
gem 'dalli'
|
|
36
|
+
gem 'memcache-client'
|
|
37
|
+
gem 'cassandra'
|
|
38
|
+
gem 'mongo'
|
|
39
|
+
gem 'resque'
|
|
40
|
+
gem 'redis'
|
|
41
|
+
gem 'faraday'
|
|
42
|
+
gem 'httpclient'
|
|
43
|
+
gem 'excon'
|
|
44
|
+
gem 'typhoeus'
|
|
45
|
+
gem 'sequel'
|
|
46
|
+
if RUBY_VERSION >= '1.9.3'
|
|
47
|
+
# rest-client depends on mime-types gem which only supports
|
|
48
|
+
# ruby 1.9.3 and up
|
|
49
|
+
gem 'rest-client'
|
|
50
|
+
end
|
|
51
|
+
|
|
52
|
+
# Database adapter gems needed by sequel
|
|
53
|
+
if defined?(JRUBY_VERSION)
|
|
54
|
+
gem 'jdbc-postgresql'
|
|
55
|
+
gem 'jdbc-mysql'
|
|
56
|
+
else
|
|
57
|
+
gem 'mysql'
|
|
58
|
+
gem 'mysql2'
|
|
59
|
+
if RUBY_VERSION < '1.9.3'
|
|
60
|
+
gem 'pg', '0.17.1'
|
|
61
|
+
else
|
|
62
|
+
gem 'pg'
|
|
63
|
+
end
|
|
64
|
+
end
|
|
65
|
+
|
|
66
|
+
if RUBY_VERSION >= '1.9'
|
|
67
|
+
gem 'moped'
|
|
68
|
+
gem 'eventmachine'
|
|
69
|
+
gem 'em-synchrony'
|
|
70
|
+
gem 'em-http-request'
|
|
71
|
+
end
|
|
72
|
+
|
|
73
|
+
unless defined?(JRUBY_VERSION)
|
|
74
|
+
gem 'memcached', '1.7.2' if RUBY_VERSION < '2.0.0'
|
|
75
|
+
gem 'bson_ext' # For Mongo, Yours Truly
|
|
76
|
+
end
|
|
77
|
+
|
|
78
|
+
# Instrumented Frameworks
|
|
79
|
+
|
|
80
|
+
if defined?(JRUBY_VERSION)
|
|
81
|
+
gem 'sinatra', :require => false
|
|
82
|
+
else
|
|
83
|
+
gem 'sinatra'
|
|
84
|
+
end
|
|
85
|
+
|
|
86
|
+
if RUBY_VERSION >= '1.9.3'
|
|
87
|
+
gem 'padrino', '0.12.0'
|
|
88
|
+
gem 'grape'
|
|
89
|
+
gem 'bson'
|
|
90
|
+
else
|
|
91
|
+
gem 'bson', '1.10.2'
|
|
92
|
+
end
|
|
93
|
+
|
|
94
|
+
gemspec
|
|
95
|
+
|