9.2. 配置统计、指标和 JMX


启用数据网格导出到 MicroProfile 指标端点或通过 JMX MBeans 统计信息。您还可以注册 JMX MBeans 来执行管理操作。

9.2.1. 启用 Data Grid Statistics

借助 Data Grid,您可以为缓存管理器和缓存启用统计信息。但是,为缓存管理器启用统计信息不会为其控制的缓存启用统计信息。您必须明确启用缓存的统计信息。

注意

默认情况下,Data Grid 服务器为缓存管理器启用统计信息。

流程

  • 以声明性方式或以编程方式启用统计信息。

声明性

<cache-container statistics="true"> 1
  <local-cache name="mycache" statistics="true"/> 2
</cache-container>

1
为 Cache Manager 启用统计信息。
2
为指定缓存启用统计信息。

以编程方式

GlobalConfiguration globalConfig = new GlobalConfigurationBuilder()
  .cacheContainer().statistics(true) 1
  .build();

 ...

Configuration config = new ConfigurationBuilder()
  .statistics().enable() 2
  .build();

1
为 Cache Manager 启用统计信息。
2
为指定缓存启用统计信息。

9.2.2. 启用 Data Grid Metrics

配置 Data Grid 以导出量表和直方图。

流程

  • 以声明性方式或以编程方式配置指标。

声明性

<cache-container statistics="true"> 1
  <metrics gauges="true" histograms="true" /> 2
</cache-container>

1
计算和收集有关缓存管理器的统计信息。
2
将收集的统计信息导出为量表和直方图指标。

以编程方式

GlobalConfiguration globalConfig = new GlobalConfigurationBuilder()
  .statistics().enable() 1
  .metrics().gauges(true).histograms(true) 2
  .build();

1
计算和收集有关缓存管理器的统计信息。
2
将收集的统计信息导出为量表和直方图指标。

9.2.3. 收集数据网格指标

使用 Prometheus 等监控工具来收集数据网格指标。

前提条件

  • 启用统计信息。如果没有启用统计信息,Data Grid 为指标提供 0-1 值。
  • (可选)启用直方图。默认情况下,Data Grid 生成量表,但不生成直方图。

流程

  • 获取 Prometheus (OpenMetrics)格式的指标:

    $ curl -v http://localhost:11222/metrics
  • 以 MicroProfile JSON 格式获取指标:

    $ curl --header "Accept: application/json" http://localhost:11222/metrics

后续步骤

配置监控应用程序以收集数据网格指标。例如,将以下内容添加到 prometheus.yml 中:

static_configs:
    - targets: ['localhost:11222']

参考

9.2.4. 配置数据网格以注册 JMX MBeans

Data Grid 可以注册可以用来收集统计信息并执行管理操作的 JMX MBeans。但是,您必须将统计信息单独启用到 JMX,否则 Data Grid 都为所有统计属性提供 0 值。

流程

  • 以声明性方式或以编程方式启用 JMX。

声明性

<cache-container>
  <jmx enabled="true" /> 1
</cache-container>

1
注册数据网格 JMX MBeans.

以编程方式

GlobalConfiguration globalConfig = new GlobalConfigurationBuilder()
  .jmx().enable() 1
  .build();

1
注册数据网格 JMX MBeans.

9.2.4.1. Data Grid MBeans

Data Grid 公开了代表可管理资源的 JMX MBeans。

org.infinispan:type=Cache
可用于缓存实例的属性和操作。
org.infinispan:type=CacheManager
可用于缓存管理器的属性和操作,包括数据网格缓存和集群健康统计信息。

有关可用 JMX MBeans 的完整列表以及描述和可用的操作和属性,请参阅 Data Grid JMX 组件 文档。

Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

© 2024 Red Hat, Inc.