Broadleaf Microservices
  • v1.0.0-latest-prod

Monitoring & Observability

Broadleaf Goal

It is typical for complex microservice-based applications to require “multiple tools” to gain a complete monitoring and observability story. Broadleaf aims to provide options to enable various levels of support for (or provide example integrations to) well known tooling in this space, allowing implementers the ability to choose their own monitoring and observability stacks.

That being said, the microservice technical landscape has become really mature as there are great open tools that help facilitate tackling the issues of monitoring and troubleshooting problems in a distributed system. Broadleaf has adopted many of these battle-tested technology stacks as part of our own Broadleaf Cloud offering as well as provide out-of-box reference configurations for tools like Grafana, Prometheus, and the Elastic Stack if you were to roll your own stack.

Note
These configurations and tools are NOT REQUIRED and can be swapped out and replaced with any third-party monitoring or cloud native service you may already be utilizing.
Monitoring & Observability

3 Pillars of Monitoring and Observability

We recommend Implementations choose a tooling stack that allows correlation between spans and point in time metrics. At a high level, the tooling should provide correlation and visibility between these 3 aspects:

  1. Metrics

    • Example Tooling Integration: Prometheus + Grafana

    • Broadleaf Cloud Approach: Elastic Agent Kubernetes Integration

  2. Distributed Tracing

    • Example Configuration: Open Tracing + Jaeger + Elastic

    • Broadleaf Cloud Approach: Elastic APM Agent

  3. Logs

    • Example Logging Stack: Elastic + Filebeat + Kibana

    • Broadleaf Cloud Approach: Fully Managed Elastic Cloud

More details and discussion on this can be found on this Monitoring and Observability blog post