appoptics_apm 4.8.1 → 4.10.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (53) hide show
  1. checksums.yaml +4 -4
  2. data/.gitignore +4 -1
  3. data/.travis.yml +50 -28
  4. data/CONFIG.md +1 -1
  5. data/Gemfile +6 -6
  6. data/README.md +1 -1
  7. data/appoptics_apm.gemspec +4 -1
  8. data/examples/SDK/01_basic_tracing.rb +0 -2
  9. data/ext/oboe_metal/README.md +69 -0
  10. data/ext/oboe_metal/noop/noop.c +2 -1
  11. data/ext/oboe_metal/src/VERSION +1 -1
  12. data/ext/oboe_metal/src/bson/bson.h +105 -105
  13. data/ext/oboe_metal/src/bson/platform_hacks.h +10 -10
  14. data/ext/oboe_metal/src/oboe.h +104 -73
  15. data/ext/oboe_metal/src/oboe.hpp +103 -61
  16. data/ext/oboe_metal/src/oboe_wrap.cxx +1470 -314
  17. data/lib/appoptics_apm.rb +1 -3
  18. data/lib/appoptics_apm/api.rb +0 -1
  19. data/lib/appoptics_apm/api/tracing.rb +4 -0
  20. data/lib/appoptics_apm/config.rb +16 -5
  21. data/lib/appoptics_apm/frameworks/padrino.rb +6 -36
  22. data/lib/appoptics_apm/frameworks/rails.rb +0 -1
  23. data/lib/appoptics_apm/frameworks/rails/inst/action_controller.rb +5 -5
  24. data/lib/appoptics_apm/frameworks/rails/inst/action_controller6.rb +50 -0
  25. data/lib/appoptics_apm/frameworks/rails/inst/action_view.rb +11 -24
  26. data/lib/appoptics_apm/frameworks/rails/inst/active_record.rb +3 -3
  27. data/lib/appoptics_apm/frameworks/rails/inst/connection_adapters/utils.rb +1 -1
  28. data/lib/appoptics_apm/frameworks/rails/inst/connection_adapters/utils5x.rb +1 -1
  29. data/lib/appoptics_apm/frameworks/sinatra.rb +3 -32
  30. data/lib/appoptics_apm/inst/curb.rb +6 -6
  31. data/lib/appoptics_apm/inst/faraday.rb +16 -4
  32. data/lib/appoptics_apm/inst/logger_formatter.rb +4 -3
  33. data/lib/appoptics_apm/inst/rack.rb +11 -11
  34. data/lib/appoptics_apm/oboe_init_options.rb +17 -4
  35. data/lib/appoptics_apm/sdk/tracing.rb +118 -0
  36. data/lib/appoptics_apm/support/transaction_metrics.rb +1 -0
  37. data/lib/appoptics_apm/support/transaction_settings.rb +40 -15
  38. data/lib/appoptics_apm/support/x_trace_options.rb +110 -0
  39. data/lib/appoptics_apm/version.rb +2 -2
  40. data/lib/appoptics_apm/xtrace.rb +7 -7
  41. data/lib/rails/generators/appoptics_apm/templates/appoptics_apm_initializer.rb +37 -12
  42. metadata +7 -15
  43. data/Rakefile +0 -229
  44. data/build_gem.sh +0 -15
  45. data/build_gem_upload_to_packagecloud.sh +0 -20
  46. data/lib/appoptics_apm/api/profiling.rb +0 -203
  47. data/lib/appoptics_apm/frameworks/rails/inst/action_controller3.rb +0 -55
  48. data/lib/appoptics_apm/frameworks/rails/inst/action_view_30.rb +0 -50
  49. data/lib/appoptics_apm/legacy_method_profiling.rb +0 -90
  50. data/lib/appoptics_apm/method_profiling.rb +0 -33
  51. data/lib/oboe/README +0 -2
  52. data/lib/oboe/backward_compatibility.rb +0 -80
  53. data/lib/oboe/inst/rack.rb +0 -11
data/lib/oboe/README DELETED
@@ -1,2 +0,0 @@
1
- This directory is kept for backward compatibility for applications
2
- making calls to Oboe modules.
@@ -1,80 +0,0 @@
1
- require 'appoptics_apm/thread_local'
2
-
3
- module Oboe
4
- extend AppOpticsAPMBase
5
- if AppOpticsAPM.loaded
6
- include Oboe_metal
7
- end
8
-
9
- #
10
- # Support for Oboe::API calls
11
- #
12
- module API
13
- include AppOpticsAPM::API
14
- extend AppOpticsAPM::ThreadLocal
15
- thread_local :deprecation_notified
16
-
17
- def self.method_missing(sym, *args, &blk)
18
- # Notify of deprecation only once
19
- unless @deprecated_notified
20
- AppOpticsAPM.logger.warn "[appoptics_apm/warn] Note that Oboe::API has been renamed to AppOpticsAPM::API. (#{sym}:#{args})"
21
- AppOpticsAPM.logger.warn '[appoptics_apm/warn] Oboe::API will be deprecated in a future version.'
22
- AppOpticsAPM.logger.warn "[appoptics_apm/warn] Caller: #{Kernel.caller[0]}"
23
- @deprecated_notified = true
24
- end
25
- AppOpticsAPM::API.send(sym, *args, &blk)
26
- end
27
- end
28
-
29
-
30
- #
31
- # Support for Oboe::Config calls
32
- #
33
- module Config
34
- extend AppOpticsAPM::ThreadLocal
35
- thread_local :deprecation_notified
36
-
37
- def self.method_missing(sym, *args)
38
- # Notify of deprecation only once
39
- unless @deprecated_notified
40
- AppOpticsAPM.logger.warn "[appoptics_apm/warn] Note that Oboe::Config has been renamed to AppOpticsAPM::Config. (#{sym}:#{args})"
41
- AppOpticsAPM.logger.warn '[appoptics_apm/warn] Oboe::Config will be deprecated in a future version.'
42
- AppOpticsAPM.logger.warn "[appoptics_apm/warn] Caller: #{Kernel.caller[0]}"
43
- @deprecated_notified = true
44
- end
45
- AppOpticsAPM::Config.send(sym, *args)
46
- end
47
- end
48
-
49
- #
50
- # Support for legacy Oboe::Ruby.load calls
51
- #
52
- module Ruby
53
- extend AppOpticsAPM::ThreadLocal
54
- thread_local :deprecation_notified
55
-
56
- def self.method_missing(sym, *args)
57
- # Notify of deprecation only once
58
- unless @deprecated_notified
59
- AppOpticsAPM.logger.warn "[appoptics_apm/warn] Note that Oboe::Ruby has been renamed to AppOpticsAPM::Ruby. (#{sym}:#{args})"
60
- AppOpticsAPM.logger.warn '[appoptics_apm/warn] Oboe::Ruby will be deprecated in a future version.'
61
- AppOpticsAPM.logger.warn "[appoptics_apm/warn] Caller: #{Kernel.caller[0]}"
62
- @deprecated_notified = true
63
- end
64
- AppOpticsAPM::Ruby.send(sym, *args)
65
- end
66
- end
67
- end
68
-
69
- #
70
- # Support for OboeMethodProfiling
71
- #
72
- module OboeMethodProfiling
73
- def self.included(klass)
74
- klass.extend ClassMethods
75
- end
76
-
77
- module ClassMethods
78
- include AppOpticsAPMMethodProfiling::ClassMethods
79
- end
80
- end
@@ -1,11 +0,0 @@
1
- require 'appoptics_apm/inst/rack'
2
-
3
- module Oboe
4
- class Rack < AppOpticsAPM::Rack
5
- # This simply makes Oboe::Rack available (and a clone of AppOpticsAPM::Rack) for
6
- # backward compatibility
7
- #
8
- # Provided for pre-existing apps (sinatra, padrino, grape etc..) that may still
9
- # call `use Oboe::Rack`
10
- end
11
- end