Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat: expose prometheus metrics from HAProxy #320

Merged
merged 1 commit into from
Sep 10, 2023

Conversation

leninmehedy
Copy link
Member

@leninmehedy leninmehedy commented Sep 8, 2023

Description

This pull request changes the following:

  • Expose prometheus metrics from HAProxy
  • Allows prometheus service monitor to scrape both network-node and HAProxy metrics based on a specific label fullstack.hedera.com/prometheus-endpoint: active
    • The label also allows disabling prometheus service monitor scraping
  • Ensures /stats (requires login) and /metrics endpoints are available for HAProxy

Related Issues

Screenshots

  • HAProxy stats: /stats
Screenshot 2023-09-08 at 12 38 23 PM
  • HAProxy metrics: /metrics
Screenshot 2023-09-08 at 12 38 32 PM
  • Prometheus targets:
Screenshot 2023-09-08 at 12 39 39 PM
  • Exported HAProxy metrics:
Screenshot 2023-09-08 at 12 39 55 PM

Signed-off-by: Lenin Mehedy <lenin.mehedy@swirldslabs.com>
@github-actions
Copy link

github-actions bot commented Sep 8, 2023

Unit Test Results

16 files  ±0  16 suites  ±0   32s ⏱️ ±0s
85 tests ±0  82 ✔️ ±0  3 💤 ±0  0 ±0 
86 runs  ±0  83 ✔️ ±0  3 💤 ±0  0 ±0 

Results for commit 27125c7. ± Comparison against base commit 8c24733.

@sonarcloud
Copy link

sonarcloud bot commented Sep 8, 2023

Kudos, SonarCloud Quality Gate passed!    Quality Gate passed

Bug A 0 Bugs
Vulnerability A 0 Vulnerabilities
Security Hotspot A 0 Security Hotspots
Code Smell A 0 Code Smells

No Coverage information No Coverage information
No Duplication information No Duplication information

@leninmehedy leninmehedy merged commit 8d4f51c into main Sep 10, 2023
10 checks passed
@leninmehedy leninmehedy deleted the 269-expose-prometheus-metrics-from-haproxy branch September 10, 2023 21:34
swirlds-automation added a commit that referenced this pull request Sep 14, 2023
## [0.8.0](v0.7.0...v0.8.0) (2023-09-14)

### Features

* add hedera node explorer as a conditional sub chart ([#275](#275)) ([c4eb8d7](c4eb8d7))
* add helm chart tests to check haproxy and envoy proxy deployments ([#319](#319)) ([08c3f85](08c3f85))
* add helm chart tests to validate state of sidecars ([#314](#314)) ([e04de57](e04de57))
* add optional Gateway API resource definition to expose endpoints ([#280](#280)) ([9b9effd](9b9effd))
* allow pod-monitor-role to have access to secrets ([#309](#309)) ([75e66c3](75e66c3))
* convert helm client test source set to a module ([#300](#300)) ([2fcb3c3](2fcb3c3))
* enable locally building and loading kubectl-bats docker image into the cluster for helm tests ([#310](#310)) ([230b291](230b291))
* ensure OTel collector is able to export metrics and traces ([#298](#298)) ([8c24733](8c24733))
* expose envoy-proxy prometheus metrics endpoint ([#328](#328)) ([f052481](f052481))
* expose prometheus metrics from HAProxy ([#320](#320)) ([8d4f51c](8d4f51c))
* introduces the build-logic project instead of buildSrc ([#327](#327)) ([aeb4c48](aeb4c48))
* parameterize gateway port mapping using values file ([#339](#339)) ([0c16855](0c16855))
* support higher number of nodes with consistent gateway port mapping ([#337](#337)) ([8b44410](8b44410))
* switch from JPMS module conventions to project level plugin ([#312](#312)) ([b3a7429](b3a7429))
* update Open Telemetry configuration to support optional remote write pushing of metrics and log ([#281](#281)) ([f5aadc5](f5aadc5))

### Bug Fixes

* lock the semantic release toolchain to specific known working versions ([#342](#342)) ([5eb8600](5eb8600))
* resolves the accidental mangling of Helm subchart versions on release ([#285](#285)) ([4e6a539](4e6a539))
* use 9090 as prometheus port across services for consistency ([#330](#330)) ([5052945](5052945))
@swirlds-automation
Copy link
Contributor

🎉 This PR is included in version 0.8.0 🎉

The release is available on GitHub release

Your semantic-release bot 📦🚀

jeromy-cannon pushed a commit that referenced this pull request Sep 14, 2023
Signed-off-by: Lenin Mehedy <lenin.mehedy@swirldslabs.com>
Signed-off-by: Jeromy Cannon <jeromy@swirldslabs.com>
jeromy-cannon pushed a commit that referenced this pull request Sep 14, 2023
## [0.8.0](v0.7.0...v0.8.0) (2023-09-14)

### Features

* add hedera node explorer as a conditional sub chart ([#275](#275)) ([c4eb8d7](c4eb8d7))
* add helm chart tests to check haproxy and envoy proxy deployments ([#319](#319)) ([08c3f85](08c3f85))
* add helm chart tests to validate state of sidecars ([#314](#314)) ([e04de57](e04de57))
* add optional Gateway API resource definition to expose endpoints ([#280](#280)) ([9b9effd](9b9effd))
* allow pod-monitor-role to have access to secrets ([#309](#309)) ([75e66c3](75e66c3))
* convert helm client test source set to a module ([#300](#300)) ([2fcb3c3](2fcb3c3))
* enable locally building and loading kubectl-bats docker image into the cluster for helm tests ([#310](#310)) ([230b291](230b291))
* ensure OTel collector is able to export metrics and traces ([#298](#298)) ([8c24733](8c24733))
* expose envoy-proxy prometheus metrics endpoint ([#328](#328)) ([f052481](f052481))
* expose prometheus metrics from HAProxy ([#320](#320)) ([8d4f51c](8d4f51c))
* introduces the build-logic project instead of buildSrc ([#327](#327)) ([aeb4c48](aeb4c48))
* parameterize gateway port mapping using values file ([#339](#339)) ([0c16855](0c16855))
* support higher number of nodes with consistent gateway port mapping ([#337](#337)) ([8b44410](8b44410))
* switch from JPMS module conventions to project level plugin ([#312](#312)) ([b3a7429](b3a7429))
* update Open Telemetry configuration to support optional remote write pushing of metrics and log ([#281](#281)) ([f5aadc5](f5aadc5))

### Bug Fixes

* lock the semantic release toolchain to specific known working versions ([#342](#342)) ([5eb8600](5eb8600))
* resolves the accidental mangling of Helm subchart versions on release ([#285](#285)) ([4e6a539](4e6a539))
* use 9090 as prometheus port across services for consistency ([#330](#330)) ([5052945](5052945))

Signed-off-by: Jeromy Cannon <jeromy@swirldslabs.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Charts[Network Node]: Expose prometheus metrics from HAProxy
4 participants