Service discovery bridge for LOOPP: generate Prometheus targets from /discovery #2085
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.
Introduce a lightweight Bash SD-merge script that queries each worker node’s
/discovery
endpoint, merges results, and writes a singlefile_sd
JSON for Prometheus. Each target is labeled withcontainer_name
andscrape_path
for clean attribution and dashboards.Below is a summarization created by an LLM (gpt-4-0125-preview). Be mindful of hallucinations and verify accuracy.
Why
The changes introduce a new SD-bridge script for querying nodes' /discovery endpoints and generating Prometheus targets. This facilitates the automatic collection of LOOPP metrics, enhancing observability. Additionally, adjustments have been made to the Prometheus configuration to include this new job and support file-based service discovery. The docker-compose file has been updated to include a new service that periodically runs this script, ensuring Prometheus targets are kept up to date without manual intervention.
What
file_sd_configs
to utilize the generated JSON for service discovery.sd-merge
service that periodically runs the SD-bridge script, generating a merged JSON file for Prometheus service discovery.sd-targets
to store and share service discovery targets between thesd-merge
service and Prometheus.