

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# Nucleus 遙測發射器
<a name="nucleus-emitter-component"></a>

核遙測發射器元件 (`aws.greengrass.telemetry.NucleusEmitter`) 會收集系統運作狀態遙測資料，並將其持續發佈至本機主題和 AWS IoT Core MQTT 主題。此元件可讓您在 Greengrass 核心裝置上收集即時系統遙測。如需將系統遙測資料發佈至 Amazon EventBridge 的 Greengrass 遙測代理程式相關資訊，請參閱 [從 AWS IoT Greengrass 核心裝置收集系統運作狀態遙測資料](telemetry.md)。

根據預設，核遙測發射器元件會每 60 秒將遙測資料發佈至下列本機發佈/訂閱主題。

```
$local/greengrass/telemetry
```

根據預設，核遙測發射器元件不會發佈至 AWS IoT Core MQTT 主題。您可以設定此元件在部署時發佈至 AWS IoT Core MQTT 主題。使用 MQTT 主題將資料發佈到 AWS 雲端 需受[AWS IoT Core 定價](https://aws.amazon.com/iot-core/pricing/)的限制。

<a name="greengrass-software-catalog-influxdb-telemetry-publisher"></a>AWS IoT Greengrass 提供數個[社群元件](greengrass-software-catalog.md)，可協助您使用 InfluxDB 和 Grafana 在本機核心裝置上分析和視覺化遙測資料。這些元件使用來自 核發射器元件的遙測資料。如需詳細資訊，請參閱 [InfluxDB 發佈者元件](https://github.com/awslabs/aws-greengrass-labs-telemetry-influxdbpublisher)的 README。

**Topics**
+ [版本](#nucleus-emitter-component-versions)
+ [Type](#nucleus-emitter-component-type)
+ [作業系統](#nucleus-emitter-component-os-support)
+ [相依性](#nucleus-emitter-component-dependencies)
+ [Configuration](#nucleus-emitter-component-configuration)
+ [輸出資料](#nucleus-emitter-component-output-data)
+ [Usage](#nucleus-emitter-component-usage)
+ [本機日誌檔案](#nucleus-emitter-component-log-file)
+ [變更記錄](#nucleus-emitter-component-changelog)

## 版本
<a name="nucleus-emitter-component-versions"></a>

此元件具有下列版本：
+ 1.0.x

## Type
<a name="nucleus-emitter-component-type"></a>

<a name="public-component-type-plugin-para1"></a>此元件是外掛程式元件 (`aws.greengrass.plugin`)。[Greengrass 核心](greengrass-nucleus-component.md)會在與核心相同的 Java 虛擬機器 (JVM) 中執行此元件。當您在核心裝置上變更此元件的版本時，核會重新啟動。

<a name="public-component-type-plugin-para2"></a>此元件使用與 Greengrass 核相同的日誌檔案。如需詳細資訊，請參閱[監控 AWS IoT Greengrass 日誌](monitor-logs.md)。

<a name="public-component-type-more-information"></a>如需詳細資訊，請參閱[元件類型](develop-greengrass-components.md#component-types)。

## 作業系統
<a name="nucleus-emitter-component-os-support"></a>

此元件可以安裝在執行下列作業系統的核心裝置上：
+ Linux
+ Windows

## 相依性
<a name="nucleus-emitter-component-dependencies"></a>

當您部署元件時， AWS IoT Greengrass 也會部署其相依性的相容版本。這表示您必須符合元件及其所有相依性的要求，才能成功部署元件。本節列出此元件[發行版本的](#nucleus-emitter-component-changelog)相依性，以及為每個相依性定義元件版本的語意版本限制。您也可以在 [AWS IoT Greengrass 主控台](https://console.aws.amazon.com//greengrass)中檢視每個版本元件的相依性。在元件詳細資訊頁面上，尋找**相依性**清單。

------
#### [ 1.0.12 ]

下表列出此元件 1.0.12 版的相依性。


| 相依性 | 相容版本 | 相依性類型 | 
| --- | --- | --- | 
| [Greengrass 核](greengrass-nucleus-component.md) | >=2.4.0 <2.17.0 | 軟式 | 

------
#### [ 1.0.11 ]

下表列出此元件 1.0.11 版的相依性。


| 相依性 | 相容版本 | 相依性類型 | 
| --- | --- | --- | 
| [Greengrass 核](greengrass-nucleus-component.md) |  >=2.4.0 <2.16.0  | 硬式 | 

------
#### [ 1.0.10 ]

下表列出此元件 1.0.10 版的相依性。


| 相依性 | 相容版本 | 相依性類型 | 
| --- | --- | --- | 
| [Greengrass 核](greengrass-nucleus-component.md) |  >=2.4.0 <2.15.0  | 硬式 | 

------
#### [ 1.0.9 ]

下表列出此元件 1.0.9 版的相依性。


| 相依性 | 相容版本 | 相依性類型 | 
| --- | --- | --- | 
| [Greengrass 核](greengrass-nucleus-component.md) |  >=2.4.0 <2.14.0  | 硬式 | 

------
#### [ 1.0.8 ]

下表列出此元件 1.0.8 版的相依性。


| 相依性 | 相容版本 | 相依性類型 | 
| --- | --- | --- | 
| [Greengrass 核](greengrass-nucleus-component.md) |  >=2.4.0 <2.13.0  | 硬式 | 

------
#### [ 1.0.7 ]

下表列出此元件 1.0.7 版的相依性。


| 相依性 | 相容版本 | 相依性類型 | 
| --- | --- | --- | 
| [Greengrass 核](greengrass-nucleus-component.md) |  >=2.4.0 <2.12.0  | 硬式 | 

------
#### [ 1.0.6 ]

下表列出此元件 1.0.6 版的相依性。


| 相依性 | 相容版本 | 相依性類型 | 
| --- | --- | --- | 
| [Greengrass 核](greengrass-nucleus-component.md) |  >=2.4.0 <2.11.0  | 硬式 | 

------
#### [ 1.0.5 ]

下表列出此元件 1.0.5 版的相依性。


| 相依性 | 相容版本 | 相依性類型 | 
| --- | --- | --- | 
| [Greengrass 核](greengrass-nucleus-component.md) |  >=2.4.0 <2.10.0  | 硬式 | 

------
#### [ 1.0.4 ]

下表列出此元件 1.0.4 版的相依性。


| 相依性 | 相容版本 | 相依性類型 | 
| --- | --- | --- | 
| [Greengrass 核](greengrass-nucleus-component.md) |  >=2.4.0 <2.9.0  | 硬式 | 

------
#### [ 1.0.3 ]

下表列出此元件 1.0.3 版的相依性。


| 相依性 | 相容版本 | 相依性類型 | 
| --- | --- | --- | 
| [Greengrass 核](greengrass-nucleus-component.md) |  >=2.4.0 <2.8.0  | 硬式 | 

------
#### [ 1.0.2 ]

下表列出此元件 1.0.2 版的相依性。


| 相依性 | 相容版本 | 相依性類型 | 
| --- | --- | --- | 
| [Greengrass 核](greengrass-nucleus-component.md) |  >=2.4.0 <2.7.0  | 硬式 | 

------
#### [ 1.0.1 ]

下表列出此元件 1.0.1 版的相依性。


| 相依性 | 相容版本 | 相依性類型 | 
| --- | --- | --- | 
| [Greengrass 核](greengrass-nucleus-component.md) |  >=2.4.0 <2.6.0  | 硬式 | 

------
#### [ 1.0.0 ]

下表列出此元件 1.0.0 版的相依性。


| 相依性 | 相容版本 | 相依性類型 | 
| --- | --- | --- | 
| [Greengrass 核](greengrass-nucleus-component.md) |  >=2.4.0 <2.5.0  | 硬式 | 

------

如需元件相依性的詳細資訊，請參閱[元件配方參考](component-recipe-reference.md#recipe-reference-component-dependencies)。

## Configuration
<a name="nucleus-emitter-component-configuration"></a>

此元件提供下列組態參數，您可以在部署元件時自訂這些參數。

`pubSubPublish`  
（選用） 定義是否要將遙測資料發佈至`$local/greengrass/telemetry`主題。支援的值為 `true` 和 `false`。  
預設：`true`

`mqttTopic`  
（選用） 此元件發佈遙測資料的 AWS IoT Core MQTT 主題。  
將此值設定為您要發佈遙測資料的 AWS IoT Core MQTT 主題。當此值為空時，核發射器不會將遙測資料發佈至 AWS 雲端。  
使用 MQTT 主題將資料發佈到 AWS 雲端 需受[AWS IoT Core 定價](https://aws.amazon.com/iot-core/pricing/)的限制。
預設：`""`

`telemetryPublishIntervalMs`  
（選用） 元件發佈遙測資料的時間量 （以毫秒為單位）。如果您將此值設定為低於支援的最小值，則元件會改用最小值。  
較低的發佈間隔會導致核心裝置上的 CPU 使用量提高。我們建議您從預設發佈間隔開始，並根據裝置的 CPU 用量進行調整。
下限：`500`  
預設：`60000`

**Example 範例：組態合併更新**  
下列範例顯示範例組態合併更新，允許每 5 秒將遙測資料發佈至 `$local/greengrass/telemetry` 主題和 `greengrass/myTelemetry` AWS IoT Core MQTT 主題。  

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

## 輸出資料
<a name="nucleus-emitter-component-output-data"></a>

此元件會將遙測指標發佈為下列主題的 JSON 陣列。

**本機主題：** `$local/greengrass/telemetry`

您也可以選擇將遙測指標發佈至 AWS IoT Core MQTT 主題。如需主題的詳細資訊，請參閱《 *AWS IoT Core 開發人員指南*》中的 [MQTT 主題](https://docs.aws.amazon.com/iot/latest/developerguide/topics.html)。

**Example 範例資料**  

```
[
  {
    "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 name="telemetry-json-array-config"></a>

輸出陣列包含具有下列屬性的指標清單：

`A`  
指標的彙總類型。  
對於 `CpuUsage` 指標，此屬性設定為 ，`Average`因為指標的發佈值是自上次發佈事件以來的平均 CPU 用量。  
對於所有其他指標，核發射器不會彙總指標值，且此屬性設定為 `Count`。

`N`  
指標的名稱

`NS`  
指標命名空間。

`TS`  
收集資料時的時間戳記。

`U`  
指標值的單位。

`V`  
 指標值。

核發射器會發佈下列指標：


| 名稱 | 描述 | 
| --- | --- | 
|  **系統**  | 
|  `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 核心裝置上無狀態的元件數量。  | 

## Usage
<a name="nucleus-emitter-component-usage"></a>

若要使用系統運作狀態遙測資料，您可以建立自訂元件，以訂閱核發射器發佈遙測資料的主題，並視需要對該資料做出反應。由於核發射器元件提供將遙測資料發佈至本機主題的選項，因此您可以訂閱該主題，並使用已發佈的資料在核心裝置上於本機採取行動。然後，即使核心裝置與雲端的連線有限，也可以對遙測資料做出反應。

例如，您可以設定監聽遙測資料`$local/greengrass/telemetry`主題的元件，並將資料傳送至串流管理員元件，以將資料串流至 AWS 雲端。如需建立這類元件的詳細資訊，請參閱 [發佈/訂閱本機訊息](ipc-publish-subscribe.md)和 [建立使用串流管理員的自訂元件](use-stream-manager-in-custom-components.md)。

## 本機日誌檔案
<a name="nucleus-emitter-component-log-file"></a>

此元件使用與 [Greengrass 核](greengrass-nucleus-component.md)元件相同的日誌檔案。

------
#### [ Linux ]

```
/greengrass/v2/logs/greengrass.log
```

------
#### [ Windows ]

```
C:\greengrass\v2\logs\greengrass.log
```

------

**檢視此元件的日誌**
+ 在核心裝置上執行下列命令，以即時檢視此元件的日誌檔案。將 `/greengrass/v2`或 *C：\$1greengrass\$1v2* 取代為 AWS IoT Greengrass 根資料夾的路徑。

------
#### [ Linux ]

  ```
  sudo tail -f /greengrass/v2/logs/greengrass.log
  ```

------
#### [ Windows (PowerShell) ]

  ```
  Get-Content C:\greengrass\v2\logs\greengrass.log -Tail 10 -Wait
  ```

------

## 變更記錄
<a name="nucleus-emitter-component-changelog"></a>

下表說明每個版本元件的變更。


|  **版本**  |  **變更**  | 
| --- | --- | 
|  1.0.13  |  更新 Greengrass nucleus 2.17.0 版的元件版本。  | 
|  1.0.12  |  針對 Greengrass nucleus 2.16.0 版更新版本。  | 
|  1.0.11  | 針對 Greengrass nucleus 2.15.0 版更新版本。 | 
|  1.0.10  | 針對 Greengrass nucleus 2.14.0 版更新版本。 | 
|  1.0.9  | 針對 Greengrass nucleus 2.13.0 版更新版本。 | 
|  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  |  初始版本。  | 