skylight-core 4.0.0.alpha2 → 4.0.0.alpha3
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
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: dc9eb39c7b8b4247a019740d8ac1784ed1442ae33f20bfc04fe061be5151a8e3
|
4
|
+
data.tar.gz: 78c44b3fe3015152a7ebef7da37986e25bd87d48ddae853fdd7af77030dcb40b
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 6797bce1826972cba73f28d2f4c0c941fb3b9f6e593e022d6d58f7fccb155e9162055a0d3defc82aa790d8c2d4c308cd662ea9014dcdce19c3e8d3cf6eaaf201
|
7
|
+
data.tar.gz: 9831703c5ed2ecf9468c0b6ffde0237c04fe7f7abadb9c4eee9b4697730521a8a870cff9d42089edb571d3ff3ce96f16c017fbef132c4f6af0e9580b38a2ae05
|
@@ -20,7 +20,7 @@ module Skylight
|
|
20
20
|
end
|
21
21
|
|
22
22
|
def instrumenter
|
23
|
-
@instrumenter
|
23
|
+
defined?(@instrumenter) && @instrumenter
|
24
24
|
end
|
25
25
|
|
26
26
|
def correlation_header
|
@@ -37,10 +37,10 @@ module Skylight
|
|
37
37
|
|
38
38
|
# Start instrumenting
|
39
39
|
def start!(config = nil)
|
40
|
-
return
|
40
|
+
return instrumenter if instrumenter
|
41
41
|
|
42
42
|
const_get(:LOCK).synchronize do
|
43
|
-
return
|
43
|
+
return instrumenter if instrumenter
|
44
44
|
|
45
45
|
config ||= {}
|
46
46
|
config = config_class.load(config) unless config.is_a?(config_class)
|
@@ -66,13 +66,17 @@ module Skylight
|
|
66
66
|
false
|
67
67
|
end
|
68
68
|
|
69
|
+
def started?
|
70
|
+
!!instrumenter
|
71
|
+
end
|
72
|
+
|
69
73
|
# Stop instrumenting
|
70
74
|
def stop!
|
71
75
|
t { "stop!" }
|
72
76
|
|
73
77
|
const_get(:LOCK).synchronize do
|
74
78
|
t { "stop! synchronized" }
|
75
|
-
return unless
|
79
|
+
return unless instrumenter
|
76
80
|
# This is only really helpful for getting specs to pass.
|
77
81
|
@instrumenter.current_trace = nil
|
78
82
|
|
@@ -88,7 +92,7 @@ module Skylight
|
|
88
92
|
end
|
89
93
|
|
90
94
|
# Start a trace
|
91
|
-
def trace(endpoint = nil, cat = nil, title = nil, meta
|
95
|
+
def trace(endpoint = nil, cat = nil, title = nil, meta: nil, segment: nil)
|
92
96
|
unless instrumenter
|
93
97
|
return yield if block_given?
|
94
98
|
return
|
@@ -97,9 +101,9 @@ module Skylight
|
|
97
101
|
cat ||= DEFAULT_CATEGORY
|
98
102
|
|
99
103
|
if block_given?
|
100
|
-
instrumenter.trace(endpoint, cat, title, nil, meta, segment: segment) { |tr| yield tr }
|
104
|
+
instrumenter.trace(endpoint, cat, title, nil, meta: meta, segment: segment) { |tr| yield tr }
|
101
105
|
else
|
102
|
-
instrumenter.trace(endpoint, cat, title, nil, meta, segment: segment)
|
106
|
+
instrumenter.trace(endpoint, cat, title, nil, meta: meta, segment: segment)
|
103
107
|
end
|
104
108
|
end
|
105
109
|
|
@@ -120,7 +120,7 @@ module Skylight::Core
|
|
120
120
|
native_stop
|
121
121
|
end
|
122
122
|
|
123
|
-
def trace(endpoint, cat, title = nil, desc = nil, meta
|
123
|
+
def trace(endpoint, cat, title = nil, desc = nil, meta: nil, segment: nil)
|
124
124
|
# If a trace is already in progress, continue with that one
|
125
125
|
if (trace = @trace_info.current)
|
126
126
|
return yield(trace) if block_given?
|
@@ -128,7 +128,7 @@ module Skylight::Core
|
|
128
128
|
end
|
129
129
|
|
130
130
|
begin
|
131
|
-
trace = self.class.trace_class.new(self, endpoint, Util::Clock.nanos, cat, title, desc, meta, segment: segment)
|
131
|
+
trace = self.class.trace_class.new(self, endpoint, Util::Clock.nanos, cat, title, desc, meta: meta, segment: segment)
|
132
132
|
rescue Exception => e
|
133
133
|
log_error e.message
|
134
134
|
t { e.backtrace.join("\n") }
|
@@ -155,7 +155,7 @@ module Skylight::Core
|
|
155
155
|
end
|
156
156
|
|
157
157
|
def disabled?
|
158
|
-
@disabled
|
158
|
+
defined?(@disabled) && @disabled
|
159
159
|
end
|
160
160
|
|
161
161
|
def self.match?(string, regex)
|
@@ -78,8 +78,8 @@ module Skylight::Core
|
|
78
78
|
else
|
79
79
|
begin
|
80
80
|
t { "middleware beginning trace" }
|
81
|
-
trace = instrumentable.trace(endpoint_name(env), "app.rack.request", nil, endpoint_meta(env))
|
82
|
-
t { "middleware began trace=#{trace.uuid}" }
|
81
|
+
trace = instrumentable.trace(endpoint_name(env), "app.rack.request", nil, meta: endpoint_meta(env))
|
82
|
+
t { "middleware began trace=#{trace ? trace.uuid : nil}" }
|
83
83
|
|
84
84
|
resp = @app.call(env)
|
85
85
|
|
@@ -88,8 +88,8 @@ module Skylight::Core
|
|
88
88
|
else
|
89
89
|
resp
|
90
90
|
end
|
91
|
-
rescue Exception
|
92
|
-
t { "middleware exception: #{
|
91
|
+
rescue Exception => e
|
92
|
+
t { "middleware exception: #{e}\n#{e.backtrace.join("\n")}" }
|
93
93
|
trace.submit if trace
|
94
94
|
raise
|
95
95
|
end
|
data/lib/skylight/core/trace.rb
CHANGED
@@ -9,7 +9,7 @@ module Skylight::Core
|
|
9
9
|
attr_reader :instrumenter, :endpoint, :notifications, :meta
|
10
10
|
attr_accessor :uuid, :segment
|
11
11
|
|
12
|
-
def self.new(instrumenter, endpoint, start, cat, title = nil, desc = nil, meta
|
12
|
+
def self.new(instrumenter, endpoint, start, cat, title = nil, desc = nil, meta: nil, segment: nil)
|
13
13
|
uuid = SecureRandom.uuid
|
14
14
|
inst = native_new(normalize_time(start), uuid, endpoint, meta)
|
15
15
|
inst.uuid = uuid
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: skylight-core
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 4.0.0.
|
4
|
+
version: 4.0.0.alpha3
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Tilde, Inc.
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2019-01-10 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: activesupport
|
@@ -42,16 +42,16 @@ dependencies:
|
|
42
42
|
name: bundler
|
43
43
|
requirement: !ruby/object:Gem::Requirement
|
44
44
|
requirements:
|
45
|
-
- - "
|
45
|
+
- - ">="
|
46
46
|
- !ruby/object:Gem::Version
|
47
|
-
version:
|
47
|
+
version: 1.17.3
|
48
48
|
type: :development
|
49
49
|
prerelease: false
|
50
50
|
version_requirements: !ruby/object:Gem::Requirement
|
51
51
|
requirements:
|
52
|
-
- - "
|
52
|
+
- - ">="
|
53
53
|
- !ruby/object:Gem::Version
|
54
|
-
version:
|
54
|
+
version: 1.17.3
|
55
55
|
- !ruby/object:Gem::Dependency
|
56
56
|
name: puma
|
57
57
|
requirement: !ruby/object:Gem::Requirement
|
@@ -263,15 +263,14 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
263
263
|
requirements:
|
264
264
|
- - ">="
|
265
265
|
- !ruby/object:Gem::Version
|
266
|
-
version: 2.
|
266
|
+
version: '2.3'
|
267
267
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
268
268
|
requirements:
|
269
269
|
- - ">"
|
270
270
|
- !ruby/object:Gem::Version
|
271
271
|
version: 1.3.1
|
272
272
|
requirements: []
|
273
|
-
|
274
|
-
rubygems_version: 2.7.6
|
273
|
+
rubygems_version: 3.0.2
|
275
274
|
signing_key:
|
276
275
|
specification_version: 4
|
277
276
|
summary: The core methods of the Skylight profiler.
|