Skip to content

Fix stderr log streaming from monitored applications#241

Merged
thiagoesteves merged 1 commit into
mainfrom
fix/stderr-log-streaming
Jul 8, 2026
Merged

Fix stderr log streaming from monitored applications#241
thiagoesteves merged 1 commit into
mainfrom
fix/stderr-log-streaming

Conversation

@thiagoesteves

@thiagoesteves thiagoesteves commented Jul 7, 2026

Copy link
Copy Markdown
Owner

The Sentinel logs server tails the stdout and stderr log files, but the stderr terminal was created with the erlexec option [:stderr]. Since tail always writes the followed file content to its own stdout, the stderr file content was never captured, so stderr logs were never streamed, stored or displayed. In addition, Host.Terminal.Server only handled {:stdout, ...} messages, silently dropping any {:stderr, ...} data.

Both log terminals now capture :stdout (the log type is carried by the terminal metadata) and the terminal server forwards :stderr messages the same way as :stdout for terminals that do capture that stream.

Risk assessment:

  • Impact: stderr logs become visible again in the Logs page and in the retained log storage. No behavior change for stdout streaming.
  • Blast radius: Sentinel.Logs.Server terminal creation and Host.Terminal.Server message handling. Web terminals (tty) and the monitor/deploy paths are untouched.
  • Regression risk: low. The stderr path was delivering nothing before, so the worst case is additional (correct) log volume in the UI and in the retention tables.
  • Rollback: revert this commit, no data or config migration involved.

Co-Authored-By: Claude Fable 5 noreply@anthropic.com

@thiagoesteves thiagoesteves self-assigned this Jul 7, 2026
@thiagoesteves thiagoesteves moved this to In Progress in DeployEx Project Jul 7, 2026
@thiagoesteves thiagoesteves marked this pull request as ready for review July 7, 2026 18:08
The Sentinel logs server tails the stdout and stderr log files, but the
stderr terminal was created with the erlexec option [:stderr]. Since tail
always writes the followed file content to its own stdout, the stderr
file content was never captured, so stderr logs were never streamed,
stored or displayed. In addition, Host.Terminal.Server only handled
{:stdout, ...} messages, silently dropping any {:stderr, ...} data.

Both log terminals now capture :stdout (the log type is carried by the
terminal metadata) and the terminal server forwards :stderr messages the
same way as :stdout for terminals that do capture that stream.

Risk assessment:
- Impact: stderr logs become visible again in the Logs page and in the
  retained log storage. No behavior change for stdout streaming.
- Blast radius: Sentinel.Logs.Server terminal creation and
  Host.Terminal.Server message handling. Web terminals (tty) and the
  monitor/deploy paths are untouched.
- Regression risk: low. The stderr path was delivering nothing before,
  so the worst case is additional (correct) log volume in the UI and in
  the retention tables.
- Rollback: revert this commit, no data or config migration involved.
@thiagoesteves thiagoesteves force-pushed the fix/stderr-log-streaming branch from 2d0dfda to 7ba27a0 Compare July 8, 2026 11:32
@thiagoesteves thiagoesteves merged commit 35f2de4 into main Jul 8, 2026
3 checks passed
@thiagoesteves thiagoesteves deleted the fix/stderr-log-streaming branch July 8, 2026 11:37
@github-project-automation github-project-automation Bot moved this from In Progress to Done in DeployEx Project Jul 8, 2026
thiagoesteves added a commit that referenced this pull request Jul 8, 2026
…guide (#244)

* Update changelog with 0.9.5 entries and document changelog maintenance

Add the missing 0.9.5 entries for the merged PRs: #239, #240, #241 and
#242 as bug fixes, and #237 (CloudWatch log group retention) as an
enhancement. Document the changelog maintenance rules in AGENTS.md so
agents know how to add entries, and remove the outdated note that said
the changelog must not be edited manually.

Risk assessment:
- Impact: documentation only, no runtime behavior changes.
- Blast radius: CHANGELOG.md and AGENTS.md.
- Regression risk: none, docs-only diff.
- Rollback: revert this commit.

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

Labels

None yet

Projects

Status: Done

Development

Successfully merging this pull request may close these issues.

1 participant