logasm-tracer 0.1.0 → 0.2.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/logasm/tracer.rb +6 -5
- data/lib/logasm/tracer/span.rb +4 -3
- data/lib/logasm/tracer/version.rb +1 -1
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 3028cba0194bb363a3f2935667763cd907e183f4
|
4
|
+
data.tar.gz: 0633bc43e7df50179a6fb500c6a27e68c391a070
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: '08ad18e49d2077a520beb2932edc47798a340145318b4856568fe2bcd369f01272d8da065b43dfacfdcd87a58c763f84503d06b9167b93531f164056dc21eb9e'
|
7
|
+
data.tar.gz: b27235706f5cb987c2f52c250addfb1125fde317a77b69f36aac20fd48c1545af0c2d3190cfcbd2df2b950f9abf08fadec0c9611667cd20c920add944e2850b7
|
data/lib/logasm/tracer.rb
CHANGED
@@ -20,22 +20,23 @@ class Logasm
|
|
20
20
|
# Starts a new span.
|
21
21
|
#
|
22
22
|
# @param operation_name [String] The operation name for the Span
|
23
|
-
# @param child_of [SpanContext] SpanContext that acts as a parent to
|
23
|
+
# @param child_of [SpanContext, Span] SpanContext that acts as a parent to
|
24
24
|
# the newly-started Span. If a Span instance is provided, its
|
25
|
-
#
|
25
|
+
# context is automatically substituted.
|
26
26
|
# @param start_time [Time] When the Span started, if not now
|
27
27
|
# @param tags [Hash] Tags to assign to the Span at start time
|
28
28
|
#
|
29
29
|
# @return [Span] The newly-started Span
|
30
|
-
def start_span(operation_name, child_of: nil, start_time: Time.now, **)
|
30
|
+
def start_span(operation_name, child_of: nil, start_time: Time.now, tags: {}, **)
|
31
31
|
context =
|
32
32
|
if child_of
|
33
|
-
|
33
|
+
parent_context = child_of.respond_to?(:context) ? child_of.context : child_of
|
34
|
+
SpanContext.create_from_parent_context(parent_context)
|
34
35
|
else
|
35
36
|
SpanContext.create_parent_context
|
36
37
|
end
|
37
38
|
|
38
|
-
Span.new(context, operation_name, @logger, start_time: start_time)
|
39
|
+
Span.new(context, operation_name, @logger, start_time: start_time, tags: tags)
|
39
40
|
end
|
40
41
|
|
41
42
|
# Inject a SpanContext into the given carrier
|
data/lib/logasm/tracer/span.rb
CHANGED
@@ -4,11 +4,12 @@ class Logasm
|
|
4
4
|
class Span
|
5
5
|
attr_reader :context
|
6
6
|
|
7
|
-
def initialize(context, operation_name, logger, start_time: Time.now)
|
7
|
+
def initialize(context, operation_name, logger, start_time: Time.now, tags: {})
|
8
8
|
@context = context
|
9
9
|
@operation_name = operation_name
|
10
10
|
@logger = logger
|
11
11
|
@start_time = start_time
|
12
|
+
@tags = tags
|
12
13
|
@logger.info "Span [#{@operation_name}] started", trace_information
|
13
14
|
end
|
14
15
|
|
@@ -18,7 +19,7 @@ class Logasm
|
|
18
19
|
# @param value [String, Numeric, Boolean] the value of the tag. If it's not
|
19
20
|
# a String, Numeric, or Boolean it will be encoded with to_s
|
20
21
|
def set_tag(key, value)
|
21
|
-
|
22
|
+
@tags = @tags.merge(key => value)
|
22
23
|
end
|
23
24
|
|
24
25
|
# Set a baggage item on the span
|
@@ -70,7 +71,7 @@ class Logasm
|
|
70
71
|
parent_id: @context.parent_id,
|
71
72
|
span_id: @context.span_id,
|
72
73
|
operation_name: @operation_name
|
73
|
-
}.merge(additional_fields)
|
74
|
+
}.merge(additional_fields).merge(@tags)
|
74
75
|
}
|
75
76
|
end
|
76
77
|
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: logasm-tracer
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.2.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- SaleMove TechMovers
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2017-03-
|
11
|
+
date: 2017-03-30 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|