dotnet / aspire

Tools, templates, and packages to accelerate building observable, production-ready apps
https://learn.microsoft.com/dotnet/aspire
MIT License
3.91k stars 475 forks source link

Debugger randomly "breaking" when starting .NET Aspire application in VSCode #6719

Open mitchdenny opened 3 days ago

mitchdenny commented 3 days ago

Is there an existing issue for this?

Describe the bug

When starting a .NET Aspire application in VSCode in the debugger the debugger randomly stops execution. The code is typically [External code]:

Image

I have seen what I think is the same underlying issue occur a little bit later after the apphost/dashboard has started and execution pauses for the debugger but not code is shown anywhere. I'm not entirely sure what the cause is yet.

Expected Behavior

Debugger should only stop where we expect it to.

Steps To Reproduce

Cloned down the .NET Aspire repo and launched the WaitFor playground in VSCode under the debugger.

Exceptions (if any)

No response

.NET Version info

.NET SDK: Version: 9.0.100 Commit: 59db016f11 Workload version: 9.0.100-manifests.3068a692 MSBuild version: 17.12.7+5b8665660

Runtime Environment: OS Name: debian OS Version: 12 OS Platform: Linux RID: linux-x64 Base Path: /usr/share/dotnet/sdk/9.0.100/

.NET workloads installed: There are no installed workloads to display. Configured to use loose manifests when installing new manifests.

Host: Version: 9.0.0 Architecture: x64 Commit: 9d5a6a9aa4

.NET SDKs installed: 8.0.403 [/usr/share/dotnet/sdk] 9.0.100 [/usr/share/dotnet/sdk]

.NET runtimes installed: Microsoft.AspNetCore.App 8.0.10 [/usr/share/dotnet/shared/Microsoft.AspNetCore.App] Microsoft.AspNetCore.App 9.0.0 [/usr/share/dotnet/shared/Microsoft.AspNetCore.App] Microsoft.NETCore.App 8.0.10 [/usr/share/dotnet/shared/Microsoft.NETCore.App] Microsoft.NETCore.App 9.0.0 [/usr/share/dotnet/shared/Microsoft.NETCore.App]

Other architectures found: None

Environment variables: DOTNET_ROOT [/usr/share/dotnet]

global.json file: /workspaces/aspire/global.json

Learn more: https://aka.ms/dotnet/info

Download .NET: https://aka.ms/dotnet/download

Anything else?

I am using a devcontainer but not sure this is relevant.

davidfowl commented 3 days ago

cc @WardenGnaw

WardenGnaw commented 3 days ago

Can you share the debugger logs if you go to Settings (Ctrl + ,) and search for csharp.debug.logging.diagnosticsLog.protocolMessages

Image

The output should appear in the Debug Console.

mitchdenny commented 2 days ago

@WardenGnaw I'll do this and once it happens again I'll share it with you.

aaronpowell commented 2 days ago

I've managed to create a pretty consistent scenario in which I hit this problem and did a recording of it - https://microsoftapc-my.sharepoint.com/:v:/g/personal/aapowell_microsoft_com/ETy04zg9UPpDp9YUQY8M0UcBSDWS8H-y-_F0AaLgzQEecg?e=UWOE80

I can share the logs from the C# extension too if desired