Apache Brooklyn 如何提取项目指标?

How does Apache Brooklyn pull project metrics?

您能否简要解释一下 Apache Brooklyn 架构如何将自身注入项目(例如 Spring Boot、Node 等)并从中提取指标数据? Java项目有没有插件可以使用?或者,它是否像 Prometheus 那样直接拉取指标?如果是,怎么做?

我只需要了解一个概况。我对文档了解不多。

Apache Brooklyn 在 'management servers' 上运行 - 这是应用程序管理逻辑运行的地方。不需要在您的应用程序的服务器上安装代理。

为了实时管理您的应用程序,Brooklyn 可以从各种不同的来源提取指标。我们将其分为两类。

使用应用程序的管理界面

如果您的应用程序公开指标,则可以直接从服务器检索这些指标。

例如,JBoss/Wildfly 应用服务器通过 http(s) 端点公开指标,CouchDB 等系统也是如此。同样,Brooklyn 可以直接使用 JMX、SNMP 等检索指标。

作为一种效率最低的方法 (!),Brooklyn 甚至可以配置为通过 ssh/winrm 定期执行命令以检索有关应用程序的系统指标。

通过第 3 方监控系统

许多人已经有了监控系统——例如New Relic、Datadog、AppDynamics、Dynatrace、Prometheus 等

Brooklyn 可以连接到第 3 方监控系统以检索有关应用程序组件的指标(或警报)。

对于 monitoring/managing 数千个组件,这种方法的扩展性更好。