From 057645815488012a620f4e6ec1809466a6148715 Mon Sep 17 00:00:00 2001 From: Rebecca Stambler Date: Sun, 26 Jan 2020 16:05:01 -0500 Subject: [PATCH] internal/lsp: log snapshot IDs, don't log context cancellation Updates golang/go#36772 Change-Id: Id6f1be9511f37865d5c6efcff10230e03724b27d Reviewed-on: https://go-review.googlesource.com/c/tools/+/216497 Run-TryBot: Rebecca Stambler TryBot-Result: Gobot Gobot Reviewed-by: Heschi Kreinick --- internal/lsp/diagnostics.go | 6 +++++- internal/lsp/telemetry/telemetry.go | 1 + 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/internal/lsp/diagnostics.go b/internal/lsp/diagnostics.go index 6f62167d0b..85e9416fe9 100644 --- a/internal/lsp/diagnostics.go +++ b/internal/lsp/diagnostics.go @@ -36,6 +36,8 @@ func (s *Server) diagnose(ctx context.Context, snapshot source.Snapshot) { ctx, done := trace.StartSpan(ctx, "lsp:background-worker") defer done() + ctx = telemetry.Snapshot.With(ctx, snapshot.ID()) + // Diagnose all of the packages in the workspace. go func() { wsPackages, err := snapshot.WorkspacePackages(ctx) @@ -148,7 +150,9 @@ func (s *Server) publishReports(ctx context.Context, snapshot source.Snapshot, r URI: protocol.NewURI(fileID.URI), Version: fileID.Version, }); err != nil { - log.Error(ctx, "publishReports: failed to deliver diagnostic", err, telemetry.File) + if ctx.Err() == nil { + log.Error(ctx, "publishReports: failed to deliver diagnostic", err, telemetry.File) + } continue } // Update the delivered map. diff --git a/internal/lsp/telemetry/telemetry.go b/internal/lsp/telemetry/telemetry.go index 71c54a72a9..e55e278c14 100644 --- a/internal/lsp/telemetry/telemetry.go +++ b/internal/lsp/telemetry/telemetry.go @@ -25,6 +25,7 @@ const ( Package = tag.Key("package") PackagePath = tag.Key("package_path") Query = tag.Key("query") + Snapshot = tag.Key("snapshot") ) var (