hiero-ledger / hiero-ledger/hiero-consensus-node
Expose Metrics through MBeans
- Dominant language
- Java
- Stars
- 406
- Forks
- 226
- Avg merge
- 3d 4h
- Merged PRs (30d)
- 210
Description
### Problem
Our Metrics system exposes those metrics through a prometheus endpoint, which is perfect and natural for production use cases. When doing development, and when doing performance profiling, profiling tools are able to work with MBeans, but not with prometheus HTTP endpoints. It would be extremely useful to be able to get metric information through MBeans.
### Solution
The metric system could be updated to expose the stats through mbeans without requiring any additional work by developers. They just use the metrics APIs as is, and their stats are accessible from Mission Control or JProfiler or other tools. We could also look at exposing configuration through MBeans, such that using tools you could dynamically alter the configuration of the system. This could be useful while doing performance profiling or debugging.
### Alternatives
_No response_
Contributor guide
Research direction
Start by locating the metrics system and its existing Prometheus endpoint, then trace how metrics are registered and exposed. Define whether configuration exposure is in scope, and verify that metrics are available through MBeans without changes to applications using the existing metrics APIs.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- java
- Domain
- observability
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100