FINERACT-2053: Fix Prometheus scraping config path and hostname#5354
Conversation
IOhacker
left a comment
There was a problem hiding this comment.
I don't like the "development" change. Because it is tied to a environment. It is prefer to add a new configuration file for this name and update the documentation.
Thanks for the review @IOhacker. You make a valid point about keeping prometheus.yml environment-agnostic. The reason I made the change is that the docker-compose-development.yml file explicitly sets the container name to fineract-development, so the standard fineract-server hostname fails to resolve in the default dev stack. Alternative Proposal: Instead of creating a separate config file (which increases maintenance), would you prefer if I added a network alias to docker-compose-development.yml? If I add networks: aliases: - fineract-server to the fineract service, the standard prometheus.yml will work without modification. This i think could be cleaner than maintaining two separate Prometheus config files. Let me know if you agree, and I will update the PR! |
|
I went ahead and implemented the network alias approach.
I verified locally that this resolves the connection issue while keeping the configuration clean. Ready for re-review! |
|
squash and commit your changes. Make sure the title of the PR is in the message of the commit |
9af28c0 to
84199ce
Compare
|
Github actions are running now |
84199ce to
ecc2a82
Compare
|
Hi @IOhacker the latest build failed on LoanInterestRateChange.feature (Shard 2). This seems unrelated to my Prometheus config changes (likely a flaky test). |
|
@adamsaghy hii adam ,can this be merged aswell ,if looks correct? |
Description
This PR fixes the Prometheus scraping configuration for the development stack as described in FINERACT-2053.
The default
docker-composeconfiguration for Prometheus was failing to scrape metrics from Fineract due to incorrect paths, SSL verification issues, and hostname mismatches.Changes made:
metrics_pathto include the context path/fineract-provider/actuator/prometheus(previously just/actuator/prometheus).insecure_skip_verify: truetotls_config. This is necessary because the development environment uses self-signed certificates.fineract-server:8443tofineract-development:8443.docker-compose-development.ymlisfineract-development. The previous hostnamefineract-serverresulted in "no such host" errors.Verification:
I have verified that Prometheus can now successfully scrape the Fineract target. The target state is UP (Green).
Checklist
Please make sure these boxes are checked before submitting your pull request - thanks!