Files
spring-cloud-dataflow-samples/monitoring-samples
Christian Tzolov f8078ed08f RSocket Proxy for Prometheus monitoring
- Rename spring-cloud-dataflow-samples/tree/master/micrometer to spring-cloud-dataflow-samples/tree/master/micrometer-samples
 - Rename spring-cloud-dataflow-samples/tree/master/micrometer/tasks to spring-cloud-dataflow-samples/tree/master/micrometer-samples/task-apps
 - Add the apps under spring-cloud-dataflow-samples/tree/master/micrometer/stream-apps
 - Describe or cross-link the description of the new architecture in the root README
 - Add microsite SCDF monitoring links

 Resolves #122
2019-11-06 16:29:17 +01:00
..

Monitoring Architecture: Spring Cloud Data Flow + Prometheus RSocket Proxy

The Data Flow metrics architecture is designed around the Micrometer library - vendor-neutral application metrics facade. The Spring Cloud Data Flow server leverages the Prometheus RSocket Proxy, for monitoring of tasks, which are short lived, as well as long lived stream applications. The RSocket based monitoring architecture is reusable across the Local, Kubernetes and Cloud Foundry platforms.

The prebuilt stream and task applications support the Prometheus Proxy RSocket monitoring architecture.

The stream-apps samples shows how to enable monitoring for custom built source, processor and sink apps.

The task-apps sample shows how to enable monitoring for custom built task apps.

The following image shows the general architecture of how the Stream applications are monitored:

Stream App Monitoring

and the same architecture is used for monitoring the tasks as well.

Stream App Monitoring

Prometheus is configured to scrape each rsocket-proxy instance. Proxies in turn use the RSocket connection to pull metrics from each application. The scraped metrics are then viewable through Grafana dashboards.

Following animated diagram shows the metrics collection flow:

Stream App Monitoring