Nucleus 遥测发射器 - Amazon IoT Greengrass
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

Nucleus 遥测发射器

nucleus 遥测发射器组件 (aws.greengrass.telemetry.NucleusEmitter) 收集系统健康遥测数据,并将其持续发布到本地主题和 MQTT 主题。Amazon IoT Core此组件使您能够在 Greengrass 核心设备上收集实时系统遥测数据。有关向亚马逊发布系统遥测数据的 Greengrass 遥测代理的信息,请参阅。 EventBridge 从Amazon IoT Greengrass核心设备收集系统运行状况遥测数据

默认情况下,nucleus 遥测发射器组件每 60 秒将遥测数据发布到以下本地发布/订阅主题。

$local/greengrass/telemetry

默认情况下,nucleus 遥测发射器组件不会发布到 Amazon IoT Core MQTT 主题中。您可以将此组件配置为在部署 Amazon IoT Core MQTT 主题时将其发布到 MQTT 主题。使用 MQTT 主题向发布数据需视Amazon IoT Core定价而定。Amazon Web Services 云

Amazon IoT Greengrass提供了多个社区组件,可帮助您使用 InfluxDB 和 Grafana 在核心设备上本地分析和可视化遥测数据。这些组件使用来自原子核发射器组件的遥测数据。有关更多信息,请参阅 InfluxDB 发布者组件的自述文件。

版本

此组件有以下版本:

  • 1.0.x

类型

此组件是一个插件组件 (aws.greengrass.plugin)。Greengrass 核心在与核心相同的 Java 虚拟机 (JVM) 中运行此组件。当您在核心设备上更改此组件的版本时,nucleus 会重新启动。

该组件使用与 Greengrass 核相同的日志文件。有关更多信息,请参阅 监控Amazon IoT Greengrass日志

有关更多信息,请参阅 组件类型

操作系统

此组件可以安装在运行以下操作系统的核心设备上:

  • Linux

  • Windows

依赖项

部署组件时,Amazon IoT Greengrass还会部署其依赖项的兼容版本。这意味着您必须满足组件及其所有依赖项的要求才能成功部署该组件。本节列出了此组件已发布版本的依赖关系以及定义每个依赖项的组件版本的语义版本限制。您还可以在Amazon IoT Greengrass控制台中查看组件每个版本的依赖关系。在组件详细信息页面上,查找 “依赖关系” 列表。

1.0.8

下表列出了此组件版本 1.0.8 的依赖关系。

依赖关系 兼容版本 依赖关系类型
Greengrass 核 >=2.4.0 <2.13.0 硬性
1.0.7

下表列出了此组件版本 1.0.7 的依赖关系。

依赖关系 兼容版本 依赖关系类型
Greengrass 核 >=2.4.0 <2.12.0 硬性
1.0.6

下表列出了此组件版本 1.0.6 的依赖关系。

依赖关系 兼容版本 依赖关系类型
Greengrass 核 >=2.4.0 <2.11.0 硬性
1.0.5

下表列出了此组件版本 1.0.5 的依赖关系。

依赖关系 兼容版本 依赖关系类型
Greengrass 核 >=2.4.0 <2.10.0 硬性
1.0.4

下表列出了此组件版本 1.0.4 的依赖关系。

依赖关系 兼容版本 依赖关系类型
Greengrass 核 >=2.4.0 <2.9.0 硬性
1.0.3

下表列出了此组件版本 1.0.3 的依赖关系。

依赖关系 兼容版本 依赖关系类型
Greengrass 核 >=2.4.0 <2.8.0 硬性
1.0.2

下表列出了此组件版本 1.0.2 的依赖关系。

依赖关系 兼容版本 依赖关系类型
Greengrass 核 >=2.4.0 <2.7.0 硬性
1.0.1

下表列出了此组件版本 1.0.1 的依赖关系。

依赖关系 兼容版本 依赖关系类型
Greengrass 核 >=2.4.0 <2.6.0 硬性
1.0.0

下表列出了此组件版本 1.0.0 的依赖关系。

依赖关系 兼容版本 依赖关系类型
Greengrass 核 >=2.4.0 <2.5.0 硬性

有关组件依赖关系的更多信息,请参阅组件配方参考

配置

此组件提供以下配置参数,您可以在部署该组件时对其进行自定义。

pubSubPublish

(可选)定义是否向$local/greengrass/telemetry主题发布遥测数据。支持的值为 truefalse

默认值:true

mqttTopic

(可选)此组件向其发布遥测数据的 Amazon IoT Core MQTT 主题。

将此值设置为要向其发布遥测数据的 Amazon IoT Core MQTT 主题。当此值为空时,nucleus 发射器不会将遥测数据发布到。Amazon Web Services 云

注意

使用 MQTT 主题向发布数据需视Amazon IoT Core定价而定。Amazon Web Services 云

默认值:""

telemetryPublishIntervalMs

(可选)组件发布遥测数据的间隔时间(以毫秒为单位)。如果将此值设置为低于支持的最小值,则组件将改用最小值。

注意

较短的发布间隔会导致核心设备上的 CPU 使用率更高。我们建议您从默认发布间隔开始,然后根据设备的 CPU 使用率进行调整。

最低:500

默认值:60000

例 示例:配置合并更新

以下示例显示了一个配置合并更新示例,该更新允许每 5 秒向$local/greengrass/telemetry主题和 greengrass/myTelemetry Amazon IoT Core MQTT 主题发布遥测数据。

{ "pubSubPublish": "true", "mqttTopic": "greengrass/myTelemetry", "telemetryPublishIntervalMs": 5000 }

输出数据

此组件将遥测指标作为 JSON 数组发布以下主题。

本地话题:$local/greengrass/telemetry

您也可以选择将遥测指标发布到 Amazon IoT Core MQTT 主题。有关主题的更多信息,请参阅《Amazon IoT Core开发人员指南》中的 MQTT 主题

例 示例数据
[ { "A": "Average", "N": "CpuUsage", "NS": "SystemMetrics", "TS": 1627597331445, "U": "Percent", "V": 26.21981271562346 }, { "A": "Count", "N": "TotalNumberOfFDs", "NS": "SystemMetrics", "TS": 1627597331445, "U": "Count", "V": 7316 }, { "A": "Count", "N": "SystemMemUsage", "NS": "SystemMetrics", "TS": 1627597331445, "U": "Megabytes", "V": 10098 }, { "A": "Count", "N": "NumberOfComponentsStarting", "NS": "GreengrassComponents", "TS": 1627597331446, "U": "Count", "V": 0 }, { "A": "Count", "N": "NumberOfComponentsInstalled", "NS": "GreengrassComponents", "TS": 1627597331446, "U": "Count", "V": 0 }, { "A": "Count", "N": "NumberOfComponentsStateless", "NS": "GreengrassComponents", "TS": 1627597331446, "U": "Count", "V": 0 }, { "A": "Count", "N": "NumberOfComponentsStopping", "NS": "GreengrassComponents", "TS": 1627597331446, "U": "Count", "V": 0 }, { "A": "Count", "N": "NumberOfComponentsBroken", "NS": "GreengrassComponents", "TS": 1627597331446, "U": "Count", "V": 0 }, { "A": "Count", "N": "NumberOfComponentsRunning", "NS": "GreengrassComponents", "TS": 1627597331446, "U": "Count", "V": 7 }, { "A": "Count", "N": "NumberOfComponentsErrored", "NS": "GreengrassComponents", "TS": 1627597331446, "U": "Count", "V": 0 }, { "A": "Count", "N": "NumberOfComponentsNew", "NS": "GreengrassComponents", "TS": 1627597331446, "U": "Count", "V": 0 }, { "A": "Count", "N": "NumberOfComponentsFinished", "NS": "GreengrassComponents", "TS": 1627597331446, "U": "Count", "V": 2 } ]

输出数组包含具有以下属性的指标列表:

A

指标的聚合类型。

对于该CpuUsage指标,此属性设置为,Average因为该指标的发布值是自上次发布事件以来的平均 CPU 使用量。

对于所有其他指标,nucleus 发射器不会聚合指标值,并且此属性设置为。Count

N

指标的名称。

NS

指标命名空间。

TS

收集数据的时间戳。

U

指标值的单位。

V

指标值。

Nucleus 发射器发布以下指标:

名称 描述

系统

SystemMemUsage

Greengrass 核心设备上所有应用程序(包括操作系统)当前使用的内存量。

CpuUsage

Greengrass 核心设备上所有应用程序(包括操作系统)当前使用的 CPU 量。

TotalNumberOfFDs

Greengrass 核心设备操作系统存储的文件描述符的数量。一个文件描述符可以唯一地标识一个打开的文件。

Greengrass 核

NumberOfComponentsRunning

在 Greengrass 核心设备上运行的组件数量。

NumberOfComponentsErrored

Greengrass 核心设备上处于错误状态的组件数量。

NumberOfComponentsInstalled

安装在 Greengrass 核心设备上的组件数量。

NumberOfComponentsStarting

在 Greengrass 核心设备上启动的组件数量。

NumberOfComponentsNew

Greengrass 核心设备上新增的组件数量。

NumberOfComponentsStopping

在 Greengrass 核心设备上停止运行的组件数量。

NumberOfComponentsFinished

在 Greengrass 核心设备上完成的组件数量。

NumberOfComponentsBroken

Greengrass 核心设备上损坏的组件数量。

NumberOfComponentsStateless

Greengrass 核心设备上处于无状态的组件数量。

使用量

要使用系统运行状况遥测数据,您可以创建自定义组件,订阅 nucleus 发射器发布遥测数据的主题,并根据需要对这些数据做出反应。由于 nucleus 发射器组件提供了将遥测数据发布到本地主题的选项,因此您可以订阅该主题,并使用已发布的数据在核心设备上进行本地操作。然后,即使核心设备与云的连接有限,它也可以对遥测数据做出反应。

例如,您可以配置一个组件,该组件监听$local/greengrass/telemetry主题中的遥测数据,并将数据发送到流管理器组件,以便将您的数据流式传输到。Amazon Web Services 云有关创建此类组件的更多信息,请参见发布/订阅本地消息创建使用流管理器的自定义组件

本地日志文件

该组件使用与 Greengrass nucleus 组件相同的日志文件。

Linux
/greengrass/v2/logs/greengrass.log
Windows
C:\greengrass\v2\logs\greengrass.log
查看此组件的日志
  • 在核心设备上运行以下命令以实时查看此组件的日志文件。将/greengrass/v2C:\greengrass\v2 替换为Amazon IoT Greengrass根文件夹的路径。

    Linux
    sudo tail -f /greengrass/v2/logs/greengrass.log
    Windows (PowerShell)
    Get-Content C:\greengrass\v2\logs\greengrass.log -Tail 10 -Wait

更改日志

下表描述了该组件的每个版本中的更改。

版本

更改

1.0.8

Greengrass nucleus 版本 2.12.0 版本的版本已更新。

1.0.7

Greengrass nucleus 版本 2.11.0 版本的版本已更新。

1.0.6

Greengrass nucleus 版本 2.10.0 版本的版本已更新。

1.0.5

Greengrass nucleus 版本 2.9.0 版本的版本已更新。

1.0.4

Greengrass nucleus 版本 2.8.0 版本的版本已更新。

1.0.3

Greengrass nucleus 版本 2.7.0 版本的版本已更新。

1.0.2

Greengrass nucleus 版本 2.6.0 版本的版本已更新。

1.0.1

Greengrass nucleus 版本 2.5.0 版本的版本已更新。

1.0.0

初始版本。