Add sysinfo node for host CPU, memory, and IP monitoring#15
Merged
Conversation
A source node that periodically emits the host's CPU usage, memory (used/total/percent), and local IP — the runtime equivalent of an edge agent's "resources" topic, which sandboxed function nodes cannot read. Uses the sysinfo crate (system feature only) for CPU/memory; the local IP is resolved via a UDP-connect trick (no dependency, no packet sent). Verified live: emits real cpu/memory/ip.
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.
This pull request introduces a new
sysinfonode that periodically emits host CPU usage, memory statistics, and local IP address, making it easier to monitor system resources. The implementation includes configuration, documentation, and integration into the node catalog and runtime.New node: System Information
sysinfonode implementation insrc/runtime/nodes/sysinfo.rs, which emits snapshots of CPU usage, memory statistics, and the local IP address at a configurable interval.sysinfonode in the runtime node builder insrc/runtime/nodes/mod.rs, enabling it to be instantiated and used in flows. [1] [2]sysinfonode to the catalog insrc/catalog.rswith configuration for interval and descriptive metadata.Dependency updates
sysinfocrate (with only thesystemfeature enabled) toCargo.tomlfor lightweight, cross-platform system information gathering.Documentation
sysinfonode in bothREADME.mdandREADME.id.md, describing its purpose and output. [1] [2]A source node that periodically emits the host's CPU usage, memory (used/total/percent), and local IP — the runtime equivalent of an edge agent's "resources" topic, which sandboxed function nodes cannot read.Uses the sysinfo crate (system feature only) for CPU/memory; the local IP is resolved via a UDP-connect trick (no dependency, no packet sent). Verified live: emits real cpu/memory/ip.