aspire logs --tail/-n counts [sys] orchestration lines against the limit, not just app output
- Dominant language
- C#
- Stars
- 6.3k
- Forks
- 991
- Avg merge
- 2d 15h
- Merged PRs (30d)
- 196
Description
## Summary
\spire logs --tail N\ (or \-n N\) counts internal \[sys]\ orchestration lines against the limit, meaning you don't reliably get N lines of *application* output.
## Repro
\\\
> aspire logs api --tail 3
[api] [sys] Starting process...: Cmd = npm.cmd, Args = ["run", "dev"]
[api] 2026-05-29T21:34:01.101Z GET /api/db-ping
[api] 2026-05-29T21:34:01.110Z GET /api/mq-ping
\\\
With \--tail 3\ you get **1 sys line + 2 app lines**, not 3 app lines. The \[sys]\ prefix marks these as internal orchestration messages injected by the Aspire host (process start/stop events), not stdout/stderr from the application itself.
## Expected behavior
\--tail N\ should return the last N lines of **application** output (stdout/stderr). Orchestration \[sys]\ events, if shown at all, should either:
- Not count against the tail limit, or
- Be filterable/suppressible (e.g. excluded by default from \--tail\)
## Actual behavior
\[sys]\ lines consume slots from the tail limit, so \--tail 3\ may return fewer than 3 real application log lines if any \[sys]\ events are recent.
## Impact
Scripting and spot-checking scenarios where users do \spire logs api --tail 10\ expecting the last 10 lines of app output. Makes \--tail\ less predictable when a resource has just started or been restarted (when \[sys]\ lines are most likely to appear).
## Environment
- OS: Windows 11
- Aspire SDK: 13.4.0+e18fdb8e989c2d97b41fab57a7857e223a4a3379
## References
- Found during Phase 8 validation of Aspire 13.4 (CLI logs & telemetry filters).
Contributor guide
Assessment
This issue has not been assessed yet.