Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

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

Open
1 task done
mitchdenny opened this issue Nov 18, 2024 · 10 comments
Open
1 task done
Assignees
Labels
area-tooling external Issues that represent work that's external to this repo. vs-code Issues related to vs code tooling for aspire
Milestone

Comments

@mitchdenny
Copy link
Member

Is there an existing issue for this?

  • I have searched the existing issues

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 davidfowl added area-tooling vs-code Issues related to vs code tooling for aspire labels Nov 18, 2024
@davidfowl
Copy link
Member

cc @WardenGnaw

@WardenGnaw
Copy link

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.

@joperezr joperezr added the untriaged New issue has not been triaged label Nov 19, 2024
@mitchdenny
Copy link
Member Author

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

@joperezr joperezr added this to the Backlog milestone Nov 20, 2024
@joperezr joperezr added external Issues that represent work that's external to this repo. and removed untriaged New issue has not been triaged labels Nov 20, 2024
@aaronpowell
Copy link
Contributor

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

@mitchdenny
Copy link
Member Author

@aaronpowell it would be good if you can share the logs. @WardenGnaw FYI

@aaronpowell
Copy link
Contributor

The only logs I could find were the ones that got dumped to the debug window, is there more that can be grabbed?

@mitchdenny
Copy link
Member Author

If you turn on this setting the output window should container more information:

#6719 (comment)

@WardenGnaw
Copy link

@mitchdenny Sorry, this is on my pending worklist, @aaronpowell provided an amazing video with clear instructions on how to reproduce it but haven't had the cycles to try it out.

The repro is better than just investigating the logs from the Debug Console if I can get the same issue occuring.

@aaronpowell
Copy link
Contributor

@WardenGnaw https://github.com/communityToolkit/aspire is the GitHub repo that I was using in the recording, if you want to try the exact codebase

@WardenGnaw
Copy link

WardenGnaw commented Nov 25, 2024

I was able to reproduce it, my current hunch is that the service that synchronizes all the Aspire Processes is in the middle of sending pause to other processes as it hit a breakpoint in the first debug session. Then when the UI restarts the debug session, its still emitting pause to synchronize that first breakpoint.

Also validated that this was not an issue in VS, so this should be VS Code specific.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area-tooling external Issues that represent work that's external to this repo. vs-code Issues related to vs code tooling for aspire
Projects
None yet
Development

No branches or pull requests

5 participants