Skip to Content

Microsoft.diagnosticshub.diagnostics.collectionstartfailedhubexception | VALIDATED – EDITION |

Console.WriteLine($"Diagnostic collection failed: ex.Message"); if (ex.InnerException is UnauthorizedAccessException) Console.WriteLine("Try running Visual Studio as Administrator."); // Log to telemetry or retry with fallback configuration

If the target process requires elevation, launch Visual Studio with admin rights ( Right-click → Run as administrator ).

From the Visual Studio Installer → select More → Repair . This restores missing or corrupted Diagnostic Hub components. Console

catch (DiagnosticsCollectionStartFailedHubException ex)

try

In Visual Studio: Debug → Options → Enable Diagnostic Tools while debugging (uncheck). If the problem disappears, a specific tool (e.g., CPU Usage) is misconfigured. 7. Code Example (Illustrative) You would not typically catch this exception in production code. However, a diagnostic extension or custom profiler host might handle it like this:

await diagnosticHubSession.StartCollectionAsync(targetProcessId); Code Example (Illustrative) You would not typically catch

Delete temporary diagnostic files: %TEMP%\Microsoft Diagnostics Hub\ %LOCALAPPDATA%\Microsoft\VisualStudio\<version>\DiagnosticsHub\

1. Overview & Context The exception microsoft.diagnosticshub.diagnostics.collectionstartfailedhubexception is a specific, platform-level error originating from Microsoft’s Diagnostic Hub —a component primarily used within Visual Studio and other Microsoft developer tools (like Performance Profiler, CPU Usage tool, Memory Usage tool, and IntelliTrace). CPU Usage tool

| Scenario | Explanation | |----------|-------------| | | The debugged app terminates between the “start collection” command and the diagnostic session’s initialization. | | Insufficient permissions | The Diagnostic Hub lacks permission to attach ETW sessions or read memory from the target process (e.g., elevated UAC requirements). | | Conflicting diagnostic tools | Another profiler (e.g., JetBrains dotMemory, PerfView, or a second Visual Studio instance) already holds a lock on the target process’s diagnostic interfaces. | | Corrupted Visual Studio installation | Missing or mismatched versions of DiagnosticsHub binaries or its dependencies (e.g., Microsoft.Diagnostics.Tracing.EventSource ). | | Unsupported runtime or architecture | Trying to collect diagnostics from an unsupported environment, such as a 32-bit process from a 64-only diagnostic host, or a .NET Framework app with incompatible profiling APIs. | 4. Typical Stack Trace Pattern While the exact trace varies, a typical exception might look like this:

Common failure scenarios include: