

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

# 在裝置上安裝 AWS IoT Greengrass 日誌管理員元件
<a name="gs-publish-edge"></a>

**注意**  
請注意 [CloudWatch 配額](https://docs.aws.amazon.com//AmazonCloudWatch/latest/logs/cloudwatch_limits_cwl.html)。

請依照這些程序來設定 Amazon Kinesis Video Streams Edge Agent 日誌，以使用 AWS IoT Greengrass 日誌管理員元件自動上傳至 CloudWatch。此為選用步驟。

**安裝 AWS IoT Greengrass 日誌管理員元件**

1. 確認 AWS IoT Greengrass 裝置角色具有[適當的許可](https://docs.aws.amazon.com//greengrass/v2/developerguide/log-manager-component.html#log-manager-component-requirements)。

   1. 登入 AWS 管理主控台 並開啟位於 https：//[https://console.aws.amazon.com/iam/](https://console.aws.amazon.com/iam/) 的 IAM 主控台。

   1. 按一下左側導覽中的**角色**。

   1. 選擇在 中建立的 TES 角色名稱[在裝置上設定 AWS IoT Greengrass V2 核心裝置](gs-setup-gg.md)。如有必要，請使用搜尋列。

   1. 選取`GreengrassV2TokenExchangeRoleAccess`政策。

   1. 選取 JSON 索引標籤，並確認政策看起來如下：

------
#### [ JSON ]

****  

      ```
      {
          "Version":"2012-10-17",		 	 	 
          "Statement": [
              {
                  "Effect": "Allow",
                  "Action": [
                      "logs:CreateLogGroup",
                      "logs:CreateLogStream",
                      "logs:PutLogEvents",
                      "logs:DescribeLogStreams",
                      "s3:GetBucketLocation"
                  ],
                  "Resource": "*"
              }
          ]
      }
      ```

------

   1. 如果`GreengrassV2TokenExchangeRoleAccess`政策不存在，或缺少一些必要的許可，請使用這些許可建立新的 IAM 政策，並將其連接到在 中建立的 TES 角色[在裝置上設定 AWS IoT Greengrass V2 核心裝置](gs-setup-gg.md)。

1. 登入 AWS 管理主控台 並在 https：//[https://console.aws.amazon.com/iot/](https://console.aws.amazon.com/iot/) 開啟 AWS IoT Core 主控台。確認已選取適當的區域。

1. 在左側導覽中，選擇 **Greengrass 裝置**、**部署**。

   選擇與您在 中建立的物件具有相同目標的部署[在裝置上設定 AWS IoT Greengrass V2 核心裝置](gs-setup-gg.md)。

1. 在右上角，選取**動作**，然後選擇**修訂**。

   在出現的快顯視窗中，選擇**修訂部署**。

1. 完成下列各節：

   1. **步驟 1：指定目標。**選擇**下一步**。

   1. **步驟 2：選取元件。**

      1. 確認仍然選取 **aws.greengrass.Cli** 元件和 **aws.greengrass.SecretManager** 元件。
**重要**  
請勿解除安裝這些元件。

      1. 切換**僅顯示選取的元件**切換並搜尋 **aws.greengrass.LogManager**。

      1. 選取 **aws.greengrass.LogManager** 旁的方塊，然後選擇**下一步**。

   1. **步驟 3：設定元件。**設定 AWS IoT Greengrass 日誌管理員元件以上傳 Amazon Kinesis Video Streams Edge Agent 產生的日誌。

      選取 **aws.greengrass.LogManager** 元件，然後選擇**設定元件**。

      在出現的畫面中，將下列日誌管理員組態貼到**要合併的組態**方塊中。

      ```
      {
          "logsUploaderConfiguration": {
              "componentLogsConfigurationMap": {
                  "aws.kinesisvideo.KvsEdgeComponent/java_kvs.log": {
                      "diskSpaceLimit": "100",
                      "diskSpaceLimitUnit": "MB",
                      "logFileDirectoryPath": "/greengrass/v2/work/aws.kinesisvideo.KvsEdgeComponent/log",
                      "logFileRegex": "java_kvs.log\\w*"
                  },
                  "aws.kinesisvideo.KvsEdgeComponent/cpp_kvs_edge.log": {
                      "diskSpaceLimit": "100",
                      "diskSpaceLimitUnit": "MB",
                      "logFileDirectoryPath": "/greengrass/v2/work/aws.kinesisvideo.KvsEdgeComponent/log",
                      "logFileRegex": "cpp_kvs_edge.log\\w*"
                  },
                  "aws.kinesisvideo.KvsEdgeComponent/cpp_kvssink.log": {
                      "diskSpaceLimit": "100",
                      "diskSpaceLimitUnit": "MB",
                      "logFileDirectoryPath": "/greengrass/v2/work/aws.kinesisvideo.KvsEdgeComponent/log",
                      "logFileRegex": "cpp_kvssink.log\\w*"
                  },
                  "aws.kinesisvideo.KvsEdgeComponent/cpp_kvs_streams.log": {
                      "diskSpaceLimit": "100",
                      "diskSpaceLimitUnit": "MB",
                      "logFileDirectoryPath": "/greengrass/v2/work/aws.kinesisvideo.KvsEdgeComponent/log",
                      "logFileRegex": "cpp_kvs_streams.log\\w*"
                  }
              }
          },
          "periodicUploadIntervalSec": "1"
      }
      ```
**重要**  
上述組態`logFileDirectoryPath`中的 假設使用預設記錄輸出位置。
**注意**  
如需日誌管理員組態之每個參數的詳細資訊，請參閱《 AWS IoT Greengrass Version 2 開發人員指南》中的[日誌管理員](https://docs.aws.amazon.com//greengrass/v2/developerguide/log-manager-component.html#log-manager-component-configuration)一節。

      完成後，請選取**確認**，然後選擇**下一步**。

   1. **步驟 4：設定進階設定。**選取**下一步**。

   1. **步驟 5：檢閱。**選取 **Deploy** (部署)。

1. 確認 AWS 日誌管理員元件和許可已正確安裝。

1. 在 Ubuntu Amazon EC2 執行個體上，輸入 `sudo /greengrass/v2/bin/greengrass-cli component details --name aws.greengrass.LogManager`來驗證元件是否收到更新後的組態。

1. 檢查 AWS IoT Greengrass 核心日誌。

   輸入 `sudo less /greengrass/v2/logs/greengrass.log`。

   檢閱部署錯誤。

   如果發生錯誤，請修改部署以移除`aws.greengrass.LogManager`元件。

   輸入 `sudo service greengrass restart` 以重新啟動 AWS IoT Greengrass 核心服務。

   如果部署錯誤與缺少許可有關，請檢閱 [將許可新增至字符交換服務 (TES) 角色](gs-add-permissions.md) 以確保 TES 角色具有適當的許可。然後，重複本節。