Skip to content

Report LSP daemon lifecycle telemetry - #84652

Merged
dibarbet merged 1 commit into
dotnet:mainfrom
dibarbet:dibarbet-add-daemon-telemetry
Jul 28, 2026
Merged

dibarbet merged 1 commit into
dotnet:mainfrom
dibarbet:dibarbet-add-daemon-telemetry

Conversation

@dibarbet

@dibarbet dibarbet commented Jul 27, 2026

Copy link
Copy Markdown
Member

Summary

  • report when the Roslyn LSP server successfully launches in daemon mode
  • report daemon client connections and disconnections using the standard Roslyn telemetry API

Test plan

  • dotnet test src\LanguageServer\Microsoft.CodeAnalysis.LanguageServer.UnitTests\Microsoft.CodeAnalysis.LanguageServer.UnitTests.csproj --filter FullyQualifiedName~LanguageServerDaemonTests --nologo
Microsoft Reviewers: Open in CodeFlow

Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>

Copilot-Session: 8c31ec18-3f1a-4ff5-9371-16432a7799e9
Copilot AI review requested due to automatic review settings July 27, 2026 23:45
@dibarbet
dibarbet requested a review from a team as a code owner July 27, 2026 23:45
@azure-pipelines

Copy link
Copy Markdown
Azure Pipelines:
Successfully started running 2 pipeline(s).
There may be pipelines that require an authorized user to comment /azp run to run.

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR adds Roslyn internal telemetry hooks for the VS Code LSP daemon lifecycle, enabling event reporting when the daemon mode is entered and when daemon clients connect/disconnect.

Changes:

  • Add new FunctionId entries for VS Code LSP daemon start/connection/disconnection events.
  • Emit Microsoft.CodeAnalysis.Internal.Log.Logger.Log(...) telemetry events when the daemon is created, when a client connection is accepted, and when that client connection is disposed.
Show a summary per file
File Description
src/Workspaces/SharedUtilitiesAndExtensions/Compiler/Core/Log/FunctionId.cs Adds new FunctionId values (863–865) for daemon lifecycle telemetry.
src/LanguageServer/Microsoft.CodeAnalysis.LanguageServer/LanguageServer/NamedPipeDaemonConnectionSource.cs Logs daemon start and per-client connect/disconnect lifecycle events via Roslyn’s internal logging/telemetry pipeline.

Copilot's findings

  • Files reviewed: 2/2 changed files
  • Comments generated: 0

@dibarbet
dibarbet merged commit 4791936 into dotnet:main Jul 28, 2026
27 checks passed
@dibarbet
dibarbet deleted the dibarbet-add-daemon-telemetry branch July 28, 2026 18:25
@jjonescz jjonescz added this to the 18.11 milestone Aug 25, 2026
@dibarbet dibarbet mentioned this pull request Aug 28, 2026
6 tasks
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants