fix(process_group_manager): standardize ProcessInfoNode logs - #609
Open
shegazyy wants to merge 2 commits into
Open
fix(process_group_manager): standardize ProcessInfoNode logs#609shegazyy wants to merge 2 commits into
shegazyy wants to merge 2 commits into
Conversation
shegazyy
requested review from
FScholPer,
MaciejKaszynski,
NicolasFussberger,
antonkri,
pawelrutkaq and
ramceb
as code owners
September 7, 2026 13:53
shegazyy
requested a deployment
to
workflow-approval
September 7, 2026 13:53 — with
GitHub Actions
Waiting
shegazyy
requested a deployment
to
workflow-approval
September 7, 2026 13:53 — with
GitHub Actions
Waiting
Member
|
Maybe it would be good for readability if we always put the identifier at the beginning of the message? |
| std::atomic_store(&control_client_channel_, ControlClientChannel::getControlClientChannel(sync_)); | ||
| } | ||
|
|
||
| std::string ProcessInfoNode::logId() const |
Contributor
There was a problem hiding this comment.
I like the idea of having this reusable method.
Currently, though this causes heap allocation on every call which we need to avoid after initialization.
So I think we need to come up with a way that does not require heap after construction
NicolasFussberger
requested changes
Sep 11, 2026
Contributor
|
Documentation preview for this pull request is available at: |
…-score#570) Add a private logId() helper that renders a consistent identity string, "Name: <name>, PID: <pid>", and use it at all 19 call sites in ProcessInfoNode that previously formatted process identity differently ("process X", "process (X)", "process X pid Y", "pid Y (X)", ...). Also fixes a bug at startProcess(): a log statement streamed the raw 'this' pointer instead of process identity, which prints as "1"/"true" under the fallback console logger instead of anything useful. Two logs that previously omitted process identity entirely (file-wait error, PID-map insertion failure) now include it too.
Per review feedback (NicolasFussberger): logId() returned std::string,
heap-allocating on every log call, which must be avoided after
initialization.
- logId() now returns ProcessLogId, a small trivially-copyable struct
(IdentifierHash + osal::ProcessID) instead of building a std::string.
Formatting happens only when a log line is actually printed, via
operator<< overloads for both std::ostream and score::mw::log::LogStream
(mirroring the exact dual-overload pattern IdentifierHash already
uses for the two supported logging backends). No heap allocation.
Per review feedback (danth): for readability, the process identity
should consistently lead every log message rather than appearing in
the middle or at the end.
- Reordered all 19 call sites so every one now reads
`LM_LOG_*() << logId() << "<description>";`, replacing the previous
mixed styles ("Setting up alive supervision for" << logId(),
"Starting" << logId() << "from executable" ..., etc.).
shegazyy
force-pushed
the
fix/standardize-process-info-node-logs
branch
from
September 14, 2026 10:01
14369ea to
d783f27
Compare
shegazyy
requested a deployment
to
workflow-approval
September 14, 2026 10:01 — with
GitHub Actions
Waiting
shegazyy
requested a deployment
to
workflow-approval
September 14, 2026 10:01 — with
GitHub Actions
Waiting
Contributor
Author
|
@NicolasFussberger changes are applied, and ready for review whenever you have the time |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Add a private logId() helper that renders a consistent identity string, "Name: , PID: ", and use it at all 19 call sites in ProcessInfoNode that previously formatted process identity differently ("process X", "process (X)", "process X pid Y", "pid Y (X)", ...).
Also fixes a bug at startProcess(): a log statement streamed the raw 'this' pointer instead of process identity, which prints as "1"/"true" under the fallback console logger instead of anything useful.
Two logs that previously omitted process identity entirely (file-wait error, PID-map insertion failure) now include it too.
fixes #570