TEN-framework / TEN-framework/ten-framework
[FEATURE] It will be good if we have basic vm/docker resource usage metrics.
Nobody has claimed this yet.
- Dominant language
- Python
- Stars
- 11.1k
- Forks
- 1.4k
- Avg merge
- 2d 15m
- Merged PRs (30d)
- 22
Description
Description
It's exited that we have otel support https://github.com/TEN-framework/ten-framework/pull/1862 two weeks ago.
There are 4 key service metrics:
- extension_thread_msg_queue_stay_time
- extension_lifecycle_duration
- extension_cmd_processing_duration
- extension_callback_execution_duration
I believe there will be more when functionality grow.
But when few of them went wrong, we can't tell the root cause or troubleshoot easily: is it because the logic problem, the api call latency, or the device issue, or simply the process is affected by a neighbor?
So I suppose having some basic per-process runtime metrics is good for perf tuning and troubleshooting any performance related issues in the future. Like using sysinfo/procfs(for linux)+cgroup. And it's also good for developers to take performance into consideration when choosing from solutions. And the metrics could be optional because metrics monitoring itself can be a consumption for some scenarios with hard resource limitations.
Potential addtion of metrics: cpu usage, available_memory, free_virtual_memory, total_virtual_memory, dirty/swap_bytes, disk_space_usage, disk_free_bytes, network_ingress/egress/rw_errors.
Not sure about the priority.
Severity
Major
Additional Information
No response
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
The issue names no repository files or tests. Start by reviewing the OTEL support in PR #1862 and the sysinfo/procfs and cgroup options it mentions, then scope which optional runtime metrics are needed for VM and Docker use. Done means an agreed metric set, collection approach, and validation plan.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- docker, rust
- Domain
- infrastructure, observability
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 30/100