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

Discussion from runtime/issues/12506 #25529

Merged
merged 14 commits into from Aug 10, 2021
Merged

Discussion from runtime/issues/12506 #25529

merged 14 commits into from Aug 10, 2021

Conversation

jzabroski
Copy link
Contributor

dotnet/runtime#12506 (comment)

This article currently covers the verbose and (arguably, less common) way of using dotnet-trace to debug assembly loading issues, as most assembly loading issues likely occur when the generic IHostBuilder is initially called.

I debated rewriting the whole article to emphasize this use case, but I tempered that to simply get this documented with what I feel is the natural way to trace assembly loading events.

For the content, I elected to mostly use the docs @vitek-karas team has already written, here: https://github.com/dotnet/diagnostics/blob/main/documentation/dotnet-trace-instructions.md#using-dotnet-trace-to-launch-a-child-process-and-trace-it-from-startup

I realize copy-paste is not great, but I felt it was important to capture in this article the full flow of calling a new process. I also fixed some minor stuff like kbd escape tags.

Summary

Describe your changes here.

Fixes #Issue_Number (if available)

dotnet/runtime#12506 (comment)

This article currently covers the verbose and (arguably, less common) way of using dotnet-trace to debug assembly loading issues, as most assembly loading issues likely occur when the generic IHostBuilder is initially called.

I debated rewriting the whole article to emphasize this use case, but I tempered that to simply get this documented with what I feel is the natural way to trace assembly loading events.

For the content, I elected to mostly use the docs @vitek-karas team has already written, here: https://github.com/dotnet/diagnostics/blob/main/documentation/dotnet-trace-instructions.md#using-dotnet-trace-to-launch-a-child-process-and-trace-it-from-startup

I realize copy-paste is not great, but I felt it was important to capture in this article the full flow of calling a new process.  I also fixed some minor stuff like kbd escape tags.
@jzabroski jzabroski requested a review from a team as a code owner August 9, 2021 14:58
@dotnet-bot dotnet-bot added this to the August 2021 milestone Aug 9, 2021
Copy link
Contributor

@gewarren gewarren left a comment

Choose a reason for hiding this comment

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

Thanks for adding this.

docs/core/dependency-loading/collect-details.md Outdated Show resolved Hide resolved
docs/core/dependency-loading/collect-details.md Outdated Show resolved Hide resolved
docs/core/dependency-loading/collect-details.md Outdated Show resolved Hide resolved
docs/core/dependency-loading/collect-details.md Outdated Show resolved Hide resolved
docs/core/dependency-loading/collect-details.md Outdated Show resolved Hide resolved
docs/core/dependency-loading/collect-details.md Outdated Show resolved Hide resolved
jzabroski and others added 7 commits August 9, 2021 12:51
Co-authored-by: Genevieve Warren <24882762+gewarren@users.noreply.github.com>
Co-authored-by: Genevieve Warren <24882762+gewarren@users.noreply.github.com>
Co-authored-by: Genevieve Warren <24882762+gewarren@users.noreply.github.com>
Co-authored-by: Genevieve Warren <24882762+gewarren@users.noreply.github.com>
Co-authored-by: Genevieve Warren <24882762+gewarren@users.noreply.github.com>
Co-authored-by: Genevieve Warren <24882762+gewarren@users.noreply.github.com>
Co-authored-by: Genevieve Warren <24882762+gewarren@users.noreply.github.com>
@jzabroski
Copy link
Contributor Author

@gewarren Thanks for all the great suggestions, I believe I addressed them.

@josalem
Copy link
Contributor

josalem commented Aug 9, 2021

@jzabroski
Copy link
Contributor Author

Should this not just be a link to https://docs.microsoft.com/en-us/dotnet/core/diagnostics/dotnet-trace#launch-a-child-application-and-collect-a-trace-from-its-startup-using-dotnet-trace where this is already documented?
-- @josalem

I personally see that people want a set of steps to solve a specific problem/use case, which is how to debug assembly loading failures. The content is just ever so slightly different and tailored to the specific problem. I volunteered this PR because I get a lot of .NET developers asking for help on this topic because they find .NET Core/.NET 5 assembly binding very confusing ever since auto-generated binding redirects feature was removed ex ante legacy .NET 4.8. I can't even exaggerate when I say a lot. It outweighs any other question I get in my open source projects by a factor of 100.

Thanks for asking.

jzabroski and others added 2 commits August 9, 2021 14:39
Co-authored-by: David Pine <david.pine@microsoft.com>
Co-authored-by: David Pine <david.pine@microsoft.com>
@josalem
Copy link
Contributor

josalem commented Aug 9, 2021

CC @vitek-karas @elinor-fung for feedback on assembly loading

Copy link
Member

@vitek-karas vitek-karas left a comment

Choose a reason for hiding this comment

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

Thanks a lot!

Copy link
Contributor

@gewarren gewarren left a comment

Choose a reason for hiding this comment

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

Thanks for adding the link. I left a final few comments after looking at the preview of the article. Tip: you can batch the suggestions into one commit if you accept them on the "Files changed" tab of the PR.

docs/core/dependency-loading/collect-details.md Outdated Show resolved Hide resolved
docs/core/dependency-loading/collect-details.md Outdated Show resolved Hide resolved
docs/core/dependency-loading/collect-details.md Outdated Show resolved Hide resolved
docs/core/dependency-loading/collect-details.md Outdated Show resolved Hide resolved
docs/core/dependency-loading/collect-details.md Outdated Show resolved Hide resolved
docs/core/dependency-loading/collect-details.md Outdated Show resolved Hide resolved
docs/core/dependency-loading/collect-details.md Outdated Show resolved Hide resolved
docs/core/dependency-loading/collect-details.md Outdated Show resolved Hide resolved
Co-authored-by: Genevieve Warren <24882762+gewarren@users.noreply.github.com>
@jzabroski
Copy link
Contributor Author

@gewarren Thanks for the tip! I learned something new.

@gewarren gewarren merged commit 73c3863 into dotnet:main Aug 10, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

6 participants