Skip to content

Commit 6b84a02

Browse files
author
Artur Sulej
committed
Config flag controlling if additional spans are emitted (queue, run_query, decode)
1 parent d2c9e47 commit 6b84a02

File tree

1 file changed

+25
-22
lines changed

1 file changed

+25
-22
lines changed

lib/spandex_ecto/ecto_logger.ex

Lines changed: 25 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,7 @@ defmodule SpandexEcto.EctoLogger do
2121
tracer = config[:tracer] || raise "tracer is a required option for #{inspect(__MODULE__)}"
2222
service = config[:service] || :ecto
2323
truncate = config[:truncate] || 5000
24+
emit_detailed_spans = config[:emit_detailed_spans] || true
2425

2526
if tracer.current_trace_id() do
2627
now = :os.system_time(:nano_seconds)
@@ -58,34 +59,36 @@ defmodule SpandexEcto.EctoLogger do
5859

5960
report_error(tracer, log_entry)
6061

61-
if queue_time != 0 do
62-
tracer.start_span("queue")
63-
tracer.update_span(service: service, start: start, completion_time: start + queue_time)
64-
tracer.finish_span()
65-
end
62+
if emit_detailed_spans do
63+
if queue_time != 0 do
64+
tracer.start_span("queue")
65+
tracer.update_span(service: service, start: start, completion_time: start + queue_time)
66+
tracer.finish_span()
67+
end
6668

67-
if query_time != 0 do
68-
tracer.start_span("run_query")
69+
if query_time != 0 do
70+
tracer.start_span("run_query")
6971

70-
tracer.update_span(
71-
service: service,
72-
start: start + queue_time,
73-
completion_time: start + queue_time + query_time
74-
)
72+
tracer.update_span(
73+
service: service,
74+
start: start + queue_time,
75+
completion_time: start + queue_time + query_time
76+
)
7577

76-
tracer.finish_span()
77-
end
78+
tracer.finish_span()
79+
end
7880

79-
if decoding_time != 0 do
80-
tracer.start_span("decode")
81+
if decoding_time != 0 do
82+
tracer.start_span("decode")
8183

82-
tracer.update_span(
83-
service: service,
84-
start: start + queue_time + query_time,
85-
completion_time: now
86-
)
84+
tracer.update_span(
85+
service: service,
86+
start: start + queue_time + query_time,
87+
completion_time: now
88+
)
8789

88-
tracer.finish_span()
90+
tracer.finish_span()
91+
end
8992
end
9093

9194
tracer.finish_span()

0 commit comments

Comments
 (0)