监控

Data Flow 监控架构有助于提供对服务器基础设施和已部署流和任务管道运行状况和性能至关重要的应用程序指标。

Data Flow 监控围绕 Micrometer 库设计,支持一些最流行的监控系统,例如 PrometheusWavefrontInfluxDB

Data Flow Servers, Streams & Tasks Monitoring Architecture

Wavefront 是一个高性能流分析平台,支持 3D 可观察性(指标、直方图以及跟踪和跨度)。它可以扩展到非常高的数据摄取率和查询负载,同时还可以从整个应用程序堆栈中的许多服务和来源收集数据。

Prometheus 是一个流行的基于拉取的时间序列数据库,它从目标应用程序中提取指标,其中包含预配置的端点,并提供一种查询语言来实时选择和聚合时间序列数据。

Data Flow 架构采用 Prometheus RSocket 代理 来提供对 长寿命(流)和 短寿命(任务)应用程序的统一支持。

InfluxDB 是一款流行的基于推送的时间序列开源数据库。它支持降采样、自动过期和删除不需要的数据,以及备份和还原。数据分析通过类似 SQL 的查询语言完成。

数据流允许你以声明方式选择和配置要使用的监控系统。为此,你可以应用 Spring Boot 指标配置 以启用和配置数据流监控支持。通常,你需要将以下配置添加到你的数据流和 Skipper 服务器配置中

management.metrics.export.<your-meter-registry>.enabled=true 
management.metrics.export.<your-meter-registry>.<meter-specific-properties>=... 
  • <your-meter-registry> 替换为 influxwavefrontprometheus。(注意:如果你使用 Prometheus,还要启用 Prometheus Rsocket 代理:management.metrics.export.prometheus.rsocket.enabled=true)。
  • 使用为 WavefrontInfluxDBPrometheusRSocket 代理 提供的 Spring Boot 和 Micrometer 特定配置。

默认情况下,Micrometer 配置同时用于服务器基础设施和数据管道监控。

为了帮助你入门,数据流提供了你可以自定义的 GrafanaWavefront 仪表盘。

你还可以选择 Wavefront 数据流 SaaS 磁贴。

有关如何设置监控基础设施的详细信息,请参阅以下功能指南

下图显示了启用监控和 Grafana 按钮的数据流

Two stream definitions

下图显示了 Grafana 仪表盘中的流应用程序视图

Grafana Streams Dashboard

下图显示了 Grafana 仪表盘中的任务和批处理应用程序视图

Grafana Tasks Dashboard

下图显示了 Wavefront 流应用程序仪表盘

Wavefront Stream Application Dashboard

接下来,访问 服务器监控功能指南流监控功能指南任务监控功能指南,以获取有关如何设置数据流监控基础设施的更多信息。