Skip to content

指标

1.内存指标

1.1.数据区指标

Ignite的固化内存可以通过DataRegionMetrics接口以及JMX Bean暴露的一些参数进行监控,通过这些指标,可以跟踪所有的内存使用,度量性能,以及执行必要的优化。

对于和某个特定节点有关的指标,DataRegionMetrics接口是主要的入口点,因为一个节点可以配置多个区域,因此每个区域的指标都是单独收集和获取的。

启用数据区指标

可以为希望收集指标的区域配置DataRegionConfiguration.setMetricsEnabled(true),已开启指标收集:

xml
<bean class="org.apache.ignite.configuration.IgniteConfiguration">
  <property name="dataStorageConfiguration">
    <bean class="org.apache.ignite.configuration.DataStorageConfiguration">
      <property name="dataRegionConfigurations">
        <list>
          <bean class="org.apache.ignite.configuration.DataRegionConfiguration">
            <!-- Custom region name. -->
            <property name="name" value="myDataRegion"/>

            <!-- Enable metrics for this data region  -->
            <property name="metricsEnabled" value="true"/>

            <!-- Other configurations -->
            ...
          </bean>
        </list>
      </property>
    </bean>
  </property>

  <!-- Other Ignite configurations -->
  ...
</bean>
java
// Ignite configuration.
IgniteConfiguration cfg = new IgniteConfiguration();

// Durable Memory configuration.
DataStorageConfiguration storageCfg = new DataStorageConfiguration();

// Create a new data region.
DataRegionConfiguration regionCfg = new DataRegionConfiguration();

// Region name.
regionCfg.setName("myDataRegion");

// Enabe metrics for this region.
regionCfg.setMetricsEnabled(true);

// Set the data region configuration.
storageCfg.setDataRegionConfigurations(regionCfg);

// Other configurations
...

// Apply the new configuration.
cfg.setDataStorageConfiguration(storageCfg);

获取指标

使用Ignite.dataRegionMetrics()接口的方法或者对应的JMX Bean可以获得最新的指标快照然后进行迭代,如下所示:

java
// Get the metrics of all the data regions configured on a node.
Collection<DataRegionMetrics> regionsMetrics = ignite.dataRegionMetrics();

// Print out some of the metrics.
for (DataRegionMetrics metrics : regionsMetrics) {
    System.out.println(">>> Memory Region Name: " + metrics.getName());
    System.out.println(">>> Allocation Rate: " + metrics.getAllocationRate());
    System.out.println(">>> Fill Factor: " + metrics.getPagesFillFactor());
    System.out.println(">>> Allocated Size: " + metrics.getTotalAllocatedPages());
    System.out.println(">>> Physical Memory Size: " + metrics.getPhysicalMemorySize());
}

下面是数据区的可用指标列表:

方法名描述
getName()返回指标所属内存区的名字。
getTotalAllocatedPages()获取该内存区已分配页面的总数量。
getAllocationRate()获取该内存区的页面分配比率。
getEvictionRate()获取该内存区的页面退出比率。
getLargeEntriesPagesPercentage()获取被超过页面大小的大条目完全占用的页面的百分比,大条目也可以拆分为多个片段,每个片段适配一个单个页面。
getPagesFillFactor()获取仍然空闲可用的空间的百分比。
getDirtyPages()获取脏页面的数量(页面的内容与磁盘上同一页的内容不同),这个指标只有当持久化存储启用的时候才可用。
getPagesReplaceRate()获取内存中的页面被磁盘上的其它页面替换的速率(页/秒)。这个指标有效地表示了内存中页面退出并且被磁盘上的页面替换的速率,这个指标只有当持久化存储启用的时候才可用。
getPhysicalMemoryPages()获取当前加载进内存的页面数量,如果持久化存储未启用,这个指标会等同于getTotalAllocatedPages()
getTotalAllocatedSize()获取为内存区分配的总内存大小(字节),如果禁用原生持久化,该指标显示内存中页面总大小,如果启用原生持久化,该指标显示内存和磁盘上的页面总大小。
getPhysicalMemorySize()获取内存中加载的页面总大小(字节),如果禁用了原生持久化,该指标与getTotalAllocatedSize()一致。
getCheckpointBufferPages()获取页面中的检查点缓冲区大小。
getCheckpointBufferSize()获取检查点缓冲区大小(字节)。
getPageSize()获取内存页面大小。

使用JMX Bean

所有本地节点的DataRegionMetrics,都是可以通过JMX接口DataRegionMetricsMXBean访问的,可以通过任何兼容JMX的工具或者API接入。

使用特定JMX bean暴露的DataRegionMetricsMXBean.enableMetrics()方法可以激活数据区的指标收集。

JMX bean暴露了与DataRegionMetrics相同的指标集合,然后还有些其它的,具体可以看DataRegionMetricsMXBean的javadoc。

1.2.Ignite原生持久化指标

Ignite还为原生持久化提供了一组指标,这些指标在DataStorageMetrics接口中分组。

启用数据存储指标

通过配置DataStorageConfiguration.setMetricsEnabled(true)可以启用相关的指标收集,如下:

xml
<bean class="org.apache.ignite.configuration.IgniteConfiguration">
  <property name="dataStorageConfiguration">
    <bean class="org.apache.ignite.configuration.DataStorageConfiguration">
      <!-- Enable metrics for Ignite persistence  -->
      <property name="metricsEnabled" value="true"/>

      <!-- Other configurations -->
      ...
    </bean>
  </property>

  <!-- Other Ignite configurations -->
  ...
</bean>
java
// Ignite configuration.
IgniteConfiguration cfg = new IgniteConfiguration();

// Durable Memory configuration.
DataStorageConfiguration storageCfg = new DataStorageConfiguration();

// Enable metrics for Ignite persistence.
storageCfg.setMetricsEnabled(true);

// Other configurations
...

// Apply the new configuration.
cfg.setDataStorageConfiguration(storageCfg);

获取指标

调用Ignite.dataStorageMetrics()方法可以获取最新的持久化指标快照,如下所示:

java
// Getting metrics.
DataStorageMetrics pm = ignite.dataStorageMetrics();

System.out.println("Fsync duration: " + pm.getLastCheckpointFsyncDuration());

System.out.println("Data pages: " + pm.getLastCheckpointDataPagesNumber());

System.out.println("Checkpoint duration:" + pm.getLastCheckpointDuration());

下面是和数据存储有关的可用指标列表:

方法名描述
getWalWritingRate()获取在最后配置的时间间隔内,每秒写入WAL的平均记录数。
getWalArchiveSegments()获取目前WAL存档中的段数量。
getWalFsyncTimeAverage()获取在最后配置的时间间隔内,以微妙计的平均WAL FSYNC模式持续时间。
getLastCheckpointDuration()获取以毫秒计的最近一次检查点进程持续时间。
getLastCheckpointTotalPagesNumber()获取最近的检查点进程中写入的页面总数。
getTotalAllocatedSize()与数据区相同
getTotalAllocatedPages()按字节
getPhysicalMemorySize()与数据区相同
getPhysicalMemoryPages()按字节
getCheckpointBufferPages()按页面数获取检查点缓冲区大小
getCheckpointBufferSize()按大小获取检查点缓冲区大小

具体可以看DataStorageMetrics的javadoc。

使用JMX Bean

原生持久化的指标,也可以通过JMX接口DataStorageMetricsMXBean收集的,可以通过任何兼容JMX的工具或者API接入。

使用特定JMX bean暴露的DataStorageMetricsMXBean.enableMetrics()方法可以激活持久化相关的指标收集。

JMX bean暴露了与DataStorageMetrics相同的指标集合,然后还有些其它的,具体可以看DataStorageMetricsMXBean的javadoc。

启用指标收集

指标收集不是一个无代价的操作,会影响应用的性能,因此默认是关闭的,如果要打开,可以使用下面的方式:

  1. 对于数据区可以配置DataRegionConfiguration.setMetricsEnabled(true)
  2. 对于原生持久化可以配置DataStorageConfiguration.setMetricsEnabled(true)
  3. 可以使用特定JMXbean暴露的DataRegionMetricsMXBean.enableMetrics()方法;
  4. 可以使用特定JMXbean暴露的DataStorageMetricsMXBean.enableMetrics()方法;

1.3.内存使用量计算

还可以获得与特定CacheGroup有关的缓存的指标,目前这些指标只能通过CacheGroupMetricsMXBeanJMX接口访问,具体的可用指标列表,可以看CacheGroupMetricsMXBean的javadoc。

单节点内存使用

下面的示例显示如何计算当前节点大小,即当前节点的总体数据量(MB/GB),以及当前缓存大小,即缓存的数据大小(MB/GB)。

  1. 当前节点大小:DataStorageMetricsMXBean#getTotalAllocatedSize
  2. 某个节点的特定缓存的当前大小:CacheGroupMetricsMXBean#getTotalAllocatedSize,注意,这个指标只是一个缓存组内一个缓存(默认行为)。

集群范围内存使用

  1. 要计算整个集群的大小,可以对所有节点的DataStorageMetricsMXBean#getTotalAllocatedSize进行汇总;
  2. 当前缓存的总大小为所有节点的CacheGroupMetricsMXBean#getTotalAllocatedSize汇总,注意,这个指标只是一个缓存组内一个缓存(默认行为)。

2.缓存指标

通过CacheMetrics接口,Ignite还可以监测和分布式缓存有关的统计数据。

CacheMetrics接口有各种指标,比如:缓存处理的put和get操作的总数,平均put和get时间,退出总数量,当前后写缓存存储缓冲区大小,以及更多。

2.1.启用缓存指标

要启用缓存指标,可以将希望收集指标的缓存的CacheConfiguration.setStatisticsEnabled(boolean)配置为true,下面以名为test-cache的缓存为例:

xml
<bean class="org.apache.ignite.configuration.IgniteConfiguration">
  <property name="cacheConfiguration">
    <list>
      <bean class="org.apache.ignite.configuration.CacheConfiguration">
        <property name="name" value="test-cache"/>

        <!-- Enable statistics for the cache. -->
        <property name="statisticsEnabled" value="true"/>
      </bean>
    </list>
  </property>
</bean>
java
IgniteConfiguration cfg = new IgniteConfiguration();

CacheConfiguration cacheCfg = new CacheConfiguration("test-cache");

// Enable statistics for the cache.
cacheCfg.setStatisticsEnabled(true);

// Start the node.
Ignition.start(cfg);

2.2.获取缓存指标

通过如下方式可以获得一个特定缓存的最新指标快照:

  • IgniteCache.metrics():获取缓存所在的整个集群的指标快照;
  • IgniteCache.metrics(ClusterGroup grp):获取属于给定集群组的节点的指标快照;
  • IgniteCache.localMetrics():获取缓存对应的本地节点的指标快照。
java
IgniteCache<Integer, Person> cache = ignite.getOrCreateCache("myCache");

// Get cache metrics
CacheMetrics cm = cache.metrics();

System.out.println("Avg put time: " + cm.getAveragePutTime());

System.out.println("Avg get time: " + cm.getAverageGetTime());

查看CacheMetrics的javadoc,可以了解完整的可用指标列表。

2.3.使用JMX Bean

通过CacheMetricsMXBean接口也可以用于访问缓存的指标,可以通过任意兼容JMX的工具或者API接入bean。如果要在应用中处理bean,通过IgniteCache.mxBean()或者IgniteCache.localMxBean()可以获得bean的引用。

使用特定JMX Bean暴露的CacheMetricsMXBean.enableMetrics()方法,可以激活缓存指标收集。

查看CacheMetricsMXBean的javadoc,可以了解完整的可用指标列表。

2.4.缓存大小计算

要了解如何计算缓存的大小,可以参见内存使用量计算

3.指标体系

Ignite的2.8.0版本引入了新的指标子系统,它使用户能够使用几个独立的、可插拔的指标导出器,用于和不同的第三方监控工具集成。

下面是启用导出器的方法:

Java配置:

java
IgniteConfiguration cfg = new IgniteConfiguration();

cfg.setMetricExporterSpi(
  new JmxMetricExporterSpi(),
  new SqlViewMetricExporterSpi());

Spring配置文件:

xml
<bean class="org.apache.ignite.IgniteConfiguration">
    ...
    <property name="metricExporterSpi">
        <list>
            <bean class="org.apache.ignite.spi.metric.jmx.JmxMetricExporterSpi"/>
        </list>
    </property>
    ...
</bean>

所有指标都合并到指标注册表中。每个指标注册表都表示一些Ignite实体、进程或子系统,例如缓存、缓存组、事务处理器等。有关更多详细信息,请参见下面的实体章节,如果未指定其他指标,则指标值是本地节点的。

对用户来说,以下导出器是直接可用的:

  • org.apache.ignite.spi.metric.jmx.JmxMetricExporterSpi
  • org.apache.ignite.spi.metric.sql.SqlViewMetricExporterSpi
  • org.apache.ignite.spi.metric.opencensus.OpenCensusMetricExporterSpi
  • org.apache.ignite.spi.metric.log.LogExporterSpi

如果需要通过其他协议进行集成,可以考虑创建org.apache.ignite.spi.metric.MetricExporterSpi的自定义实现。

3.1.导出器

注意

导出器是在节点启动过程中配置的,无法在运行时修改。

JMX

导出器中的每个指标注册表都是一个独立的JMX bean,注册表中的每个指标,都会以JMX bean中的一个属性表示。

配置属性

  • filter:过滤不希望导出的指标注册表的谓词。

SQL视图

将所有的指标导出为一个SQL系统视图,视图名为SYS.METRICS

  • NAME:指标名;
  • VALUE:指标值;
  • DESCRIPTION:指标描述

配置属性

  • filter:过滤不希望导出的指标注册表的谓词。

日志

每隔一段时间将所有的指标信息输出到Ignite的日志文件,日志级别为INFO,输出格式为{metric_full_name}={metric_value}

配置属性

  • filter:过滤不希望导出的指标注册表的谓词;
  • period:触发指标信息输出的时间间隔(毫秒)。

OpenCensus

这是一个Ignite与OpenCensus库集成的导出器,它会每隔一段时间将Ignite的指标信息输出到MeasureMap

注意

  1. 如果要使用OpenCensus集成,需要引入ignite-opencensus包;
  2. 另外,需要配置OpenCensus的StatsCollector,来支持将指标输出到特定的系统,具体可以看这个示例,还有OpenCensus的文档。

配置属性

  • filter:过滤不希望导出的指标注册表的谓词;
  • period:触发指标信息输出的时间间隔(毫秒);
  • sendInstanceName:如果开启,在每个指标上会添加Ignite实例名的标签;
  • sendNodeId:如果开启,在每个指标上会添加Ignite节点ID的标签;
  • sendConsistentId:如果开启,在每个指标上会添加Ignite节点的一致性ID的标签;

3.2.指标管理

下面的指标管理操作由org.apache.ignite.mxbean.MetricsMXBean实现:

  • resetMetrics:将指标的当前值重置为默认值;
  • configureHitrate:更改命中率时间间隔;
  • configureHistogram:更改直方图范围。

配置在节点重启后仍然有效,configureHitrate并且configureHistogram操作的影响是集群范围的。

3.3.指标类型

  • 指标,度量:提供一些数值的简单指标,比如特定缓存执行的put操作统计;

  • 命中率指标:显示最近T毫秒内某些事件统计的指标,其中T是命中率时间间隔,时间间隔可以动态配置。比如最后一秒写入的数据页数;

  • 直方图:统计确定某些界限的事件的度量,边界可以动态配置。比如处理速度超过[100毫秒、250毫秒、500毫秒、更慢的请求]的请求计数。在JMX导出器中的直方图指标导出:每个直方图指标的间隔都作为单独的JMX Bean属性导出,该属性的名称为{mname}_{low_bound}_{high_bound}

    • mname:指标名称;
    • low_bound:边界的开始,第一个界限为0;
    • high_bound:边界的结尾,inf为最后一个界限。

边界为[10,100]的指标名称示例:

  • histogram_0_10:小于10;
  • histogram_10_100:10至100;
  • histogram_100_inf:超过100。

3.4.实体

  • 指标:提供通过固定算法更新的值的命名实体,当前值存储在指标中,并在运行时由Ignite内部代码更新。比如特定缓存的put操作统计,自节点启动以来已写入页面的统计等;
  • 度量:提供通过固定算法计算的值的命名实体,当前值未存储,按需计算;
  • 指标注册表:指标的命名集,指标在注册表中做了逻辑分组,以描述某个实体或子系统的所有方面;
  • 指标导出器:可以通过某些特定协议导出指标的Ignite SPI(MetricExporterSPI)实现。导出器通过IgniteConfiguration#setMetricExporterSpi配置,可以配置多个导出器,也可以提供自定义导出器。

3.5.指标命名

完整的指标名由两部分组成:注册表名和指标名,用点作为分隔符。

指标完整名示例:

  • cache.my-cache.puts:指标名包含cache.my-cache注册表中my-cache的put操作;
  • cache.my-other-cache.puts:指标名包含cache.my-other-cache注册表中my-other-cache的put操作。

3.5.1.cache.{cache_name}.

该注册表包含了缓存的指标信息。

该注册表名包括了缓存名。

如果注册表表示近缓存,则添加near后缀。

示例:

  • cache.default:默认缓存的注册表;
  • cache.my-cache.near:名为my-cache的近缓存的注册表。
名称类型描述
CacheEvictionslong缓存的退出的总数
CacheGetslong缓存的读取总数
CacheHitslong缓存的命中总数
CacheMisseslong缓存的未命中总数
CachePutslong缓存的写入总数
CacheRemovalslong缓存的删除总数
CacheTxCommitslong缓存的事务提交总数
CacheTxRollbackslong缓存的事务回滚总数
CommitTimehistogram提交时间(纳秒)
CommitTimeTotallong提交时间总数(纳秒)
EntryProcessorHitslong缓存中存在的键调用总数
EntryProcessorInvokeTimeNanoslong缓存调用总数(纳秒)
EntryProcessorMaxInvocationTimelong到目前为止的最大缓存调用执行时间
EntryProcessorMinInvocationTimelong到目前为止的最小缓存调用执行时间
EntryProcessorMisseslong缓存中不存在的键调用总数
EntryProcessorPutslong触发更新的缓存调用总数
EntryProcessorReadOnlyInvocationslong不触发更新的缓存调用总数
EntryProcessorRemovalslong触发删除的缓存调用总数
EstimatedRebalancingKeyslong预估的再平衡键数量
GetTimehistogram读取时间(纳秒)
GetTimeTotallong缓存读取总时间(纳秒)
IsIndexRebuildInProgressboolean如果索引在重建过程中则为true
OffHeapEvictionslong堆外内存退出总量
OffHeapGetslong堆外内存读取请求总数
OffHeapHitslong堆外内存读取请求命中总数
OffHeapMisseslong堆外内存读取请求未命中总数
OffHeapPutslong堆外内存写入请求总数
OffHeapRemovalslong堆外内存删除总数
PutTimehistogram写入时间(纳秒)
PutTimeTotallong缓存写入总时间(纳秒)
QueryCompletedlong查询完成数
QueryExecutedlong查询执行数
QueryFailedlong查询失败数
QueryMaximumTimelong查询最长执行时间
QueryMinimalTimelong查询最短执行时间
QuerySumTimelong查询总时间
RebalanceClearingPartitionsLeftlong再平衡实际开始前需要清理的分区数
RebalanceStartTimelong再平衡开始时间
RebalancedKeyslong已经再平衡的键数量
RebalancingBytesRatelong预估的再平衡速度(字节)
RebalancingKeysRatelong预估的再平衡速度(键数量)
RemoveTimehistogram删除时间(纳秒)
RemoveTimeTotallong缓存删除总时间(纳秒)
RollbackTimehistogram回滚时间(纳秒)
RollbackTimeTotallong回滚总时间(纳秒)
TotalRebalancedByteslong以再平衡字节数

3.5.2.cacheGroups.

该注册表包含了缓存组的指标信息。

该注册表名包括了缓存组名。

示例:

  • cacheGroups.my-group:名为my-group的缓存组的注册表。
名称类型描述
AffinityPartitionsAssignmentMapjava.util.Collections$EmptyMap映射分区分配哈希表
Cachesjava.util.ArrayList缓存列表
IndexBuildCountPartitionsLeftlong完成索引创建或重建所需处理的分区数
LocalNodeMovingPartitionsCountInteger该缓存组在本地节点上状态为MOVING的分区数
LocalNodeOwningPartitionsCountInteger该缓存组在本地节点上状态为OWNING的分区数
LocalNodeRentingEntriesCountlong该缓存组在本地节点上的状态为RENTING的分区中要退出的数据量
LocalNodeRentingPartitionsCountInteger该缓存组在本地节点上的状态为RENTING的分区数
MaximumNumberOfPartitionCopiesInteger该缓存组中的所有分区的最大分区副本数
MinimumNumberOfPartitionCopiesInteger该缓存组中的所有分区的最小分区副本数
MovingPartitionsAllocationMapjava.util.Collections$EmptyMap集群中状态为MOVING的分区的分配哈希表
OwningPartitionsAllocationMapjava.util.Collections$EmptyMap集群中状态为OWNING的分区的分配哈希表
PartitionIdsjava.util.ArrayList本地分区ID列表
SparseStorageSizelong组分配的存储空间,针对可能的稀疏性进行了调整(字节)
StorageSizelong为缓存组分配的存储空间(字节)
TotalAllocatedPageslong为缓存组分配的页面总数
TotalAllocatedSizelong为缓存组分配的内存总大小(字节)

3.5.3.pme

该注册表包含了分区映射交换过程的指标信息。

名称类型描述
CacheOperationsBlockedDurationlong当前的PME过程缓存操作阻塞时间(毫秒)
CacheOperationsBlockedDurationHistogramhistogram当前的PME过程缓存操作阻塞直方图(毫秒)
Durationlong当前的PME持续时间(毫秒)
DurationHistogramhistogram当前的PME持续直方图(毫秒)

3.5.4.io.statistics.cacheGroups.

该注册表包含了缓存组的IO统计信息。

该注册表名包括了缓存名。

示例:

  • io.statistics.cacheGroups.my-group:名为my-group的缓存组的注册表。
名称类型描述
LOGICAL_READSlong逻辑读数量
PHYSICAL_READSlong物理读数量
grpIdInteger组ID
nameString索引名
startTimelong统计数据收集开始时间

3.5.5.io.statistics.sortedIndexes.{cache_name}.

该注册表包含了有序索引的IO统计信息。

该注册表名包括了缓存名和索引名。

示例:

  • io.statistics.sortedIndexes.my-cache.NAME_IDX:名为my-cache的缓存及其名为NAME_IDX的索引的注册表。
名称类型描述
LOGICAL_READS_INNERlong内部树节点的逻辑读取数
LOGICAL_READS_LEAFlong末端树节点的逻辑读取数
PHYSICAL_READS_INNERlong内部树节点的物理读取数
PHYSICAL_READS_LEAFlong末端树节点的物理读取数
indexNameString索引名
nameString缓存名
startTimelong统计数据收集开始时间

3.5.6.io.statistics.hashIndexes.{cache_name}.

该注册表包含了哈希索引的IO统计信息。

该注册表名包括了缓存名和索引名。

示例:

  • io.statistics.hashIndexes.my-cache.HASH_IDX:名为my-cache的缓存及其名为HASH_IDX的索引的注册表。
名称类型描述
LOGICAL_READS_INNERlong内部树节点的逻辑读取数
LOGICAL_READS_LEAFlong末端树节点的逻辑读取数
PHYSICAL_READS_INNERlong内部树节点的物理读取数
PHYSICAL_READS_LEAFlong末端树节点的物理读取数
indexNameString索引名
nameString缓存名
startTimelong统计数据收集开始时间

3.5.7.io.communication

该注册表包含了和通信有关的IO统计信息。

名称类型描述
OutboundMessagesQueueSizeInteger出站消息队列大小
SentMessagesCountInteger发送消息数量
SentBytesCountlong发送字节数
ReceivedBytesCountlong接收字节数
ReceivedMessagesCountInteger接收消息数量

3.5.8.io.dataregion.

该注册表包含了和数据区有关的指标信息。

该注册表名包括了数据区名。

示例:

  • io.dataregion.my-region:名为my-region的数据区。
名称类型描述
AllocationRatelongrateTimeInternal期间的平均分配率(每秒页面数)
CheckpointBufferSizelong检查点缓冲区大小(字节)
DirtyPageslong内存中还没有同步到持久化存储的页面数
EmptyDataPageslong计算数据区中的空页面数,它只计算可重用的完全空闲的页面(比如包含在空闲列表的可重用桶中的页面)
EvictionRatelong退出率(每秒页面数)
LargeEntriesPagesCountlong完全被超过页面大小的大条目占用的页面数
OffHeapSizelong堆外内存大小(字节)
OffheapUsedSizelong堆外内存已使用大小(字节)
PagesFillFactordouble已用空间的百分比
PagesReadlong上次重启以来的页面读取数
PagesReplaceAgelong内存中的页面被持久化存储中的页面替换的平均期限(毫秒)
PagesReplaceRatelong内存中的页面被持久化存储中的页面替换的速率(每秒页面数)
PagesReplacedlong从上次重启以来的页面替换数
PagesWrittenlong从上次重启以来的页面写入数
PhysicalMemoryPageslong物理内存中驻留的页面数
PhysicalMemorySizelong加载到内存中的页面总大小(字节)
TotalAllocatedPageslong分配的页面总数
TotalAllocatedSizelong数据区中分配的页面总大小(字节)
TotalThrottlingTimelong限流线程总时间(毫秒),Ignite会限制在检查点执行过程中生成脏页面的线程
UsedCheckpointBufferSizelong已使用的检查点缓冲区大小(字节)

3.5.9.io.datastorage

该注册表包含了和数据存储有关的指标信息。

名称类型描述
CheckpointTotalTimelong检查点总时间
LastCheckpointCopiedOnWritePagesNumberlong上次检查点过程复制到临时检查点缓冲区的页面数
LastCheckpointDataPagesNumberlong上次检查点过程的数据页面写入数
LastCheckpointDurationlong上次检查点过程的持续时间(毫秒)
LastCheckpointFsyncDurationlong上次检查点过程的同步阶段的持续时间(毫秒)
LastCheckpointLockWaitDurationlong上次检查点过程的锁等待时间
LastCheckpointMarkDurationlong上次检查点过程的标记时间
LastCheckpointPagesWriteDurationlong上次检查点过程的页面写入时间
LastCheckpointTotalPagesNumberlong上次检查点过程的页面写入总数
SparseStorageSizelong为可能的稀疏性而调整的已分配存储空间(字节)
StorageSizelong分配的存储空间(字节)
WalArchiveSegmentsInteger当前WAL存档中的WAL段数量
WalBuffPollSpinsRatelongWAL缓冲区轮询在上一个时间间隔内的自旋数
WalFsyncTimeDurationlongFSYNC模式持续时间
WalFsyncTimeNumlongFSYNC模式总数量
WalLastRollOverTimelong上一次WAL段翻转时间
WalLoggingRatelong上一个时间间隔内WAL记录的每秒平均写入量
WalTotalSizelongWAL文件存储总大小(字节)
WalWritingRatelong上一个时间间隔内WAL的每秒平均写入字节数

3.5.10.sys

该注册表包含了和JVM和CPU等有关的系统指标信息。

名称类型描述
CpuLoaddoubleCPU负载
CurrentThreadCpuTimelongThreadMXBean#getCurrentThreadCpuTime()
CurrentThreadUserTimelongThreadMXBean#getCurrentThreadUserTime()
DaemonThreadCountIntegerThreadMXBean#getDaemonThreadCount()
GcCpuLoaddoubleGC的CPU负载
PeakThreadCountIntegerThreadMXBean#getPeakThreadCount()
SystemLoadAveragejava.lang.DoubleOperatingSystemMXBean#getSystemLoadAverage()
ThreadCountIntegerThreadMXBean#getThreadCount()
TotalExecutedTaskslong已执行任务总数
TotalStartedThreadCountlongThreadMXBean#getTotalStartedThreadCount()
UpTimelongRuntimeMxBean#getUptime()
memory.heap.committedlongMemoryUsage#getHeapMemoryUsage()#getCommitted()
memory.heap.initlongMemoryUsage#getHeapMemoryUsage()#getInit()
memory.heap.maxlongMemoryUsage#getHeapMemoryUsage()#getMax()
memory.heap.usedlongMemoryUsage#getHeapMemoryUsage()#getUsed()
memory.nonheap.committedlongMemoryUsage#getNonHeapMemoryUsage()#getCommitted()
memory.nonheap.initlongMemoryUsage#getNonHeapMemoryUsage()#getInit()
memory.nonheap.maxlongMemoryUsage#getNonHeapMemoryUsage()#getMax()
memory.nonheap.usedlongMemoryUsage#getNonHeapMemoryUsage()#getUsed()

3.5.11.tx

该注册表包含了和事务有关的指标信息。

名称类型描述
AllOwnerTransactionsjava.util.HashMap本地节点持有的事务哈希表
LockedKeysNumberlong当前节点锁定的键数量
OwnerTransactionsNumberlong当前节点发起的正在运行的事务数
TransactionsHoldingLockNumberlong至少锁定一个键的正在运行的事务数
LastCommitTimelong上次提交时间
nodeSystemTimeHistogramhistogram以直方图表示的节点事务系统时间
nodeUserTimeHistogramhistogram以直方图表示的节点事务用户时间
LastRollbackTimelong上次回滚时间
totalNodeSystemTimelong节点的事务系统总时间
totalNodeUserTimelong节点的事务用户总时间
txCommitsInteger提交事务数
txRollbacksInteger回滚事务数

3.5.12.compute.jobs

该注册表包含了和计算作业有关的指标信息。

名称类型描述
Activelong当前正在执行的作业数
Canceledlong当前正在运行的已取消作业数
ExecutionTimelong作业执行总时间
Finishedlong已完成作业数
Rejectedlong在最近的冲突解决操作之后被拒绝的作业数
Startedlong已启动作业数
Waitinglong当前等待执行的作业数
WaitingTimelong作业花在等待上的总时间

3.5.13.threadPools.

该注册表包含了和线程池有关的指标信息。

该注册表名包含了线程池名。

示例:

  • threadPools.StripedExecutor:名为StripedExecutor的线程池
名称类型描述
ActiveCountlong正在执行任务的线程的近似数量
CompletedTaskCountlong已完成执行的任务近似总数
CorePoolSizelong核心线程数
KeepAliveTimelong线程保持活动时间,即超过核心线程池大小的线程在被终止之前可能保持空闲的时间
LargestPoolSizelong线程池中的并发最大线程数
MaximumPoolSizelong最大允许线程数
PoolSizelong线程池当前线程数
QueueSizelong当前执行队列大小
RejectedExecutionHandlerClassString当前拒绝处理器类名
Shutdownboolean如果该执行器已关闭则为true
TaskCountlong已计划执行的任务近似总数
Terminatedboolean如果关闭后所有任务都已完成则为true
Terminatinglong如果终止但尚未终止则为true
ThreadFactoryClassString用于创建新线程的线程工厂类名

4.系统视图

2.8.0版本引入了新的系统视图子系统,主要目标是使用户能够通过几个独立的可插拔的导出器查看Ignite内部实体的状态。

传统的RDBMS用户都熟悉系统视图的概念,Ignite系统视图提供了与RDBMS系统视图相同的方式。主要区别是,只要实现了相应协议的导出器,均可访问Ignite系统视图,目前是直接支持SQL和JMX。

  • JMX和SQL出口默认处于启用状态,无需显式配置;
  • SQL视图位于SYS模式中;
  • 导出器是在节点启动期间配置的,不能在运行时更改;
  • 如果没有明确指定,则所有系统视图的数据都是本地化的。

实体

  • 系统视图:一些Ignite内部对象的命名列表;
  • 系统视图导出器:通过某些特定协议导出系统视图的Ignite SPI实现。导出器通过IgniteConfiguration#setSysteViewExporterSpi配置,可以配置多个导出器。如果需要通过不直接支持的任何协议进行集成,可以创建自定义的org.apache.ignite.spi.systemview.SystemViewExporterSpi实现。

导出器

JMX导出器

每个系统视图都会暴露为一个含有TabularData的JMX Bean。

SQL导出器

每个系统视图都会在SYS模式下暴露为一个SQL系统视图。

4.1.CACHES

CACHES视图暴露了缓存的各种信息。

列名类型描述
CACHE_NAMEString缓存名
CACHE_IDint缓存ID
CACHE_TYPEString缓存类型
CACHE_MODEString缓存模式
ATOMICITY_MODEString原子化模式
CACHE_GROUP_NAMEString缓存组名
AFFINITYString关联函数的toString表示
AFFINITY_MAPPERString关联映射器的toString表示
BACKUPSint备份数
CACHE_GROUP_IDint缓存组ID
CACHE_LOADER_FACTORYString缓存加载器工厂的toString表示
CACHE_STORE_FACTORYString缓存存储器工厂的toString表示
CACHE_WRITER_FACTORYString缓存写入器工厂的toString表示
DATA_REGION_NAMEString数据区名
DEFAULT_LOCK_TIMEOUTlong锁超时(毫秒)
EVICTION_FILTERString退出过滤器的toString表示
EVICTION_POLICY_FACTORYString退出策略工厂的toString表示
EXPIRY_POLICY_FACTORYString过期策略工厂的toString表示
INTERCEPTORString拦截器的toString表示
IS_COPY_ON_READboolean缓存值副本是否保存在堆内的标志
IS_EAGER_TTLboolean是否立即从缓存中删除过期数据的标志
IS_ENCRYPTION_ENABLEDboolean缓存数据开启加密则为true
IS_EVENTS_DISABLEDboolean缓存事件禁用则为true
IS_INVALIDATEboolean如果值在近缓存中提交时无效(为空),则为true
IS_LOAD_PREVIOUS_VALUEboolean如果值在缓存中不存在时应该从存储中加载,则为true
IS_MANAGEMENT_ENABLEDboolean
IS_NEAR_CACHE_ENABLEDboolean开启近缓存则为true
IS_ONHEAP_CACHE_ENABLEDboolean开启堆内缓存则为true
IS_READ_FROM_BACKUPboolean如果开启从备份读则为true
IS_READ_THROUGHboolean如果开启通读则为true
IS_SQL_ESCAPE_ALLboolean如果所有的表名和字段名都用双引号转义则为true
IS_SQL_ONHEAP_CACHE_ENABLEDboolean如果堆内缓存SQL开启则为true,开启时,查询引擎可以访问缓存的SQL数据,当相关的缓存数据发生变更或者退出时,这些数据也会失效退出
IS_STATISTICS_ENABLEDboolean
IS_STORE_KEEP_BINARYboolean缓存存储实现处理二进制对象而不是Java对象的标志
IS_WRITE_BEHIND_ENABLEDboolean缓存存储开启后写模式标志
IS_WRITE_THROUGHboolean如果开启通写则为true
MAX_CONCURRENT_ASYNC_OPERATIONSint允许的最大并发异步操作数,如果为0,则不受限制
MAX_QUERY_ITERATORS_COUNTint可以存储的查询迭代器的最大值,当每页数据按需发给用户端时,存储迭代器用于支持查询分页
NEAR_CACHE_EVICTION_POLICY_FACTORYString近缓存退出策略工厂的toString表示
NEAR_CACHE_START_SIZEint启动后将用于预创建内部哈希表的近缓存初始缓存大小
NODE_FILTERString节点过滤器NodeFilter实现的toString表示
PARTITION_LOSS_POLICYString分区丢失策略的toString表示
QUERY_DETAIL_METRICS_SIZEint用于监控目的在内存中存储的查询详细指标的大小,如果为0则不会收集历史记录
QUERY_PARALLELISMint单节点查询并行度的查询执行引擎提示
REBALANCE_BATCH_SIZEint单次再平衡消息大小(字节)
REBALANCE_BATCHES_PREFETCH_COUNTint再平衡开始时节点生成的批次数
REBALANCE_DELAYlong再平衡延迟时间(毫秒)
REBALANCE_MODEString再平衡模式
REBALANCE_ORDERint再平衡顺序
REBALANCE_THROTTLElong为了避免CPU和网络的过载,再平衡消息之间的等待时间(毫秒)
REBALANCE_TIMEOUTlong再平衡超时(毫米)
SQL_INDEX_MAX_INLINE_SIZEint索引内联大小(字节)
SQL_ONHEAP_CACHE_MAX_SIZEintSQL堆内缓存最大值,以行数计算,当到达最大值时最早的数据会被退出
SQL_SCHEMAString模式名
TOPOLOGY_VALIDATORString拓扑验证器的toString表示
WRITE_BEHIND_BATCH_SIZEint后写缓存的缓存操作批次大小
WRITE_BEHIND_COALESCINGboolean后写缓存存储操作的写合并标志。将具有相同键的存储操作(get或remove)组合或合并为单个操作,从而减少对底层缓存存储的压力
WRITE_BEHIND_FLUSH_FREQUENCYlong后写缓存将数据刷新到底层存储的频率(毫秒)
WRITE_BEHIND_FLUSH_SIZEint后写缓存刷新数据大小,如果缓存数据量达到该值,所有的后写缓存数据都会刷新到底层存储,然后后写缓存会被清空
WRITE_BEHIND_FLUSH_THREAD_COUNTint执行后写缓存刷新的线程数
WRITE_SYNCHRONIZATION_MODEString写同步模式

4.2.CACHE_GROUPS

该视图暴露了已有的缓存组的各种信息。

列名数据类型描述
CACHE_GROUP_NAMEString缓存组名
CACHE_COUNTint缓存组中的缓存数
DATA_REGION_NAMEString存储缓存组中数据的数据区
CACHE_MODEString默认缓存模式
ATOMICITY_MODEString默认原子化模式
AFFINITYString关联函数的toString表示
BACKUPSint备份数
CACHE_GROUP_IDint缓存组ID
IS_SHAREDboolean缓存组为共享模式则为true
NODE_FILTERString节点过滤器NodeFilter的toString表示
PARTITION_LOSS_POLICYString分区丢失策略的toString表示
PARTITIONS_COUNTint分区数
REBALANCE_DELAYlong再平衡延迟时间(毫秒)
REBALANCE_MODEString再平衡模式
REBALANCE_ORDERint再平衡组顺序
TOPOLOGY_VALIDATORString拓扑验证器的toString表示

4.3.TASKS

TASKS视图暴露了与正在运行的计算任务有关的各种信息。

列名数据类型描述
AFFINITY_CACHE_NAMEString映射缓存名
AFFINITY_PARTITION_IDint映射分区ID
END_TIMElong结束时间
EXEC_NAMEString执行任务的线程池名
INTERNALboolean如果是内部任务则为true
JOB_IDUUID计算作业ID
START_TIMElong启动时间
TASK_CLASS_NAMEString任务类名
TASK_NAMEString任务名
TASK_NODE_IDUUID发起任务的节点ID
USER_VERSIONString任务版本

4.4.SERVICES

SERVICES视图暴露了已部署服务的各种信息。

列名数据类型描述
SERVICE_IDUUID服务ID
NAMEString服务名
SERVICE_CLASSString服务类名
CACHE_NAMEString缓存名
ORIGIN_NODE_IDUUID发起方节点ID
TOTAL_COUNTint服务实例总数
MAX_PER_NODE_COUNTint每节点最大服务数
AFFINITY_KEYString服务的关联键值
NODE_FILTERString节点过滤器NodeFilter的toString表示
STATICALLY_CONFIGUREDboolean服务配置为静态则为true

4.5.TRANSACTIONS

TRANSACTIONS视图暴露了当前正在运行的事务的各种信息。

列名数据类型描述
ORIGINATING_NODE_IDUUID
STATEString
XIDUUID
LABELString
START_TIMElong
ISOLATIONString
CONCURRENCYString
KEYS_COUNTint
CACHE_IDSString
COLOCATEDboolean
DHTboolean
DURATIONlong
IMPLICITboolean
IMPLICIT_SINGLEboolean
INTERNALboolean
LOCALboolean
LOCAL_NODE_IDUUID
NEARboolean
ONE_PHASE_COMMITboolean
OTHER_NODE_IDUUID
SUBJECT_IDUUID
SYSTEMboolean
THREAD_IDlong
TIMEOUTlong
TOP_VERString

4.6.NODES

NODES视图暴露了集群节点的各种信息。

列名数据类型描述
NODE_IDUUID节点ID
CONSISTENT_IDString节点的一致性ID
VERSIONString节点的版本
IS_CLIENTboolean节点是否为客户端节点
IS_DAEMONboolean节点是否为守护节点
NODE_ORDERlong节点在拓扑中的顺序
ADDRESSESString节点的地址
HOSTNAMESString节点的主机名
IS_LOCALboolean节点是否为本地节点

4.7.CLIENT_CONNECTIONS

CLIENT_CONNECTIONS视图暴露了当前正在打开的客户端连接(JDBC/ODBC/瘦客户端)的各种信息。

列名数据类型描述
CONNECTION_IDlong连接ID
LOCAL_ADDRESSIP地址本地节点的IP地址
REMOTE_ADDRESSIP地址远程节点的IP地址
TYPEString连接类型
USERString用户名
VERSIONString协议版本

4.8.STRIPED_THREADPOOL_QUEUE

STRIPED_THREADPOOL_QUEUE视图暴露了在系统平行线程池中等待执行的任务的信息。

列名数据类型描述
STRIPE_INDEXint平行线程的索引值
DESCRIPTIONString任务的toString表示
THREAD_NAMEString平行线程名
TASK_NAMEString任务类名

4.9.DATASTREAM_THREADPOOL_QUEUE

DATASTREAM_THREADPOOL_QUEUE视图暴露了数据流平行线程池中的等待任务信息。

列名数据类型描述
STRIPE_INDEXint平行线程索引值
DESCRIPTIONString任务的toString表示
THREAD_NAMEString平行线程名
TASK_NAMEString任务类名

4.10.SCAN_QUERIES

SCAN_QUERIES视图暴露了当前正在运行的扫描查询信息。

列名数据类型描述
ORIGIN_NODE_IDUUID发起查询的节点ID
QUERY_IDlong查询ID
CACHE_NAMEString缓存名
CACHE_IDint缓存ID
CACHE_GROUP_IDint缓存组ID
CACHE_GROUP_NAMEString缓存组名
START_TIMElong查询开始时间
DURATIONlong查询期限
CANCELEDboolean如果取消了则为true
FILTERString过滤器的toString表示
KEEP_BINARYboolean如果开启了keepBinary则为true
LOCALboolean如果仅为本地查询则为true
PAGE_SIZEint页面大小
PARTITIONint查询分区ID
SUBJECT_IDUUID发起查询的用户ID
TASK_NAMEString任务名
TOPOLOGYString拓扑版本
TRANSFORMERString转换器的toString表示

4.11.CONTINUOUS_QUERIES

CONTINUOUS_QUERIES视图暴露了正在运行的持续查询信息。

列名数据类型描述
CACHE_NAMEString缓存名
LOCAL_LISTENERString本地监听器的toString表示
REMOTE_FILTERString远程过滤器的toString表示
REMOTE_TRANSFORMERString远程转换器的toString表示
LOCAL_TRANSFORMED_LISTENERString本地转换监听器的toString表示
LAST_SEND_TIMElong事件批次上次发给持续查询发起节点的时间
AUTO_UNSUBSCRIBEboolean当节点断开或发起节点离开时,如果持续查询应该停止,则为true
BUFFER_SIZEint事件批次缓冲区大小
DELAYED_REGISTERboolean如果在相应缓存启动时就启动持续查询,则为true
INTERVALlong通知间隔时间
IS_EVENTSboolean如果用于订阅远程事件则为true
IS_MESSAGINGboolean如果用于订阅消息则为true
IS_QUERYboolean如果用户启动了持续查询则为true
KEEP_BINARYboolean如果开启了keepBinary则为true
NODE_IDUUID发起节点ID
NOTIFY_EXISTINGboolean如果监听器应通知现有条目则为true
OLD_VALUE_REQUIREDboolean如果事件中应包含条目的旧值则为true
ROUTINE_IDUUID查询ID
TOPICString查询主题名

4.12.SQL_QUERIES

SQL_QUERIES视图暴露了当前正在运行的SQL查询信息。

列名数据类型描述
QUERY_IDUUID查询ID
SQLString查询文本
ORIGIN_NODE_IDUUID发起查询的节点ID
START_TIMEdate查询开始时间
DURATIONlong查询执行期限
LOCALboolean如果仅为本地查询则为true
SCHEMA_NAMEString模式名

4.13.SQL_QUERIES_HISTORY

SQL_QUERIES_HISTORY视图暴露了SQL查询的历史信息。

列名数据类型描述
SCHEMA_NAMEString模式名
SQLStringSQL文本
LOCALboolean如果仅为本地查询则为true
EXECUTIONSlong执行次数
FAILURESlong失败次数
DURATION_MINlong最短执行期限
DURATION_MAXlong最长执行期限
LAST_START_TIMEdate上次执行时间

4.14.SCHEMAS

SCHEMAS视图暴露了SQL模式的各种信息。

列名数据类型描述
NAMEString模式名
PREDEFINEDboolean如果是预定义模式则为true

4.15.TABLES

TABLES视图暴露了SQL表的各种信息。

列名数据类型描述
TABLE_NAMEString表名
SCHEMA_NAMEString表所属模式名
CACHE_NAMEString表对应的缓存名
CACHE_IDint表对应的缓存ID
AFFINITY_KEY_COLUMNString关联键列名
KEY_ALIASString主键列别名
VALUE_ALIASString值列别名
KEY_TYPE_NAMEString主键类型名
VALUE_TYPE_NAMEString值类型名
IS_INDEX_REBUILD_IN_PROGRESSboolean如果表索引正在重建过程中则为true

4.16.VIEWS

VIEWS视图暴露了关于SQL视图的各种信息。

列名数据类型描述
NAMEString视图名
SCHEMAString模式名
DESCRIPTIONString描述

4.17.INDEXES

INDEXES视图暴露了与SQL索引有关的各种信息。

列名数据类型描述
INDEX_NAMEString索引名
INDEX_TYPEString索引类型
COLUMNSString索引中的列名
SCHEMA_NAMEString模式名
TABLE_NAMEString表名
CACHE_NAMEString缓存名
CACHE_IDint缓存ID
INLINE_SIZEint内联大小(字节)
IS_PKboolean是否为主键索引
IS_UNIQUEboolean是否为唯一索引

4.18.TABLE_COLUMNS

TABLE_COLUMNS视图暴露了SQL表的列信息。

列名数据类型描述
COLUMN_NAMEString列名
TABLE_NAMEString表名
SCHEMA_NAMEString模式名
AFFINITY_COLUMNboolean如果该列为关联键则为true
AUTO_INCREMENTboolean如果是自增字段则为true
DEFAULT_VALUEString默认值
NULLABLEboolean如果允许为空则为true
PKboolean如果是主键则为true
PRECISIONint列精度
SCALEint列标度
TYPEString列类型

4.19.VIEW_COLUMNS

VIEW_COLUMNS视图暴露了视图的列信息。

列名数据类型描述
COLUMN_NAMEString列名
VIEW_NAMEString视图名
SCHEMA_NAMEString模式名
DEFAULT_VALUEString默认值
NULLABLEboolean如果允许为空则为true
PRECISIONint列精度
SCALEint列标度
TYPEString列类型

4.20.PAGE_LISTS

页面列表是一种数据结构,用于存储部分空闲的数据页面(空闲列表)和完全空闲的已分配页面(重用列表)的列表。在保存数据时,空闲列表和重用列表用于快速找到具有足够可用空间的页面,或者在确认不存在这样的页面时分配新的页面。

页面列表以桶的形式组织,每个桶将页面分组为具有大约相同的可用空间。

如果启用了持久化,则会为每个缓存组的每个分区创建页面列表,要查看此类页面列表,可以使用cacheGroupPageLists系统视图(SQL视图名为CACHE_GROUP_PAGE_LISTS),如果禁用了持久化,则会为每个数据区创建页面列表,这时需要使用dataRegionPageLists系统视图(SQL视图名为DATA_REGION_PAGE_LISTS)。这些视图包含了每个页面列表的每个桶的信息,这些信息有助于了解在不分配新页面的情况下可以将多少数据插入到缓存中,还有助于检测页面列表利用率的偏差。

CACHE_GROUP_PAGE_LISTS列

列名数据类型描述
CACHE_GROUP_IDint缓存组ID
PARTITION_IDint分区ID
NAMEString页面列表名
BUCKET_NUMBERint桶编号
BUCKET_SIZElong桶中的页面数量
STRIPES_COUNTint桶的并行度,并行度用于避免竞争
CACHED_PAGES_COUNTint桶的堆内页面列表缓存中的页面数

DATA_REGION_PAGE_LISTS列

列名数据类型描述
NAMEString页面列表名
BUCKET_NUMBERint桶编号
BUCKET_SIZElong桶中的页面数量
STRIPES_COUNTint桶的并行度,并行度用于避免竞争
CACHED_PAGES_COUNTint桶的堆内页面列表缓存中的页面数

4.21.NODE_ATTRIBUTES

NODE_ATTRIBUTES视图暴露了集群节点的属性信息。

列名数据类型描述
NODE_IDUUID节点ID
NAMEString属性名
VALUEString属性值

4.22.BASELINE_NODES

BASELINE_NODES视图暴露了当前基线拓扑中的节点信息。

列名数据类型描述
CONSISTENT_IDString节点一致性ID
ONLINEboolean节点的运行状态

4.23.NODE_METRICS

NODE_METRICS视图暴露了当前基线拓扑中的节点的各种信息。

列名数据类型描述
NODE_IDUUID节点ID
LAST_UPDATE_TIMETIMESTAMP指标数据上次更新的时间
MAX_ACTIVE_JOBSINT节点曾经的最大并发作业数
CUR_ACTIVE_JOBSINT节点当前正在运行的活跃作业数
AVG_ACTIVE_JOBSFLOAT节点并发执行的平均活跃作业数
MAX_WAITING_JOBSINT节点曾经的最大等待作业数
CUR_WAITING_JOBSINT节点当前正在等待执行的作业数
AVG_WAITING_JOBSFLOAT节点的平均等待作业数
MAX_REJECTED_JOBSINT在一次冲突解决操作期间一次性的最大拒绝作业数
CUR_REJECTED_JOBSINT最近一次冲突解决操作中的拒绝作业数
AVG_REJECTED_JOBSFLOAT在冲突解决操作期间的平均拒绝作业数
TOTAL_REJECTED_JOBSINT节点启动后在冲突解决期间的拒绝作业总数
MAX_CANCELED_JOBSINT节点的并发最大取消作业数
CUR_CANCELED_JOBSINT节点仍在运行的已取消作业数
AVG_CANCELED_JOBSFLOAT节点的并发平均取消作业数
TOTAL_CANCELED_JOBSINT节点启动后取消作业总数
MAX_JOBS_WAIT_TIMETIME节点中的作业执行前在队列中的最大等待时间
CUR_JOBS_WAIT_TIMETIME节点当前正在等待执行的作业的最长等待时间
AVG_JOBS_WAIT_TIMETIME节点中的作业执行前在队列中的平均等待时间
MAX_JOBS_EXECUTE_TIMETIME节点作业的最长执行时间
CUR_JOBS_EXECUTE_TIMETIME节点当前正在执行的作业的执行时间
AVG_JOBS_EXECUTE_TIMETIME节点作业的平均执行时间
TOTAL_JOBS_EXECUTE_TIMETIME节点启动后已经完成的作业的执行总时间
TOTAL_EXECUTED_JOBSINT节点启动后处理的作业总数
TOTAL_EXECUTED_TASKSINT节点处理过的任务总数
TOTAL_BUSY_TIMETIME节点处理作业花费的总时间
TOTAL_IDLE_TIMETIME节点的总空闲(未执行任何作业)时间
CUR_IDLE_TIMETIME节点执行最近的作业后的空闲时间
BUSY_TIME_PERCENTAGEFLOAT节点执行作业和空闲的时间占比
IDLE_TIME_PERCENTAGEFLOAT节点空闲和执行作业的时间占比
TOTAL_CPUINTJVM的可用CPU数量
CUR_CPU_LOADDOUBLE在范围(0, 1)中以分数表示的CPU使用率
AVG_CPU_LOADDOUBLE在范围(0, 1)中以分数表示的CPU平均使用率
CUR_GC_CPU_LOADDOUBLE上次指标更新后花费在GC上的平均时间,指标默认2秒更新一次
HEAP_MEMORY_INITLONGJVM最初从操作系统申请用于内存管理的堆内存量(字节)。如果初始内存大小未定义,则显示-1
HEAP_MEMORY_USEDLONG当前用于对象分配的堆大小,堆由一个或多个内存池组成,该值为所有堆内存池中使用的堆内存总数
HEAP_MEMORY_COMMITEDLONGJVM使用的堆内存量(字节),这个内存量保证由JVM使用,堆由一个或多个内存池组成,该值为所有堆内存池中JVM使用的堆内存总数
HEAP_MEMORY_MAXLONG用于内存管理的最大堆内存量(字节),如果最大内存量未指定,则显示-1
HEAP_MEMORY_TOTALLONG堆内存总量(字节),如果总内存量未指定,则显示-1
NONHEAP_MEMORY_INITLONGJVM最初从操作系统申请用于内存管理的非堆内存量(字节)。如果初始内存大小未定义,则显示-1
NONHEAP_MEMORY_USEDLONGJVM当前使用的非堆内存量,非堆内存由一个或多个内存池组成,该值为所有非堆内存池中使用的非堆内存总数
NONHEAP_MEMORY_COMMITEDLONGJVM使用的非堆内存量(字节),这个内存量保证由JVM使用。非堆内存由一个或多个内存池组成,该值为所有非堆内存池中使用的非堆内存总数
NONHEAP_MEMORY_MAXLONG可用于内存管理的最大非堆内存量(字节),如果最大内存量未指定,则显示-1
NONHEAP_MEMORY_TOTALLONG可用于内存管理的非堆内存总量(字节),如果总内存量未指定,则显示-1
UPTIMETIMEJVM的正常运行时间
JVM_START_TIMETIMESTAMPJVM的启动时间
NODE_START_TIMETIMESTAMP节点的启动时间
LAST_DATA_VERSIONLONG数据网格为所有缓存操作赋予的不断增长的版本数,该值为节点的最新数据版本
CUR_THREAD_COUNTINT包括守护和非守护线程在内的所有有效线程总数
MAX_THREAD_COUNTINTJVM启动或峰值重置后的最大有效线程数
TOTAL_THREAD_COUNTLONGJVM启动后启动的线程总数
CUR_DAEMON_THREAD_COUNTINT当前的有效守护线程数
SENT_MESSAGES_COUNTINT节点发送的通信消息总量
SENT_BYTES_COUNTLONG发送的字节量
RECEIVED_MESSAGES_COUNTINT节点接收的通信消息总量
RECEIVED_BYTES_COUNTLONG接收的字节量
OUTBOUND_MESSAGES_QUEUEINT出站消息队列大小

18624049226