Amazon Managed Service for Apache Flink 之前称为 Amazon Kinesis Data Analytics for Apache Flink。
本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
适用于 Apache Flink 的托管服务中的指标和维度
当您的适用于 Apache Flink 的托管服务处理数据源时,适用于 Apache Flink 的托管服务会向亚马逊报告以下指标和维度。 CloudWatch
应用程序指标
指标 | 单位 | 描述 | 级别 | 使用说明 |
---|---|---|---|---|
backPressuredTimeMsPerSecond* |
毫秒 | 该任务或运算符每秒受到反向压力的时间(以毫秒为单位)。 | 任务、运算符、并行度 | *仅适用于运行 Flink 版本 1.13 的 Managed Service for Apache Flink 应用程序。 这些指标可用于识别应用程序中的瓶颈。 |
busyTimeMsPerSecond* |
毫秒 | 该任务或运算符每秒忙碌的时间(以毫秒为单位)(既没有空闲也没有反向压力)。如果无法计算该值,则可以为 NaN。 | 任务、运算符、并行度 | *仅适用于运行 Flink 版本 1.13 的 Managed Service for Apache Flink 应用程序。 这些指标可用于识别应用程序中的瓶颈。 |
cpuUtilization |
百分比 | 各任务管理器的总体CPU利用率百分比。例如,如果有五个任务管理器,则 Managed Service for Apache Flink 将在每个报告间隔内发布该指标的五个样本。 | 应用程序 | 您可以使用此指标来监控应用程序的最低、平均和最大CPU利用率。该CPUUtilization 指标仅考虑容器内运行的 TaskManager JVM进程的CPU使用情况。 |
containerCPUUtilization |
百分比 | Flink 应用程序集群中任务管理器容器的总体CPU利用率百分比。例如,如果有五个任务管理器,则相应地有五个 TaskManager 容器,而适用于 Apache Flink 的托管服务每 1 分钟报告间隔就会发布 2 * 5 个该指标的样本。 | 应用程序 | 每个容器的计算公式为: 容器消耗的总CPU时间(以秒为单位)* 100 /容器CPU限制(以 CPUs /秒为单位) 该 |
containerMemoryUtilization |
百分比 | Flink 应用程序集群中任务管理器容器中内存利用率的总体百分比。例如,如果有五个任务管理器,则相应地有五个 TaskManager 容器,而适用于 Apache Flink 的托管服务每 1 分钟报告间隔就会发布 2 * 5 个该指标的样本。 | 应用程序 | 每个容器的计算公式为: 容器内存使用量(字节)* 100 /容器内存限制(按照 Pod 部署规范)(以字节为单位)
|
containerDiskUtilization |
百分比 | Flink 应用程序集群中任务管理器容器中磁盘利用率的总体百分比。例如,如果有五个任务管理器,则相应地有五个 TaskManager 容器,而适用于 Apache Flink 的托管服务每 1 分钟报告间隔就会发布 2 * 5 个该指标的样本。 | 应用程序 | 每个容器的计算公式为: 磁盘使用量(以字节为单位)* 100 /容器的磁盘限制(以字节为单位) 对于容器,它表示在其中设置容器根卷的文件系统的利用率。 |
currentInputWatermark |
毫秒 | 该应用程序/运算符/任务/线程上次收到的水印 | 应用程序、运算符、任务、并行度 | 此记录仅针对具有两个输入的维度发出。这是上次收到的水印的最小值。 |
currentOutputWatermark |
毫秒 | 该应用程序/运算符/任务/线程上次发出的水印 | 应用程序、运算符、任务、并行度 | |
downtime |
毫秒 | 对于当前处于故障/恢复状态的任务,在该中断期间经过的时间。 | 应用程序 | 该指标测量任务发生故障或恢复时经过的时间。该指标为运行的任务返回 0,并为完成的任务返回 -1。如果该指标不是 0 或 -1,则表明应用程序的 Apache Flink 任务无法运行。 |
fullRestarts |
计数 | 自提交以来,此任务完全重启的总次数。该指标不能衡量精细的重启情况。 | 应用程序 | 您可以使用此指标来评估应用程序的总体运行状况。Managed Service for Apache Flink 在内部维护期间可能会发生重启。重启次数高于正常值可能表示应用程序出现问题。 |
heapMemoryUtilization |
百分比 | 任务管理器的总体堆内存利用率。例如,如果有五个任务管理器,则 Managed Service for Apache Flink 将在每个报告间隔内发布该指标的五个样本。 | 应用程序 | 您可以使用此指标来监控应用程序中的最低、平均和最大堆内存利用率。HeapMemoryUtilization 仅考虑特定的内存指标,例如堆内存使用情况。 TaskManager JVM |
idleTimeMsPerSecond* |
毫秒 | 此任务或运算符每秒处于空闲状态(没有要处理的数据)的时间(以毫秒为单位)。空闲时间不包括反向压力时间,因此,如果任务受到反向压力,则不会处于空闲状态。 | 任务、运算符、并行度 | *仅适用于运行 Flink 版本 1.13 的 Managed Service for Apache Flink 应用程序。 这些指标可用于识别应用程序中的瓶颈。 |
lastCheckpointSize |
字节 | 上一个检查点的总大小 | 应用程序 | 您可以使用该指标确定运行的应用程序存储使用率。 如果该指标的值不断增加,则可能表明应用程序出现问题,例如内存泄漏或瓶颈。 |
lastCheckpointDuration |
毫秒 | 完成上一个检查点所花的时间 | 应用程序 | 该指标测量完成最近的检查点所花的时间。如果该指标的值不断增加,则可能表明应用程序出现问题,例如内存泄漏或瓶颈。在某些情况下,您可以禁用检查点以解决该问题。 |
managedMemoryUsed* |
字节 | 当前使用的托管内存量。 | 应用程序、运算符、任务、并行度 | *仅适用于运行 Flink 版本 1.13 的 Managed Service for Apache Flink 应用程序。 这与 Flink 在 Java 堆之外托管的内存有关。它用于 RocksDB 状态后端,也可供应用程序使用。 |
managedMemoryTotal* |
字节 | 托管内存的总量。 | 应用程序、运算符、任务、并行度 | *仅适用于运行 Flink 版本 1.13 的 Managed Service for Apache Flink 应用程序。 这与 Flink 在 Java 堆之外托管的内存有关。它用于 RocksDB 状态后端,也可供应用程序使用。该 |
managedMemoryUtilization* |
百分比 | 派生自 managedMemoryUsed/managedMemoryTotal | 应用程序、运算符、任务、并行度 | *仅适用于运行 Flink 版本 1.13 的 Managed Service for Apache Flink 应用程序。 这与 Flink 在 Java 堆之外托管的内存有关。它用于 RocksDB 状态后端,也可供应用程序使用。 |
numberOfFailedCheckpoints |
计数 | 检查点失败的次数。 | 应用程序 | 您可以使用此指标来监控应用程序的运行状况和进度。检查点可能由于应用程序问题(例如吞吐量或权限问题)而失败。 |
numRecordsIn* |
计数 | 该应用程序、运算符或任务收到的总记录数。 | 应用程序、运算符、任务、并行度 | *要在一段时间(秒/分钟)内应用SUM统计数据,请执行以下操作:
该指标的级别指定该指标是衡量整个应用程序、特定运算符还是特定任务收到的记录总数。 |
numRecordsInPerSecond* |
计数/秒 | 该应用程序、运算符或任务每秒收到的总记录数。 | 应用程序、运算符、任务、并行度 | *要在一段时间(秒/分钟)内应用SUM统计数据,请执行以下操作:
该指标的级别指定该指标是衡量整个应用程序、特定运算符还是特定任务每秒收到的记录总数。 |
numRecordsOut* |
计数 | 该应用程序、运算符或任务发出的总记录数。 | 应用程序、运算符、任务、并行度 |
*要在一段时间(秒/分钟)内应用SUM统计数据,请执行以下操作:
该指标的级别指定该指标是衡量整个应用程序、特定运算符还是特定任务发出的记录总数。 |
numLateRecordsDropped* |
计数 | 应用程序、运算符、任务、并行度 | *要在一段时间(秒/分钟)内应用SUM统计数据,请执行以下操作:
由于到达延迟,该操作符或任务丢弃的记录数。 |
|
numRecordsOutPerSecond* |
计数/秒 | 该应用程序、运算符或任务每秒发出的总记录数。 | 应用程序、运算符、任务、并行度 |
*要在一段时间(秒/分钟)内应用SUM统计数据,请执行以下操作:
该指标的级别指定该指标是衡量整个应用程序、特定运算符还是特定任务每秒发出的记录总数。 |
oldGenerationGCCount |
计数 | 所有任务管理器中发生的旧垃圾回收操作总数。 | 应用程序 | |
oldGenerationGCTime |
毫秒 | 执行旧垃圾回收操作所花费的总时间。 | 应用程序 | 您可以使用此指标来监控垃圾回收的总时间、平均时间和最大时间。 |
threadCount |
计数 | 应用程序使用的实时线程总数。 | 应用程序 | 该指标衡量应用程序代码使用的线程数。这与应用程序并行度不同。 |
uptime |
毫秒 | 任务不间断运行的时间。 | 应用程序 | 您可以使用此指标来确定任务是否成功运行。该指标为完成的任务返回 -1。 |
KPUs* |
计数 | 应用程序KPUs使用的总数。 | 应用程序 | *此指标在每个账单周期(一小时)接收一个样本。要可视化一段KPUs时间内的数量,请使用MAX或AVG在至少一 (1) 小时的时间段内。 KPU计数包括 |
Kinesis Data Streams 连接器指标
AWS 除以下内容外,还会发出 Kinesis Data Streams 的所有记录:
指标 | 单位 | 描述 | 级别 | 使用说明 |
---|---|---|---|---|
millisbehindLatest |
毫秒 | 使用者落后流开头的毫秒数,表示使用者落后当前时间有多远。 | 应用程序(对于 Stream)、并行度(适用于) ShardId |
|
bytesRequestedPerFetch |
字节 | 在一次 getRecords 调用中请求的字节数。 |
应用程序(对于 Stream)、并行度(适用于) ShardId |
Amazon MSK 连接器指标
AWS 除以下记录外,还会为 Amazon MSK 发布所有记录:
指标 | 单位 | 描述 | 级别 | 使用说明 |
---|---|---|---|---|
currentoffsets |
不适用 | 使用者的当前读取偏移量(对于每个分区)。可以按主题名称和分区 ID 来指定特定分区的指标。 | 应用程序(用于主题)、并行度(用于) PartitionId | |
commitsFailed |
不适用 | 如果启用了偏移提交和检查点功能,则向 Kafka 提交偏移失败的总数。 | 应用程序、运算符、任务、并行度 | 将偏移量提交回 Kafka 只是显示使用者进度的一种手段,因此提交失败不会影响 Flink 的检查点分区偏移量的完整性。 |
commitsSucceeded |
不适用 | 如果启用了偏移提交和检查点功能,则向 Kafka 提交偏移成功的总数。 | 应用程序、运算符、任务、并行度 | |
committedoffsets |
不适用 | 上次成功提交的 Kafka 偏移量(对于每个分区)。可以按主题名称和分区 ID 来指定特定分区的指标。 | 应用程序(用于主题)、并行度(用于) PartitionId | |
records_lag_max |
计数 | 最大延迟,以该窗口中的任何分区的记录数表示 | 应用程序、运算符、任务、并行度 | |
bytes_consumed_rate |
字节 | 主题平均每秒使用的字节数 | 应用程序、运算符、任务、并行度 |
Apache 齐柏林飞艇指标
对于 Studio 笔记本电脑,会在应用程序级别 AWS 发出以下指标:KPUs
cpuUtilization
、heapMemoryUtilization
、、oldGenerationGCTime
oldGenerationGCCount
、和threadCount
。此外,它还会在应用程序级别发布下表所示的指标。
指标 | 单位 | 描述 | Prometheus 名称 |
---|---|---|---|
zeppelinCpuUtilization |
百分比 | Apache 齐柏林飞艇服务器的总体CPU利用率百分比。 | process_cpu_usage |
zeppelinHeapMemoryUtilization |
百分比 | Apache Zeppelin 服务器中堆内存利用率的总体百分比。 | jvm_memory_used_bytes |
zeppelinThreadCount |
计数 | Apache Zeppelin 服务器使用的实时线程总数。 | jvm_threads_live_threads |
zeppelinWaitingJobs |
计数 | 排队等待线程的 Apache Zeppelin 任务数量。 | jetty_threads_jobs |
zeppelinServerUptime |
秒 | 服务器启动和运行的总时间。 | process_uptime_seconds |