go/internal/telemetry
Ian Cottrell c4206d458c internal/telemetry: change tracing to be event based
We no longer use the span as the core type of tracing, instead that is an
artifact of the exporter, and start and end tracing is just event based.
This both makes the interface normalized, and also means the null exporter case
is considerably cheaper in memory and cpu.
See below for benchstat changes

name                 old time/op    new time/op    delta
TracingNoExporter-8    4.19µs ±12%    2.71µs ±11%  -35.33%  (p=0.000 n=20+20)
Tracing-8              24.1µs ± 3%     5.1µs ±17%  -78.66%  (p=0.000 n=16+20)

name                 old alloc/op   new alloc/op   delta
TracingNoExporter-8    2.32kB ± 0%    0.40kB ± 0%  -82.76%  (p=0.000 n=20+20)
Tracing-8              6.32kB ± 0%    2.32kB ± 0%  -63.30%  (p=0.000 n=20+20)

name                 old allocs/op  new allocs/op  delta
TracingNoExporter-8      35.0 ± 0%      15.0 ± 0%  -57.14%  (p=0.000 n=20+20)
Tracing-8                 215 ± 0%        35 ± 0%  -83.72%  (p=0.000 n=20+20)

Change-Id: I3cf25871fa49584819504b5c19aa580e5dd03395
Reviewed-on: https://go-review.googlesource.com/c/tools/+/221740
Run-TryBot: Ian Cottrell <iancottrell@google.com>
TryBot-Result: Gobot Gobot <gobot@golang.org>
Reviewed-by: Emmanuel Odeke <emm.odeke@gmail.com>
2020-03-04 02:41:40 +00:00
..
export internal/telemetry: change tracing to be event based 2020-03-04 02:41:40 +00:00
log internal/telemetry: move the benchmarks to the main package 2020-03-03 22:57:05 +00:00
metric internal/telemetry/export/ocagent: attach timestamps to metrics 2019-10-24 07:31:07 +00:00
stats internal/lsp,internal/telemetry: correct stale docstrings 2020-01-15 14:25:42 +00:00
tag internal/telemetry: remove the concept of a Tagger 2020-03-03 22:56:24 +00:00
trace internal/telemetry: change tracing to be event based 2020-03-04 02:41:40 +00:00
unit internal/lsp,internal/telemetry: correct stale docstrings 2020-01-15 14:25:42 +00:00
bench_test.go internal/telemetry: change tracing to be event based 2020-03-04 02:41:40 +00:00
doc.go internal/lsp: split the telemetry library out 2019-08-15 21:28:02 +00:00
event.go internal/telemetry: change tracing to be event based 2020-03-04 02:41:40 +00:00
metric.go internal/telemetry: clean up the exporter api 2019-08-15 23:56:12 +00:00
tag.go internal/telemetry: remove the concept of a Tagger 2020-03-03 22:56:24 +00:00