

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

# 使用本地部署测试 AWS IoT Greengrass 组件
<a name="test-components"></a>

如果您在核心设备上开发 Greengrass 组件，则可以创建本地部署来安装和测试它。按照本节中的步骤创建本地部署。

如果您在另一台计算机（例如本地开发计算机）上开发组件，则无法创建本地部署。而是要将该组件发布至 AWS IoT Greengrass 服务，这样您就可以将其部署到 Greengrass 核心设备上进行测试。有关更多信息，请参阅 [发布组件以部署到您的核心设备](publish-components.md) 和[将 AWS IoT Greengrass 组件部署到设备](manage-deployments.md)。

**在 Greengrass 核心设备上测试组件**

1. 核心设备记录诸如组件更新之类的事件。您可以查看此日志文件来发现组件中的错误，并对其进行故障排除，例如无效配方。此日志文件还显示您的组件打印为标准输出（stdout）的消息。我们建议您在核心设备上再打开一个终端会话，以便实时查看新的日志消息。打开新的终端会话（例如通过 SSH），然后运行以下命令查看日志。将 `/greengrass/v2` 替换为 AWS IoT Greengrass 根文件夹路径。

------
#### [ Linux or Unix ]

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

------
#### [ PowerShell ]

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

------

   您还可以查看您组件的日志文件。

------
#### [ Linux or Unix ]

   ```
   sudo tail -f /greengrass/v2/logs/com.example.HelloWorld.log
   ```

------
#### [ PowerShell ]

   ```
   gc C:\greengrass\v2\logs\com.example.HelloWorld.log -Tail 10 -Wait
   ```

------

1. 在最初的终端会话中，运行以下命令即可使用您的组件更新核心设备。将 `/greengrass/v2` 替换为 AWS IoT Greengrass 根文件夹路径，并将 *\$1/greengrassv2* 替换为本地开发文件夹的路径。

------
#### [ Linux or Unix ]

   ```
   sudo /greengrass/v2/bin/greengrass-cli deployment create \
     --recipeDir ~/greengrassv2/recipes \
     --artifactDir ~/greengrassv2/artifacts \
     --merge "com.example.HelloWorld=1.0.0"
   ```

------
#### [ Windows Command Prompt (CMD) ]

   ```
   C:\greengrass\v2\bin\greengrass-cli deployment create ^
     --recipeDir %USERPROFILE%\greengrassv2\recipes ^
     --artifactDir %USERPROFILE%\greengrassv2\artifacts ^
     --merge "com.example.HelloWorld=1.0.0"
   ```

------
#### [ PowerShell ]

   ```
   C:\greengrass\v2\bin\greengrass-cli deployment create `
     --recipeDir ~/greengrassv2/recipes `
     --artifactDir ~/greengrassv2/artifacts `
     --merge "com.example.HelloWorld=1.0.0"
   ```

------
**注意**  
您也可以使用 `greengrass-cli deployment create` 命令来设置组件配置参数的值。有关更多信息，请参阅 [创建](gg-cli-deployment.md#deployment-create)。

1. 使用 `greengrass-cli deployment status` 命令监控组件的部署进度。

------
#### [ Unix or Linux ]

   ```
   sudo /greengrass/v2/bin/greengrass-cli deployment status \
     -i deployment-id
   ```

------
#### [ Windows Command Prompt (CMD) ]

   ```
   C:\greengrass\v2\bin\greengrass-cli deployment status ^
     -i deployment-id
   ```

------
#### [ PowerShell ]

   ```
   C:\greengrass\v2\bin\greengrass-cli deployment status `
     -i deployment-id
   ```

------

1. 测试您的组件，使其在 Greengrass 核心设备上运行。完成此版本组件后，将其上传至 AWS IoT Greengrass 服务。然后，可以将组件部署到其他核心设备。有关更多信息，请参阅 [发布组件以部署到您的核心设备](publish-components.md)。