Skip to content

feat(debug): allow direct node communication and skip mgmtd node-store lookup when node ip and port is specified.#301

Draft
pranavpadmasali wants to merge 1 commit into
mainfrom
pranav/send-debug-message-using-ip
Draft

feat(debug): allow direct node communication and skip mgmtd node-store lookup when node ip and port is specified.#301
pranavpadmasali wants to merge 1 commit into
mainfrom
pranav/send-debug-message-using-ip

Conversation

@pranavpadmasali

Copy link
Copy Markdown
Contributor

What does this PR do / why do we need it?

Update beegfs debug to accept <node|host:port> as the first positional.
The command first tries to parse a meta/storage entity ID; if parsing fails, it
treats the value as a direct TCP address and sends GenericDebug directly to
that node (without mgmtd node-store lookup). So even if the management is
not running, beegfs CTL can send messages to daemons if the ip address and
ports are known.

This can be helpful during integration tests to ensure that the daemons are running
and to avoid relying on log parsing to confirm that they are listening on the
requested ports.

With this, we can use the debug command to send a debug version message to the node.
If the daemon responds, then it is running; if not, it failed to start as expected.

Also add a shared config.AuthSecret() helper and reuse it in direct debug
requests so auth-secret resolution stays consistent with existing config behaviour.

Are there any specific topics we should discuss before merging?

Not required.

What are the next steps after this PR?

Not required.

Checklist before merging:

Required for all PRs.

When creating a PR these are items to keep in mind that cannot be checked by GitHub actions:

  • Documentation:
    • Does developer documentation (code comments, readme, etc.) need to be added or updated?
    • Does the user documentation need to be expanded or updated for this change?
  • Testing:
    • Does this functionality require changing or adding new unit tests?
    • Does this functionality require changing or adding new integration tests?
  • Git Hygiene:

For more details refer to the Go coding standards and the pull request process.

…e lookup when node ip and port is specified.

Update `beegfs debug` to accept `<node|host:port>` as the first positional.
  The command first tries to parse a meta/storage entity ID; if parsing fails, it
  treats the value as a direct TCP address and sends `GenericDebug` directly to
  that node (without mgmtd node-store lookup).

Also add a shared `config.AuthSecret()` helper and reuse it in direct debug
  requests so auth-secret resolution stays consistent with existing config behavior.
@pranavpadmasali pranavpadmasali requested a review from a team as a code owner March 5, 2026 09:54
@pranavpadmasali pranavpadmasali marked this pull request as draft March 5, 2026 09:55
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant