<commit_before>This document outlines the best practices for reporting Visual Studio crashes and performance issues (poor responsiveness, hangs, etc.).

# Crashes

If you have a set of steps that reproduces the crash reliably, then first check to see if someone else has filed an issue for that scenario. You can search for existing issues on the [Developer Community site](https://developercommunity.visualstudio.com/).

If you can't find an existing issue but have reliable repro steps, then you can file a new issue describing those repro steps. Be sure to include:
- The language of the open projects (C#, C++, etc.)
- The kind of project (Console Application, ASP.NET, etc.)

If you're not sure what's causing your crashes or they seem random, then you can capture dumps locally each time Visual Studio crashes and attach those to feedback items. To save dumps locally when Visual Studio crashes, set the following registry entries:

```
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\Windows Error Reporting\LocalDumps\devenv.exe]
"DumpFolder"="C:\\Crashdumps"
"DumpCount"=dword:00000010
"DumpType"=dword:00000002
```

Then, use Visual Studio's "Report a Problem..." feature. It will allow you to attach the appropriate dump.

# Performance Issues

When diagnosing performance issues, the goal is to capture a performance trace while performing the slow/hanging action.

- If necessary, start a second Visual Studio instance (with no solution open) to capture the trace. You can target the data collection from the Visual Studio encountering the problem.
- Perform the action that is causing performance issues while the trace is recording. If typing is delayed, type during the trace. If opening a file is slow, open a bunch of files.
- Try to repeat the action and capture a trace for 30 seconds to 2 minutes.
- *File new feedback issues* instead of commenting on existing issues. This allows us to correctly deduplicate issues.<commit_msg>Updated Reporting Visual Studio crashes and performance issues (markdown)<commit_after>This document outlines the best practices for reporting Visual Studio crashes and performance issues (poor responsiveness, hangs, etc.). For a general overview of how to report problems in Visual Studio, see "[How to Report a Problem with Visual Studio 2017](https://docs.microsoft.com/en-us/visualstudio/ide/how-to-report-a-problem-with-visual-studio-2017)". This document adds additional guidance for gathering heap dumps / traces.

# Crashes

If you have a set of steps that reproduces the crash reliably, follow the steps in "[How to Report a Problem with Visual Studio 2017](https://docs.microsoft.com/en-us/visualstudio/ide/how-to-report-a-problem-with-visual-studio-2017)" and be sure to include:
- The language of the open projects (C#, C++, etc.)
- The kind of project (Console Application, ASP.NET, etc.)

If you're not sure what's causing your crashes or they seem random, then you can capture dumps locally each time Visual Studio crashes and attach those to separate feedback items. To save dumps locally when Visual Studio crashes, set the following registry entries:

```
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\Windows Error Reporting\LocalDumps\devenv.exe]
"DumpFolder"="C:\\Crashdumps"
"DumpCount"=dword:00000010
"DumpType"=dword:00000002
```

Then, use Visual Studio's "Report a Problem..." feature. It will allow you to attach the appropriate dump.

# Performance Issues

When diagnosing performance issues, the goal is to capture a performance trace while performing the slow/hanging action.

- If necessary, start a second Visual Studio instance (with no solution open) to capture the trace. You can target the data collection from the Visual Studio encountering the problem.
- Perform the action that is causing performance issues while the trace is recording. If typing is delayed, type during the trace. If opening a file is slow, open a bunch of files.
- Try to repeat the action and capture a trace for 30 seconds to 2 minutes.
- *File new feedback issues* instead of commenting on existing issues. This allows us to correctly deduplicate issues.
{'fraction_non_alphanumeric': 0.06391251518833536, 'fraction_numerical': 0.013122721749696233, 'mean_word_length': 4.748603351955308, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 3, 'https://': 3, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 2, 'word_list_counts': {'cursed_substrings.json': 1, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '7586756', 'n_tokens_mistral': 1094, 'n_tokens_neox': 987, 'n_words': 561}