scout_apm 2.1.19 → 2.1.20

Sign up to get free protection for your applications and to get access to all the features.
data/CHANGELOG.markdown CHANGED
@@ -1,3 +1,10 @@
1
+ # 2.1.20
2
+
3
+ * Add a `detailed_middleware` boolean configuration option to capture
4
+ per-middleware data, as opposed to the default of aggregating all middleware
5
+ together. This has a small amount of additional overhead, approximately
6
+ 10-15ms per request.
7
+
1
8
  # 2.1.19
2
9
 
3
10
  * Log all configuration settings at start when log level is debug
data/lib/scout_apm.rb CHANGED
@@ -75,7 +75,7 @@ require 'scout_apm/instruments/active_record'
75
75
  require 'scout_apm/instruments/action_controller_rails_2'
76
76
  require 'scout_apm/instruments/action_controller_rails_3_rails4'
77
77
  require 'scout_apm/instruments/middleware_summary'
78
- # require 'scout_apm/instruments/middleware_detailed' # Currently disabled functionality, see the file for details.
78
+ require 'scout_apm/instruments/middleware_detailed' # Disabled by default, see the file for more details
79
79
  require 'scout_apm/instruments/rails_router'
80
80
  require 'scout_apm/instruments/grape'
81
81
  require 'scout_apm/instruments/sinatra'
@@ -287,8 +287,13 @@ module ScoutApm
287
287
  install_instrument(ScoutApm::Instruments::ActionControllerRails2)
288
288
  when :rails3_or_4 then
289
289
  install_instrument(ScoutApm::Instruments::ActionControllerRails3Rails4)
290
- install_instrument(ScoutApm::Instruments::MiddlewareSummary)
291
290
  install_instrument(ScoutApm::Instruments::RailsRouter)
291
+
292
+ if config.value("detailed_middleware")
293
+ install_instrument(ScoutApm::Instruments::MiddlewareDetailed)
294
+ else
295
+ install_instrument(ScoutApm::Instruments::MiddlewareSummary)
296
+ end
292
297
  end
293
298
 
294
299
  install_instrument(ScoutApm::Instruments::ActiveRecord)
@@ -37,6 +37,7 @@ module ScoutApm
37
37
  'compress_payload',
38
38
  'config_file',
39
39
  'data_file',
40
+ 'detailed_middleware',
40
41
  'dev_trace',
41
42
  'direct_host',
42
43
  'disabled_instruments',
@@ -45,8 +46,8 @@ module ScoutApm
45
46
  'hostname',
46
47
  'ignore',
47
48
  'key',
48
- 'log_level',
49
49
  'log_file_path',
50
+ 'log_level',
50
51
  'monitor',
51
52
  'name',
52
53
  'profile',
@@ -129,6 +130,7 @@ module ScoutApm
129
130
  "monitor" => BooleanCoercion.new,
130
131
  "enable_background_jobs" => BooleanCoercion.new,
131
132
  "dev_trace" => BooleanCoercion.new,
133
+ "detailed_middleware" => BooleanCoercion.new,
132
134
  "ignore" => JsonCoercion.new,
133
135
  }
134
136
 
@@ -203,6 +205,7 @@ module ScoutApm
203
205
  class ConfigDefaults
204
206
  DEFAULTS = {
205
207
  'compress_payload' => true,
208
+ 'detailed_middleware' => false,
206
209
  'dev_trace' => false,
207
210
  'direct_host' => 'https://apm.scoutapp.com',
208
211
  'disabled_instruments' => [],
@@ -1,13 +1,11 @@
1
1
  # Inserts a new middleware between each actual middleware in the application,
2
2
  # so as to trace the time for each one.
3
3
  #
4
- # Currently disabled due to the overhead of this approach (~10-15ms per request
5
- # in practice). Instead, middleware as a whole are instrumented via the
6
- # MiddlewareSummary class.
4
+ # Currently disabled by default due to the overhead of this approach (~10-15ms
5
+ # per request in practice). Instead, middleware as a whole are instrumented
6
+ # via the MiddlewareSummary class.
7
7
  #
8
- # There will likely be a configuration flag to turn this on in favor of the
9
- # summary tracing in a future version of the agent, but this is not yet
10
- # implemented.
8
+ # Turn this on with the configuration setting `detailed_middleware` set to true
11
9
  module ScoutApm
12
10
  module Instruments
13
11
  class MiddlewareDetailed
@@ -1,4 +1,4 @@
1
1
  module ScoutApm
2
- VERSION = "2.1.19"
2
+ VERSION = "2.1.20"
3
3
  end
4
4
 
metadata CHANGED
@@ -1,7 +1,8 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: scout_apm
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.1.19
4
+ version: 2.1.20
5
+ prerelease:
5
6
  platform: ruby
6
7
  authors:
7
8
  - Derek Haynes
@@ -9,104 +10,118 @@ authors:
9
10
  autorequire:
10
11
  bindir: bin
11
12
  cert_chain: []
12
- date: 2016-12-29 00:00:00.000000000 Z
13
+ date: 2017-01-03 00:00:00.000000000 Z
13
14
  dependencies:
14
15
  - !ruby/object:Gem::Dependency
15
16
  name: minitest
16
17
  requirement: !ruby/object:Gem::Requirement
18
+ none: false
17
19
  requirements:
18
- - - ">="
20
+ - - ! '>='
19
21
  - !ruby/object:Gem::Version
20
22
  version: '0'
21
23
  type: :development
22
24
  prerelease: false
23
25
  version_requirements: !ruby/object:Gem::Requirement
26
+ none: false
24
27
  requirements:
25
- - - ">="
28
+ - - ! '>='
26
29
  - !ruby/object:Gem::Version
27
30
  version: '0'
28
31
  - !ruby/object:Gem::Dependency
29
32
  name: mocha
30
33
  requirement: !ruby/object:Gem::Requirement
34
+ none: false
31
35
  requirements:
32
- - - ">="
36
+ - - ! '>='
33
37
  - !ruby/object:Gem::Version
34
38
  version: '0'
35
39
  type: :development
36
40
  prerelease: false
37
41
  version_requirements: !ruby/object:Gem::Requirement
42
+ none: false
38
43
  requirements:
39
- - - ">="
44
+ - - ! '>='
40
45
  - !ruby/object:Gem::Version
41
46
  version: '0'
42
47
  - !ruby/object:Gem::Dependency
43
48
  name: pry
44
49
  requirement: !ruby/object:Gem::Requirement
50
+ none: false
45
51
  requirements:
46
- - - ">="
52
+ - - ! '>='
47
53
  - !ruby/object:Gem::Version
48
54
  version: '0'
49
55
  type: :development
50
56
  prerelease: false
51
57
  version_requirements: !ruby/object:Gem::Requirement
58
+ none: false
52
59
  requirements:
53
- - - ">="
60
+ - - ! '>='
54
61
  - !ruby/object:Gem::Version
55
62
  version: '0'
56
63
  - !ruby/object:Gem::Dependency
57
64
  name: m
58
65
  requirement: !ruby/object:Gem::Requirement
66
+ none: false
59
67
  requirements:
60
- - - ">="
68
+ - - ! '>='
61
69
  - !ruby/object:Gem::Version
62
70
  version: '0'
63
71
  type: :development
64
72
  prerelease: false
65
73
  version_requirements: !ruby/object:Gem::Requirement
74
+ none: false
66
75
  requirements:
67
- - - ">="
76
+ - - ! '>='
68
77
  - !ruby/object:Gem::Version
69
78
  version: '0'
70
79
  - !ruby/object:Gem::Dependency
71
80
  name: simplecov
72
81
  requirement: !ruby/object:Gem::Requirement
82
+ none: false
73
83
  requirements:
74
- - - ">="
84
+ - - ! '>='
75
85
  - !ruby/object:Gem::Version
76
86
  version: '0'
77
87
  type: :development
78
88
  prerelease: false
79
89
  version_requirements: !ruby/object:Gem::Requirement
90
+ none: false
80
91
  requirements:
81
- - - ">="
92
+ - - ! '>='
82
93
  - !ruby/object:Gem::Version
83
94
  version: '0'
84
95
  - !ruby/object:Gem::Dependency
85
96
  name: rake-compiler
86
97
  requirement: !ruby/object:Gem::Requirement
98
+ none: false
87
99
  requirements:
88
- - - ">="
100
+ - - ! '>='
89
101
  - !ruby/object:Gem::Version
90
102
  version: '0'
91
103
  type: :development
92
104
  prerelease: false
93
105
  version_requirements: !ruby/object:Gem::Requirement
106
+ none: false
94
107
  requirements:
95
- - - ">="
108
+ - - ! '>='
96
109
  - !ruby/object:Gem::Version
97
110
  version: '0'
98
111
  - !ruby/object:Gem::Dependency
99
112
  name: addressable
100
113
  requirement: !ruby/object:Gem::Requirement
114
+ none: false
101
115
  requirements:
102
- - - ">="
116
+ - - ! '>='
103
117
  - !ruby/object:Gem::Version
104
118
  version: '0'
105
119
  type: :development
106
120
  prerelease: false
107
121
  version_requirements: !ruby/object:Gem::Requirement
122
+ none: false
108
123
  requirements:
109
- - - ">="
124
+ - - ! '>='
110
125
  - !ruby/object:Gem::Version
111
126
  version: '0'
112
127
  description: Monitors Ruby apps and reports detailed metrics on performance to Scout.
@@ -118,8 +133,8 @@ extensions:
118
133
  - ext/rusage/extconf.rb
119
134
  extra_rdoc_files: []
120
135
  files:
121
- - ".gitignore"
122
- - ".rubocop.yml"
136
+ - .gitignore
137
+ - .rubocop.yml
123
138
  - CHANGELOG.markdown
124
139
  - Gemfile
125
140
  - LICENSE.md
@@ -267,27 +282,28 @@ files:
267
282
  homepage: https://github.com/scoutapp/scout_apm_ruby
268
283
  licenses:
269
284
  - Proprietary (See LICENSE.md)
270
- metadata: {}
271
285
  post_install_message:
272
286
  rdoc_options: []
273
287
  require_paths:
274
288
  - lib
275
289
  - data
276
290
  required_ruby_version: !ruby/object:Gem::Requirement
291
+ none: false
277
292
  requirements:
278
- - - ">="
293
+ - - ! '>='
279
294
  - !ruby/object:Gem::Version
280
295
  version: '0'
281
296
  required_rubygems_version: !ruby/object:Gem::Requirement
297
+ none: false
282
298
  requirements:
283
- - - ">="
299
+ - - ! '>='
284
300
  - !ruby/object:Gem::Version
285
301
  version: '0'
286
302
  requirements: []
287
303
  rubyforge_project: scout_apm
288
- rubygems_version: 2.5.1
304
+ rubygems_version: 1.8.23.2
289
305
  signing_key:
290
- specification_version: 4
306
+ specification_version: 3
291
307
  summary: Ruby application performance monitoring
292
308
  test_files:
293
309
  - test/data/config_test_1.yml
checksums.yaml DELETED
@@ -1,7 +0,0 @@
1
- ---
2
- SHA1:
3
- metadata.gz: 9c96b81ab9e23fab3fc75e9775a71820eeff30cd
4
- data.tar.gz: 290163e5b70f31c60e0b81fc9910a06940e96632
5
- SHA512:
6
- metadata.gz: 880a943dfb1962b22d1ff843966cac3d0eab48a0a3fe3054809fd8e0ffbded904ef7e3cf0e86ef85a76ddd02b2968d566513c8db9d29e661ec380b21d483fefb
7
- data.tar.gz: bc6802491669535de00a932310c070a004b275d19412cc745cf113654a7d2646ba6559cddd5859647b5d3709547b46a255e962cbbd31b60d967ab807dad60476