Skip to content

[docs] Add CLI startup profiling reference page - #1357

Closed
David Pine (IEvangelist) wants to merge 1 commit into
release/13.5from
docs/17099-cli-startup-profiling-fc56e5787e8919ae
Closed

[docs] Add CLI startup profiling reference page#1357
David Pine (IEvangelist) wants to merge 1 commit into
release/13.5from
docs/17099-cli-startup-profiling-fc56e5787e8919ae

Conversation

@IEvangelist

Copy link
Copy Markdown
Member

Supersedes #984.

This replacement targets
elease/13.5 because the original
elease/13.4 base branch no longer exists on microsoft/aspire.dev.

Documents changes from microsoft/aspire#17099@davidfowl

Targeting release/13.4 based on the source PR milestone 13.4.

Why this PR is needed

microsoft/aspire#17099 separated the Aspire CLI's OpenTelemetry telemetry streams into three distinct TracerProvider pipelines: reported telemetry (Azure Monitor), startup profiling (OTLP), and DEBUG diagnostics. As a result, startup profiling now works in release CLI builds — users set ASPIRE_PROFILING_ENABLED=true plus OTEL_EXPORTER_OTLP_ENDPOINT to get an end-to-end OTLP trace of the CLI startup sequence. This user-facing capability was previously undocumented.

The PR body included an explicit User-facing usage section demonstrating the environment variables, and the TelemetryManager.cs diff showed the three-provider model and the ASPIRE_STARTUP_PROFILING_ENABLED legacy alias.

Changes

  • New page src/frontend/src/content/docs/reference/cli/startup-profiling.mdx — covers how to enable startup profiling, what spans and process tags are captured, and the three-stream separation model.
  • Updated sidebar src/frontend/config/sidebar/reference.topics.ts — adds the new page after the Microsoft telemetry entry in the CLI section, with translations for all supported locales.

Files modified or created

File Action
src/frontend/src/content/docs/reference/cli/startup-profiling.mdx Created
src/frontend/config/sidebar/reference.topics.ts Updated

Generated by PR Documentation Check for issue #17099 · ● 20M ·

Documents the ASPIRE_PROFILING_ENABLED environment variable and the
separated telemetry stream model introduced in microsoft/aspire#17099.

- New page: reference/cli/startup-profiling.mdx
- Updated sidebar: reference.topics.ts

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot AI review requested due to automatic review settings July 12, 2026 05:59
@IEvangelist David Pine (IEvangelist) added the docs-from-code Copilot initiated issue from dotnet/aspire repo label Jul 12, 2026

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Pull request overview

Adds a new Aspire CLI reference page documenting “startup profiling” (exporting an end-to-end OpenTelemetry trace for CLI startup) and exposes the page in the Reference sidebar navigation.

Changes:

  • Adds startup-profiling.mdx explaining how to enable profiling via environment variables and what telemetry is captured.
  • Documents the separation between reported telemetry, startup profiling, and DEBUG diagnostics streams.
  • Updates the Reference CLI sidebar to include the new “Startup profiling” entry with translations.

Reviewed changes

Copilot reviewed 2 out of 2 changed files in this pull request and generated 3 comments.

File Description
src/frontend/src/content/docs/reference/cli/startup-profiling.mdx New reference page describing CLI startup profiling setup, captured spans/tags, and telemetry stream separation.
src/frontend/config/sidebar/reference.topics.ts Adds the new page to the CLI reference sidebar with locale translations.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment on lines +6 to +7
import OsAwareTabs from '@components/OsAwareTabs.astro';
import { Aside } from '@astrojs/starlight/components';
Comment on lines +55 to +58
| `process aspire.exe` | Parent CLI spawning the detached child `run` process. |
| `process aspire-managed.exe` | AppHost server process. |
| `process npm.CMD` | `npm install` runs (restore and start-time). |
| `process npx.CMD` | TypeScript guest execution phases (pre-execute type check and execute). |

The Aspire CLI can export an end-to-end OpenTelemetry trace of its startup sequence to any OTLP-compatible backend. This lets you identify which phase of startup — TypeScript guest compilation, `npm install`, AppHost server startup, or DCP initialization — is taking the most wall-clock time.

Startup profiling works in release CLI builds. It uses a dedicated OTLP exporter that is separate from the [Microsoft-collected CLI telemetry](/reference/cli/microsoft-collected-cli-telemetry/), so enabling profiling does not affect the reported telemetry stream and does not send data to Microsoft.
@aspire-repo-bot

Copy link
Copy Markdown
Contributor

Frontend HTML artifact ready

The latest frontend build uploaded the frontend-dist artifact for PR #1357. Use the VS Code button below to open this PR with GitHub Artifacts Explorer and browse the built HTML locally.

VS Code: Open PR #1357 artifacts

This comment updates automatically when a new frontend build artifact is uploaded.

@davidfowl

Copy link
Copy Markdown
Contributor

I'm not convinced we should add this. It's basically internal (the flag is hidden).

@IEvangelist

Copy link
Copy Markdown
Member Author

Since it is hidden, we can close this. I agree.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

docs-from-code Copilot initiated issue from dotnet/aspire repo

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants