Skip to content

feat(collector): support milvus collector (#3877) - #4303

Draft
paultanay wants to merge 6 commits into
apache:masterfrom
paultanay:feature/milvus-collector
Draft

feat(collector): support milvus collector (#3877)#4303
paultanay wants to merge 6 commits into
apache:masterfrom
paultanay:feature/milvus-collector

Conversation

@paultanay

Copy link
Copy Markdown
Contributor

What's changed

  • Created hertzbeat-collector-milvus module to scrape Prometheus metrics from Milvus (/metrics endpoint on port 9091).
  • Added MilvusProtocol entity in hertzbeat-common-core.
  • Added monitoring definition template app-milvus.yml covering availability, proxy, querynode, and rootcoord metrics.
  • Registered collector via SPI in AbstractCollect.
  • Added English help documentation (home/docs/help/milvus.md).
  • Added unit tests for protocol validation and metric parsing (MilvusCollectImplTest, MilvusProtocolTest).

Fixes #3877

@github-actions github-actions Bot added doc Improvements or additions to documentation monitoring-template collector backend labels Aug 8, 2026
@paultanay
paultanay marked this pull request as ready for review August 8, 2026 16:18
* Scrapes the Prometheus-format /metrics endpoint exposed by Milvus on port 9091.
*/
@Slf4j
public class MilvusCollectImpl extends AbstractCollect {

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thank you for your work! Before going further, could we reconsider the approach?

Milvus exposes a standard Prometheus /metrics endpoint, and HertzBeat already handles that with protocol: http + parseType: prometheus. Going that route would let app-milvus.yml work without a new hertzbeat-collector-milvus module, a new MilvusProtocol, or changes to Metrics.java / DispatchConstants.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for the clear guidance @Duansg! reworked the implementation to use protocol: http with parseType: prometheus. Please take another look!

@Duansg
Duansg marked this pull request as draft August 9, 2026 15:42
@paultanay
paultanay force-pushed the feature/milvus-collector branch from f64a96f to 443ebdb Compare August 11, 2026 18:14
@paultanay
paultanay requested a review from Duansg August 11, 2026 18:16
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

backend doc Improvements or additions to documentation monitoring-template

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[Feature] <collector> support milvus collector

2 participants