Observability for TraderX
Feature Request
Description of Problem:
With a distributed app like TraderX, observability is important for monitoring all of the moving parts. This would be a more elaborate solution, to go beyond with #124 - with a metrics dashboard, and distributed log/tracing, and can be implemented incrementally.
Potential Solutions:
Given we are now running in a containerized environment, it would make logical sense to use the Spring Boot Actuator Prometheus endpoint for all the Java processes, and add similar prometheus endpoints to the C# and nodeJS services.
We could use Prometheus, Grafana, Loki, and other techs, and monitor things at process/host/container level, as well as add custom metrics into our apps which are 'traderx_specific' - number of trades, processing time per trade, orders, position changes, etc.
A dashboard for monitoring would be an excellent complement to the existing demo environment, once stood up.
Hi @DovOps
I'd love to start contributing to this issue. I have experience working with Prometheus, Grafana, and service observability in containerized environments.
As a first step, I’d like to work on exposing Prometheus metrics for the JAVA services and then work on C# and nodeJS. Once that’s integrated, I canbuild out the Grafana dashboards and trace logging via Loki.
Let me know if there's anything specific you'd like me to prioritize, or if there's any repo/docs you recommend I review.
I am excited to start building and contributing to this repo Thanks!