spring-cloud / spring-cloud/spring-cloud-config
Emit more granular data points for troubleshooting
Nobody has claimed this yet.
- Dominant language
- Java
- Stars
- 2k
- Forks
- 1.3k
- Avg merge
- 2d 59m
- Merged PRs (30d)
- 16
Description
Problem Statement
Config Servers that are configured with Git environment repositories are making multiple connections to Git servers and may be providing filters properties to many clients. When there are timeouts or other issues with Git server fetches and applications have issues getting updates on restarts it can be difficult to figure out where the root of the problem is. Especially when the symptom is on the client that is having an issue getting properties.
Emit more granular metrics
There are two environment repositories that we initially need more detailed metrics for:
Git
- Git server fetch response time, errors and rate of requests
- Processing time of fetched repo into properties
Vault
- Vault secrets fetch time
- Processing time of secrets into properties
Enhance health actuator
A Config Server should provide more details on what factors may have affected property fetching from services (Git, Vault and environment repositories) and dissemination to clients when it is unhealthy.
Additional context
Many organizations I talk with have Config Server dashboards showing health. They also have observability tools but are not able to get sufficient data points to help in troubleshooting Config Server instances.
Contributor guide
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
Start at the Config Server health actuator and trace how Git and Vault environment repositories fetch and process properties. Review the existing metrics and health reporting before defining the needed entry points. Done means Git and Vault fetch, error, request-rate, and processing details are exposed, with health output explaining factors affecting property fetching and client dissemination.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- git, java, spring, spring-boot
- Domain
- backend, cloud, observability
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Quiet
- Clarity
- Needs clarification
- Newbie friendliness
- 35/100