系統日誌轉寄站 - AWS IoT Greengrass

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

系統日誌轉寄站

系統日誌轉送器 (aws.greengrass.SystemLogForwarder) 會使用 Amazon CloudWatch CloudWatch。

重要

此元件只會轉送執行時間期間產生的 systemd-journald 日誌。如需 systemd-journald 日誌的詳細資訊,請參閱 systemd-journaldjournalctl

注意

此元件需要特定許可,才能建立和管理 CloudWatch 日誌群組和串流。

版本

此元件具有下列版本:

  • 2.1.x

  • 2.0.x

類型

元件是一般元件 (aws.greengrass.generic)。Greengrass 核會執行元件的生命週期指令碼。

如需詳細資訊,請參閱元件類型

作業系統

此元件必須安裝在以系統為基礎的 Linux 系統上。

要求

此元件有下列需求:

元件需要存取以在 CloudWatch 中建立日誌和串流群組,以及執行 PutLogEvents HTTP 呼叫的許可。您必須至少將下列政策許可新增至 Greengrass 裝置的角色別名:

JSON
{ "Version":"2012-10-17", "Statement": [ { "Effect": "Allow", "Action": ["logs:CreateLogGroup"], "Resource": "arn:aws:logs:us-east-1:111122223333:log-group:greengrass/systemLogs:*" }, { "Effect": "Allow", "Action": ["logs:CreateLogStream", "logs:PutLogEvents"], "Resource": "arn:aws:logs:us-east-1:111122223333:log-group:greengrass/systemLogs:log-stream:${credentials-iot:ThingName}" } ] }
注意

如需詳細資訊,請參閱 System Log Forwarder Github 頁面。

端點和連接埠

除了基本操作所需的端點和連接埠之外,此元件還必須能夠對下列端點和連接埠執行傳出請求。如需詳細資訊,請參閱允許透過代理或防火牆的裝置流量

Endpoint 連線埠 必要 說明

logs.region.amazonaws.com

443

如果您將日誌寫入 CloudWatch Logs,則為必要項目。

相依性

當您部署元件時, AWS IoT Greengrass 也會部署其相依性的相容版本。這表示您必須符合元件及其所有相依性的要求,才能成功部署元件。本節列出此元件發行版本的相依性,以及為每個相依性定義元件版本的語意版本限制。您也可以在 AWS IoT Greengrass 主控台中檢視每個版本元件的相依性。在元件詳細資訊頁面上,尋找相依性清單。

2.1.x

下表列出此元件 2.1.x 版的相依性。

相依性 相容版本 相依性類型
字符交換服務 >=2.0.0 硬式
Greengrass nucleus lite >=2.3.0 軟式
2.0.x

下表列出此元件 2.0.x 版的相依性。

相依性 相容版本 相依性類型
權杖交換服務 >=2.0.0 硬式

Configuration

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

2.0.x-2.1.x
maxUploadIntervalSec

系統日誌轉送器將嘗試上傳日誌的最長期間。由於日誌轉送器會在記憶體填滿時上傳日誌,因此其上傳頻率可能仍高於設定的最大節奏。

maxRetriesCount

系統日誌轉寄站嘗試重試暫時性 HTTP 錯誤的次數。

bufferCapacity

記憶體內日誌儲存的環形緩衝區大小。

logGroup

CloudWatch 中的日誌路徑。

logStream

CloudWatch logStream。

filters

核心裝置的篩選條件組態映射。

services

System Log Forwarder 將用於判斷上傳哪些日誌的服務名稱篩選條件清單。只有在源自 的服務符合此清單中的至少一個篩選條件時,才會上傳日誌。此清單中的篩選條件可以是服務名稱必須完全相符的字串,或是結尾為 * 的字串,這表示字首必須相符。

預設:[ggl.*]

重要

只有在源自 的服務符合此清單中的至少一個篩選條件時,才會上傳日誌。

注意

使用值 * 將包含所有可用的服務。

範例組態:

以下範例會依 Greengrass Nucleus Lite 中包含的所有服務篩選日誌。

{ "maxUploadIntervalSec": 300, "maxRetriesCount": 3, "bufferCapacity": 1048576, "logGroup": "greengrass/systemLogs", "logStream": "deviceName", "filters": { "services": ["ggl.*"] } }

變更記錄

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

版本

變更

2.1.0

錯誤修正和改善
  • 更新元件配方以正確支援 Greengrass 核。

  • 改善在沒有要上傳的日誌時的記錄輸出。

  • 一般錯誤修正與改進。

2.0.1

錯誤修正和改善

更新元件配方以正確支援 aarch64 (arm64) 系統。

2.0.0

初始版本。