cacti icon indicating copy to clipboard operation
cacti copied to clipboard

feat(satp): [EPIC] gateway monitoring and dashboard

Open RafaelAPB opened this issue 1 year ago • 3 comments

Extend the SATP codebase to use Prometheus to get some important metrics on the state of a SATP gateway. An administrator should be able to access a dashboard that contains the state of the gateway.

Currently, some Cacti plugins support some metric management on Prometheus. Example: Ethereum connector, Fabric connector and many more. See an example on how to instantiate prometheus here, define metrics, and to update metrics. We should also explore using OpenTelemetry to replace or complement Prometheus.

Requirements: 1- Explore OpenTelemetry as a technical solution for the list of metrics below.

In order to monitor SATP-Hermes effectively, we need to add support for Prometheus, by defining the following metrics (and tracking them in the corresponding code):

  • number of supported assets

  • total number of successful transactions

  • total number of failed transactions

  • successful transactions per SATP phase

  • failed transactions per SATP phase

  • total peer gateways

  • total number of sessions

  • number of sessions with each gateway

  • total value transferred

  • value transferred per gateway

  • number of blockchain transactions done successfully

  • number of failed blockchain transactions

  • amount of blockchain transaction fees paid

  • track transaction IDs (hashes) for every blockchain transaction for later inspection

  • transfers initiated (and which id)

  • transfers in progress

  • transfers cancelled

  • number of crashes

  • number of recoveries

  • average time to recovery

  • average time to crash

  • number of rollbacks

2- SATP-Hermes should define an endpoint that exposes these metrics

3- Use this endpoint to instantiate Grafana to visualize relevant metrics. See this example.

The Grafana dashboards that point to the prometheus / open telemetry endpoints should be instantiated on the SATP dockerfile. The dashboard should be accessible on a browser via docker.

This EPIC includes: feat(satp): Research OpenTelemetry as a Complement or Alternative to Prometheus #3757 feat(satp): Define and Implement Prometheus Metrics in SATP-Hermes #3758 feat(satp): Create an Endpoint to Expose Prometheus Metrics and Grafana Dashboards for SATP Metrics #3759 feat(satp): Integrate Grafana and Prometheus into SATP-Hermes Docker Deployment through CBDC App #3760

RafaelAPB avatar Mar 15 '24 16:03 RafaelAPB

hi

LordKubaya avatar Mar 18 '24 19:03 LordKubaya

eduv09 avatar Jul 05 '24 12:07 eduv09