ログマネージャー - AWS IoT Greengrass

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

ログマネージャー

ログマネージャーコンポーネント (aws.greengrass.LogManager) は、 AWS IoT Greengrass コアデバイスから Amazon CloudWatch Logs にログをアップロードします。Greengrass nucleus、他の Greengrass コンポーネント、Greengrass コンポーネントではない他のアプリケーションとサービスからログをアップロードできます。ログおよびローカルファイルシステムで CloudWatch ログをモニタリングする方法の詳細については、「」を参照してくださいAWS IoT Greengrass ログのモニタリング

ログマネージャーコンポーネントを使用して CloudWatch Logs に書き込む場合、次の考慮事項が適用されます。

  • ログ遅延

    注記

    ログマネージャーバージョン 2.3.0 にアップグレードすることをお勧めします。これにより、ローテーションされたアクティブなログファイルのログ遅延が軽減されます。ログマネージャー 2.3.0 にアップグレードする際には、Greengrass nucleus 2.9.1 にもアップグレードすることをお勧めします。

    ログマネージャーコンポーネントバージョン 2.2.8 (およびそれ以前) は、ローテーションされたログファイルからのみ、ログを処理およびアップロードします。デフォルトでは、 AWS IoT Greengrass Core ソフトウェアは 1 時間ごと、または 1,024 KB のログファイルをローテーションします。その結果、ログマネージャーコンポーネントは、 AWS IoT Greengrass Core ソフトウェアまたは Greengrass コンポーネントが 1,024 KB 分のログを書き込んだ後にのみログをアップロードします。ログファイルの容量上限を低く設定して、ログファイルのローテーション頻度を上げることができます。これにより、ログマネージャーコンポーネントはログをより頻繁に CloudWatch ログにアップロードします。

    ログマネージャーコンポーネントバージョン 2.3.0 (およびそれ以降) は、すべてのログを処理およびアップロードします。新しいログを書き込むと、ログマネージャーバージョン 2.3.0 (およびそれ以降) は、ローテーションを待つことなく、そのアクティブなログファイルを処理して直接アップロードします。そのため、5 分以内に新しいログを表示することができます。

    ログマネージャーコンポーネントは、新しいログを定期的にアップロードします。デフォルトで、ログマネージャーコンポーネントは 5 分ごとに新しいログをアップロードします。ログマネージャーコンポーネントが を設定することでログをより頻繁に CloudWatch Logs にアップロードするように、アップロード間隔を短く設定できますperiodicUploadIntervalSec。この定期的な間隔を設定する方法の詳細については、「設定」を参照してください。

    ログは、同じ Greengrass ファイルシステムからほぼリアルタイムでアップロードできます。ログをリアルタイムで監視する必要がある場合、ファイルシステムログの使用を検討してください。

    注記

    ログの書き込み先として別のファイルシステムを使用している場合、ログマネージャーは、ログマネージャーコンポーネントバージョン 2.2.8 以前の動作に戻ります。ファイルシステムログへのアクセスについては、「ファイルシステムログをアクセス」を参照してください。

  • クロックスキュー

    ログマネージャーコンポーネントは、標準の Signature Version 4 署名プロセスを使用して、 CloudWatch ログへのAPIリクエストを作成します。コアデバイスのシステム時間が 15 分以上同期していない場合、 CloudWatch ログはリクエストを拒否します。詳細については、「AWS 全般のリファレンス」の「署名バージョン 4 の署名プロセス」を参照してください。

このコンポーネントがログをアップロードするロググループとログストリームの情報については、「使用方法」を参照してください。

バージョン

このコンポーネントには、次のバージョンがあります。

  • 2.3.x

  • 2.2.x

  • 2.1.x

  • 2.0.x

タイプ

このコンポーネントはプラグインコンポーネント (aws.greengrass.plugin) です。Greengrass nucleus は、nucleus と同じ Java 仮想マシン (JVM) でこのコンポーネントを実行します。コアデバイスでこのコンポーネントのバージョンを変更するとき、nucleus が再起動します。

このコンポーネントは、Greengrass nucleus と同じログファイルを使用します。詳細については、「AWS IoT Greengrass ログのモニタリング」を参照してください。

詳細については、「コンポーネントタイプ」を参照してください。

オペレーティングシステム

このコンポーネントは、次のオペレーティングシステムを実行するコアデバイスにインストールできます。

  • Linux

  • Windows

要件

このコンポーネントには次の要件があります。

  • Greengrass デバイスロールlogs:CreateLogGroup、次のIAMポリシー例に示すようにlogs:CreateLogStream、、、、logs:PutLogEventsおよび logs:DescribeLogStreamsアクションを許可する必要があります。

    { "Version": "2012-10-17", "Statement": [ { "Action": [ "logs:CreateLogGroup", "logs:CreateLogStream", "logs:PutLogEvents", "logs:DescribeLogStreams" ], "Effect": "Allow", "Resource": "arn:aws:logs:*:*:*" } ] }
    注記

    AWS IoT Greengrass Core ソフトウェアのインストール時に作成する Greengrass デバイスロールには、このポリシー例のアクセス許可がデフォルトで含まれています。

    詳細については、「Amazon Logs ユーザーガイド」の CloudWatch 「ログのアイデンティティベースのポリシー (IAM ポリシー) の使用」を参照してください。 CloudWatch

  • ログマネージャーコンポーネントは、 での実行がサポートされていますVPC。このコンポーネントを にデプロイするにはVPC、以下が必要です。

    • ログマネージャーコンポーネントには、VPCエンドポイントが logs.region.amazonaws.comである への接続が必要ですcom.amazonaws.us-east-1.logs

エンドポイントおよびポート

このコンポーネントは、基本的な操作に必要なエンドポイントとポートに加えて、次のエンドポイントとポートに対し、アウトバウンドリクエストを実行できる必要があります。詳細については、「プロキシまたはファイアウォールを介したデバイストラフィックを許可する」を参照してください。

エンドポイント [ポート] 必要 説明

logs.region.amazonaws.com

443 なし

CloudWatch Logs にログを書き込む場合に必要です。

依存関係

コンポーネントをデプロイすると、 はその依存関係の互換性のあるバージョン AWS IoT Greengrass もデプロイします。つまり、コンポーネントを正常にデプロイするには、コンポーネントとその依存関係のすべての要件を満たす必要があります。このセクションでは、このコンポーネントのリリースされたバージョンの依存関係と、各依存関係に対するコンポーネントのバージョンを定義するセマンティックバージョン制約をリスト表示しています。コンポーネントの各バージョンの依存関係は、AWS IoT Greengrass コンソールでも確認できます。コンポーネントの詳細ページで [Dependencies] (依存関係) リストを確認します。

2.3.8

次の表に、このコンポーネントのバージョン 2.3.8 の依存関係を示します。

依存関係 互換性のあるバージョン 依存関係タイプ
Greengrass nucleus >=2.1.0 <2.14.0 ソフト
2.3.7

次の表に、このコンポーネントのバージョン 2.3.7 の依存関係を示します。

依存関係 互換性のあるバージョン 依存関係タイプ
Greengrass nucleus >=2.1.0 <2.13.0 ソフト
2.3.5 and 2.3.6

次の表に、このコンポーネントのバージョン 2.3.5 および 2.3.6 の依存関係を示します。

依存関係 互換性のあるバージョン 依存関係タイプ
Greengrass nucleus >=2.1.0 <2.12.0 ソフト
2.3.3 – 2.3.4

次の表に、このコンポーネントのバージョン 2.3.3 から 2.3.4 までの依存関係を示します。

依存関係 互換性のあるバージョン 依存関係タイプ
Greengrass nucleus >=2.1.0 <2.11.0 ソフト
2.2.8 – 2.3.2

次の表に、このコンポーネントのバージョン 2.2.8 から 2.3.2 までの依存関係を示します。

依存関係 互換性のあるバージョン 依存関係タイプ
Greengrass nucleus >=2.1.0 <2.10.0 ソフト
2.2.7

次の表に、このコンポーネントのバージョン 2.2.7 に関する依存関係を示します。

依存関係 互換性のあるバージョン 依存関係タイプ
Greengrass nucleus >=2.1.0 <2.9.0 ソフト
2.2.6

次の表に、このコンポーネントのバージョン 2.2.6 の依存関係を示します。

依存関係 互換性のあるバージョン 依存関係タイプ
Greengrass nucleus >=2.1.0 <2.8.0 ソフト
2.2.5

次の表に、このコンポーネントのバージョン 2.2.5 の依存関係を示します。

依存関係 互換性のあるバージョン 依存関係タイプ
Greengrass nucleus >=2.1.0 <2.7.0 ソフト
2.2.1 - 2.2.4

次の表に、このコンポーネントのバージョン 2.2.1~2.2.4 の依存関係を示します。

依存関係 互換性のあるバージョン 依存関係タイプ
Greengrass nucleus >=2.1.0 <2.6.0 ソフト
2.1.3 and 2.2.0

次の表に、このコンポーネントのバージョン 2.1.3 および 2.2.0 の依存関係を示します。

依存関係 互換性のあるバージョン 依存関係タイプ
Greengrass nucleus >=2.1.0 <2.5.0 ソフト
2.1.2

次の表に、このコンポーネントのバージョン 2.1.2 の依存関係を示します。

依存関係 互換性のあるバージョン 依存関係タイプ
Greengrass nucleus >=2.1.0 <2.4.0 ソフト
2.1.1

次の表に、このコンポーネントのバージョン 2.1.1 の依存関係を示します。

依存関係 互換性のあるバージョン 依存関係タイプ
Greengrass nucleus >=2.1.0 <2.3.0 ソフト
2.1.0

次の表に、このコンポーネントのバージョン 2.1.0 の依存関係を示します。

依存関係 互換性のあるバージョン 依存関係タイプ
Greengrass nucleus >=2.1.0 <2.2.0 ソフト
2.0.x

次の表に、このコンポーネントのバージョン 2.0.x の依存関係を示します。

依存関係 互換性のあるバージョン 依存関係タイプ
Greengrass nucleus >=2.0.3 <2.1.0 ソフト

コンポーネントの依存関係の詳細については、「コンポーネント recipe のリファレンス」を参照してください。

構成

このコンポーネントには、コンポーネントのデプロイ時にカスタマイズできる次の設定パラメータが用意されています。

v2.3.6 – v2.3.7
logsUploaderConfiguration

(オプション) ログマネージャーコンポーネントがアップロードするログの設定。このオブジェクトには、次の情報が含まれます。

systemLogsConfiguration

(オプション) Greengrass nucleus とプラグインコンポーネント からのログを含む AWS IoT Greengrass Core ソフトウェアシステムログの設定。 Greengrass nucleusログマネージャーコンポーネントがシステムログを管理できるようにするため、この設定を指定します。このオブジェクトには、次の情報が含まれます。

uploadToCloudWatch

(オプション) システムログを CloudWatch ログにアップロードできます。

デフォルト: false

minimumLogLevel

(オプション) アップロードするログメッセージの最小レベル。この最小レベルは、Greengrass nucleus コンポーネントを出力JSON形式ログに設定した場合にのみ適用されます。JSON 形式ログを有効にするには、ログ記録形式パラメータ () JSON に を指定しますlogging.format

こちらにレベル順に一覧表示されているログレベルから選択します。

  • DEBUG

  • INFO

  • WARN

  • ERROR

デフォルト: INFO

diskSpaceLimit

(オプション) Greengrass システムログファイルの最大合計サイズ (diskSpaceLimitUnit で指定する単位)。Greengrass システムログファイルの合計サイズがこの最大合計サイズを超えると、 AWS IoT Greengrass Core ソフトウェアは最も古い Greengrass システムログファイルを削除します。

このパラメータは、Greengrass nucleus コンポーネントログサイズ上限パラメータ (totalLogsSizeKB) と同等です。 AWS IoT Greengrass Core ソフトウェアは、Greengrass システムログの最大合計サイズとして 2 つの値の最小値を使用します。

diskSpaceLimitUnit

(オプション) diskSpaceLimit の単位。次のオプションから選択します。

  • KB - キロバイト

  • MB - メガバイト

  • GB - ギガバイト

デフォルト: KB

deleteLogFileAfterCloudUpload

(オプション) ログマネージャーコンポーネントがログを CloudWatch Logs にアップロードした後、ログファイルを削除できます。

デフォルト: false

componentLogsConfigurationMap

(オプション) コアデバイスのコンポーネント用ログ設定のマップ。このマップにある各 componentName オブジェクトは、コンポーネントまたはアプリケーションのログ設定を定義します。ログマネージャーコンポーネントは、これらのコンポーネントログを Logs CloudWatch にアップロードします。

重要

コンポーネントごとに 1 つの設定キーを使用することを強くお勧めします。logFileRegex を使用するときは、アクティブに書き込まれているログファイルが 1 つしかないファイルのグループのみに的を絞ってください。この推奨事項に従わない場合、重複するログが にアップロードされる可能性があります CloudWatch。単一の正規表現で複数のアクティブなログファイルを対象とする場合は、ログマネージャーを v2.3.1 以降にアップグレードし、設定例を使用した設定変更のご検討をお勧めします。

注記

v2.2.0 より前のバージョンのログマネージャーからアップグレードする場合、componentLogsConfigurationMap ではなく、componentLogsConfiguration リストを使い続けることができます。ただし、マージとリセットの更新を使用して特定コンポーネントの設定を修正できるように、マップ形式を使用することを強くお勧めします。componentLogsConfiguration パラメータの情報については、このコンポーネントの v2.1.x の設定パラメータを参照してください。

componentName

のログ設定 componentName このログ設定の コンポーネントまたはアプリケーション。Greengrass コンポーネントの名前または別の値を指定して、このロググループを識別できます。

各オブジェクトには、次の情報が含まれます:

minimumLogLevel

(オプション) アップロードするログメッセージの最小レベル。この最小レベルは、このコンポーネントのログが特定のJSON形式を使用している場合にのみ適用されます。形式は、 のAWS IoT Greengrass ログ記録モジュールリポジトリにあります GitHub。

こちらにレベル順に一覧表示されているログレベルから選択します。

  • DEBUG

  • INFO

  • WARN

  • ERROR

デフォルト: INFO

diskSpaceLimit

(オプション) このコンポーネントにおけるすべてのログファイルの最大合計サイズ (diskSpaceLimitUnit で指定する単位)。このコンポーネントのログファイルの合計サイズがこの最大合計サイズを超えると、 AWS IoT Greengrass Core ソフトウェアはこのコンポーネントの最も古いログファイルを削除します。

このパラメータは、Greengrass nucleus コンポーネントログサイズ上限パラメータ (totalLogsSizeKB) に関連しています。 AWS IoT Greengrass Core ソフトウェアは、このコンポーネントの最大合計ログサイズとして 2 つの値の最小値を使用します。

diskSpaceLimitUnit

(オプション) diskSpaceLimit の単位。次のオプションから選択します。

  • KB - キロバイト

  • MB - メガバイト

  • GB - ギガバイト

デフォルト: KB

logFileDirectoryPath

(オプション) このコンポーネントのログファイルを含むフォルダへのパス。

標準出力 (stdout) と標準エラー (stderr) に出力する Greengrass コンポーネントには、このパラメータを指定する必要はありません。

デフォルト: /greengrass/v2/logs

logFileRegex

(オプション) コンポーネントまたはアプリケーションが使用するログファイル名の形式を指定する正規表現。ログマネージャーコンポーネントは、この正規表現を使用して logFileDirectoryPath のフォルダのログファイルを識別します。

標準出力 (stdout) と標準エラー (stderr) に出力する Greengrass コンポーネントには、このパラメータを指定する必要はありません。

コンポーネントまたはアプリケーションがログファイルをローテーションする場合、ローテーションされたログファイル名と一致する正規表現を指定します。例えば、hello_world\\\\w*.log が Hello World アプリケーションにログをアップロードするように指定します。\\\\w* パターンは、英数字とアンダースコアを含むゼロ以上の単語文字と一致します。この正規表現は、名前のタイムスタンプの有無にかかわらず、ログファイルを照合します。この例では、ログマネージャーは次のログファイルをアップロードします。

  • hello_world.log - Hello World アプリケーションの最新ログファイル。

  • hello_world_2020_12_15_17_0.log - Hello World アプリケーションの古いログファイル。

デフォルト: componentName\\\\w*.log、ここで componentName は、このログ設定のコンポーネントの名前です。

deleteLogFileAfterCloudUpload

(オプション) ログマネージャーコンポーネントがログを CloudWatch Logs にアップロードした後、ログファイルを削除できます。

デフォルト: false

multiLineStartPattern

(オプション) 新しい行のログメッセージが新しいログメッセージであるときに識別する正規表現。正規表現が新しい行と一致しない場合、ログマネージャーコンポーネントは新しい行を前の行のログメッセージに追加します。

デフォルトでは、ログマネージャーコンポーネントは、行が空白文字 (タブまたはスペースなど) で始まるかどうかについてチェックします。そうでない場合、ログマネージャーはその行を新しいログメッセージとして処理します。それ以外の場合、その行を現在のログメッセージに追加します。この動作により、ログマネージャーコンポーネントが複数行 (スタックトレースなど) にまたがるメッセージを分割しないようにします。

periodicUploadIntervalSec

(オプション) ログマネージャーコンポーネントがアップロードする新しいログファイルをチェックする期間 (秒)。

デフォルト: 300 (5 分)

最小: 0.000001 (1 マイクロ秒)

deprecatedVersionSupport

ログマネージャーが v2.3.5 で導入されたロギング速度の向上を使用するかどうかを示します。値を false に設定してこの機能強化を使用します。

ログマネージャー v2.3.1 以前からアップグレードするときにこの値を false に設定すると、重複したログエントリがアップロードされる場合があります。

デフォルト: true

例: 設定マージの更新

次の設定例では、システムログとcom.example.HelloWorldコンポーネントログを Logs CloudWatch にアップロードするように指定しています。

{ "logsUploaderConfiguration": { "systemLogsConfiguration": { "uploadToCloudWatch": "true", "minimumLogLevel": "INFO", "diskSpaceLimit": "10", "diskSpaceLimitUnit": "MB", "deleteLogFileAfterCloudUpload": "false" }, "componentLogsConfigurationMap": { "com.example.HelloWorld": { "minimumLogLevel": "INFO", "diskSpaceLimit": "20", "diskSpaceLimitUnit": "MB", "deleteLogFileAfterCloudUpload": "false" } } }, "periodicUploadIntervalSec": "300", "deprecatedVersionSupport": "false" }
例: ログマネージャー v2.3.1 を使用して、複数のアクティブなログファイルをアップロードための設定

複数のアクティブなログファイルを対象にする場合は、次の設定例が推奨されます。この設定例では、 にアップロードするアクティブなログファイルを指定します CloudWatch。この設定例を使用すると、logFileRegexに一致するローテーションファイルもアップロードされます。この設定例は、ログマネージャー v2.3.1 でサポートされています。

{ "logsUploaderConfiguration": { "componentLogsConfigurationMap": { "com.example.A": { "logFileRegex": "com.example.A\\w*.log", "deleteLogFileAfterCloudUpload": "false" } "com.example.B": { "logFileRegex": "com.example.B\\w*.log", "deleteLogFileAfterCloudUpload": "false" } } }, "periodicUploadIntervalSec": "10" }
v2.3.x
logsUploaderConfiguration

(オプション) ログマネージャーコンポーネントがアップロードするログの設定。このオブジェクトには、次の情報が含まれます。

systemLogsConfiguration

(オプション) Greengrass nucleus とプラグインコンポーネント からのログを含む AWS IoT Greengrass Core ソフトウェアシステムログの設定。 Greengrass nucleusログマネージャーコンポーネントがシステムログを管理できるようにするため、この設定を指定します。このオブジェクトには、次の情報が含まれます。

uploadToCloudWatch

(オプション) システムログを CloudWatch ログにアップロードできます。

デフォルト: false

minimumLogLevel

(オプション) アップロードするログメッセージの最小レベル。この最小レベルは、Greengrass nucleus コンポーネントを出力JSON形式ログに設定した場合にのみ適用されます。JSON 形式ログを有効にするには、ログ記録形式パラメータ () JSONに を指定しますlogging.format

こちらにレベル順に一覧表示されているログレベルから選択します。

  • DEBUG

  • INFO

  • WARN

  • ERROR

デフォルト: INFO

diskSpaceLimit

(オプション) Greengrass システムログファイルの最大合計サイズ (diskSpaceLimitUnit で指定する単位)。Greengrass システムログファイルの合計サイズがこの最大合計サイズを超えると、 AWS IoT Greengrass Core ソフトウェアは最も古い Greengrass システムログファイルを削除します。

このパラメータは、Greengrass nucleus コンポーネントログサイズ上限パラメータ (totalLogsSizeKB) と同等です。 AWS IoT Greengrass Core ソフトウェアは、Greengrass システムログの最大合計サイズとして 2 つの値の最小値を使用します。

diskSpaceLimitUnit

(オプション) diskSpaceLimit の単位。次のオプションから選択します。

  • KB - キロバイト

  • MB - メガバイト

  • GB - ギガバイト

デフォルト: KB

deleteLogFileAfterCloudUpload

(オプション) ログマネージャーコンポーネントがログを CloudWatch Logs にアップロードした後、ログファイルを削除できます。

デフォルト: false

componentLogsConfigurationMap

(オプション) コアデバイスのコンポーネント用ログ設定のマップ。このマップにある各 componentName オブジェクトは、コンポーネントまたはアプリケーションのログ設定を定義します。ログマネージャーコンポーネントは、これらのコンポーネントログを Logs CloudWatch にアップロードします。

重要

コンポーネントごとに 1 つの設定キーを使用することを強くお勧めします。logFileRegex を使用するときは、アクティブに書き込まれているログファイルが 1 つしかないファイルのグループのみに的を絞ってください。この推奨事項に従わない場合、重複するログが にアップロードされる可能性があります CloudWatch。単一の正規表現で複数のアクティブなログファイルを対象とする場合は、ログマネージャーを v2.3.1 にアップグレードし、設定例を使用した設定変更のご検討をお勧めします。

注記

v2.2.0 より前のバージョンのログマネージャーからアップグレードする場合、componentLogsConfigurationMap ではなく、componentLogsConfiguration リストを使い続けることができます。ただし、マージとリセットの更新を使用して特定コンポーネントの設定を修正できるように、マップ形式を使用することを強くお勧めします。componentLogsConfiguration パラメータの情報については、このコンポーネントの v2.1.x の設定パラメータを参照してください。

componentName

のログ設定 componentName このログ設定の コンポーネントまたはアプリケーション。Greengrass コンポーネントの名前または別の値を指定して、このロググループを識別できます。

各オブジェクトには、次の情報が含まれます:

minimumLogLevel

(オプション) アップロードするログメッセージの最小レベル。この最小レベルは、このコンポーネントのログが特定のJSON形式を使用している場合にのみ適用されます。形式は、 のAWS IoT Greengrass ログ記録モジュールリポジトリにあります GitHub。

こちらにレベル順に一覧表示されているログレベルから選択します。

  • DEBUG

  • INFO

  • WARN

  • ERROR

デフォルト: INFO

diskSpaceLimit

(オプション) このコンポーネントにおけるすべてのログファイルの最大合計サイズ (diskSpaceLimitUnit で指定する単位)。このコンポーネントのログファイルの合計サイズがこの最大合計サイズを超えると、 AWS IoT Greengrass Core ソフトウェアはこのコンポーネントの最も古いログファイルを削除します。

このパラメータは、Greengrass nucleus コンポーネントログサイズ上限パラメータ (totalLogsSizeKB) に関連しています。 AWS IoT Greengrass Core ソフトウェアは、このコンポーネントの最大合計ログサイズとして 2 つの値の最小値を使用します。

diskSpaceLimitUnit

(オプション) diskSpaceLimit の単位。次のオプションから選択します。

  • KB - キロバイト

  • MB - メガバイト

  • GB - ギガバイト

デフォルト: KB

logFileDirectoryPath

(オプション) このコンポーネントのログファイルを含むフォルダへのパス。

標準出力 (stdout) と標準エラー (stderr) に出力する Greengrass コンポーネントには、このパラメータを指定する必要はありません。

デフォルト: /greengrass/v2/logs

logFileRegex

(オプション) コンポーネントまたはアプリケーションが使用するログファイル名の形式を指定する正規表現。ログマネージャーコンポーネントは、この正規表現を使用して logFileDirectoryPath のフォルダのログファイルを識別します。

標準出力 (stdout) と標準エラー (stderr) に出力する Greengrass コンポーネントには、このパラメータを指定する必要はありません。

コンポーネントまたはアプリケーションがログファイルをローテーションする場合、ローテーションされたログファイル名と一致する正規表現を指定します。例えば、hello_world\\\\w*.log が Hello World アプリケーションにログをアップロードするように指定します。\\\\w* パターンは、英数字とアンダースコアを含むゼロ以上の単語文字と一致します。この正規表現は、名前のタイムスタンプの有無にかかわらず、ログファイルを照合します。この例では、ログマネージャーは次のログファイルをアップロードします。

  • hello_world.log - Hello World アプリケーションの最新ログファイル。

  • hello_world_2020_12_15_17_0.log - Hello World アプリケーションの古いログファイル。

デフォルト: componentName\\\\w*.log、ここで componentName は、このログ設定のコンポーネントの名前です。

deleteLogFileAfterCloudUpload

(オプション) ログマネージャーコンポーネントがログを CloudWatch Logs にアップロードした後、ログファイルを削除できます。

デフォルト: false

multiLineStartPattern

(オプション) 新しい行のログメッセージが新しいログメッセージであるときに識別する正規表現。正規表現が新しい行と一致しない場合、ログマネージャーコンポーネントは新しい行を前の行のログメッセージに追加します。

デフォルトでは、ログマネージャーコンポーネントは、行が空白文字 (タブまたはスペースなど) で始まるかどうかについてチェックします。そうでない場合、ログマネージャーはその行を新しいログメッセージとして処理します。それ以外の場合、その行を現在のログメッセージに追加します。この動作により、ログマネージャーコンポーネントが複数行 (スタックトレースなど) にまたがるメッセージを分割しないようにします。

periodicUploadIntervalSec

(オプション) ログマネージャーコンポーネントがアップロードする新しいログファイルをチェックする期間 (秒)。

デフォルト: 300 (5 分)

最小: 0.000001 (1 マイクロ秒)

例: 設定マージの更新

次の設定例では、システムログとcom.example.HelloWorldコンポーネントログを Logs CloudWatch にアップロードするように指定しています。

{ "logsUploaderConfiguration": { "systemLogsConfiguration": { "uploadToCloudWatch": "true", "minimumLogLevel": "INFO", "diskSpaceLimit": "10", "diskSpaceLimitUnit": "MB", "deleteLogFileAfterCloudUpload": "false" }, "componentLogsConfigurationMap": { "com.example.HelloWorld": { "minimumLogLevel": "INFO", "diskSpaceLimit": "20", "diskSpaceLimitUnit": "MB", "deleteLogFileAfterCloudUpload": "false" } } }, "periodicUploadIntervalSec": "300" }
例: ログマネージャー v2.3.1 を使用して、複数のアクティブなログファイルをアップロードための設定

複数のアクティブなログファイルを対象にする場合は、次の設定例が推奨されます。この設定例では、 にアップロードするアクティブなログファイルを指定します CloudWatch。この設定例を使用すると、logFileRegexに一致するローテーションファイルもアップロードされます。この設定例は、ログマネージャー v2.3.1 でサポートされています。

{ "logsUploaderConfiguration": { "componentLogsConfigurationMap": { "com.example.A": { "logFileRegex": "com.example.A\\w*.log", "deleteLogFileAfterCloudUpload": "false" } "com.example.B": { "logFileRegex": "com.example.B\\w*.log", "deleteLogFileAfterCloudUpload": "false" } } }, "periodicUploadIntervalSec": "10" }
v2.2.x
logsUploaderConfiguration

(オプション) ログマネージャーコンポーネントがアップロードするログの設定。このオブジェクトには、次の情報が含まれます。

systemLogsConfiguration

(オプション) Greengrass nucleus とプラグインコンポーネント からのログを含む AWS IoT Greengrass Core ソフトウェアシステムログの設定。 Greengrass nucleusログマネージャーコンポーネントがシステムログを管理できるようにするため、この設定を指定します。このオブジェクトには、次の情報が含まれます。

uploadToCloudWatch

(オプション) システムログを CloudWatch ログにアップロードできます。

デフォルト: false

minimumLogLevel

(オプション) アップロードするログメッセージの最小レベル。この最小レベルは、Greengrass nucleus コンポーネントを出力JSON形式ログに設定した場合にのみ適用されます。JSON 形式ログを有効にするには、ログ記録形式パラメータ () JSON に を指定しますlogging.format

こちらにレベル順に一覧表示されているログレベルから選択します。

  • DEBUG

  • INFO

  • WARN

  • ERROR

デフォルト: INFO

diskSpaceLimit

(オプション) Greengrass システムログファイルの最大合計サイズ (diskSpaceLimitUnit で指定する単位)。Greengrass システムログファイルの合計サイズがこの最大合計サイズを超えると、 AWS IoT Greengrass Core ソフトウェアは最も古い Greengrass システムログファイルを削除します。

このパラメータは、Greengrass nucleus コンポーネントログサイズ上限パラメータ (totalLogsSizeKB) と同等です。 AWS IoT Greengrass Core ソフトウェアは、Greengrass システムログの最大合計サイズとして 2 つの値の最小値を使用します。

diskSpaceLimitUnit

(オプション) diskSpaceLimit の単位。次のオプションから選択します。

  • KB - キロバイト

  • MB - メガバイト

  • GB - ギガバイト

デフォルト: KB

deleteLogFileAfterCloudUpload

(オプション) ログマネージャーコンポーネントがログを CloudWatch Logs にアップロードした後、ログファイルを削除できます。

デフォルト: false

componentLogsConfigurationMap

(オプション) コアデバイスのコンポーネント用ログ設定のマップ。このマップにある各 componentName オブジェクトは、コンポーネントまたはアプリケーションのログ設定を定義します。ログマネージャーコンポーネントは、これらのコンポーネントログを Logs CloudWatch にアップロードします。

注記

v2.2.0 より前のバージョンのログマネージャーからアップグレードする場合、componentLogsConfigurationMap ではなく、componentLogsConfiguration リストを使い続けることができます。ただし、マージとリセットの更新を使用して特定コンポーネントの設定を修正できるように、マップ形式を使用することを強くお勧めします。componentLogsConfiguration パラメータの情報については、このコンポーネントの v2.1.x の設定パラメータを参照してください。

componentName

のログ設定 componentName このログ設定の コンポーネントまたはアプリケーション。Greengrass コンポーネントの名前または別の値を指定して、このロググループを識別できます。

各オブジェクトには、次の情報が含まれます:

minimumLogLevel

(オプション) アップロードするログメッセージの最小レベル。この最小レベルは、このコンポーネントのログが特定のJSON形式を使用している場合にのみ適用されます。形式は、 のAWS IoT Greengrass ログ記録モジュールリポジトリにあります GitHub。

こちらにレベル順に一覧表示されているログレベルから選択します。

  • DEBUG

  • INFO

  • WARN

  • ERROR

デフォルト: INFO

diskSpaceLimit

(オプション) このコンポーネントにおけるすべてのログファイルの最大合計サイズ (diskSpaceLimitUnit で指定する単位)。このコンポーネントのログファイルの合計サイズがこの最大合計サイズを超えると、 AWS IoT Greengrass Core ソフトウェアはこのコンポーネントの最も古いログファイルを削除します。

このパラメータは、Greengrass nucleus コンポーネントログサイズ上限パラメータ (totalLogsSizeKB) に関連しています。 AWS IoT Greengrass Core ソフトウェアは、このコンポーネントの最大合計ログサイズとして 2 つの値の最小値を使用します。

diskSpaceLimitUnit

(オプション) diskSpaceLimit の単位。次のオプションから選択します。

  • KB - キロバイト

  • MB - メガバイト

  • GB - ギガバイト

デフォルト: KB

logFileDirectoryPath

(オプション) このコンポーネントのログファイルを含むフォルダへのパス。

標準出力 (stdout) と標準エラー (stderr) に出力する Greengrass コンポーネントには、このパラメータを指定する必要はありません。

デフォルト: /greengrass/v2/logs

logFileRegex

(オプション) コンポーネントまたはアプリケーションが使用するログファイル名の形式を指定する正規表現。ログマネージャーコンポーネントは、この正規表現を使用して logFileDirectoryPath のフォルダのログファイルを識別します。

標準出力 (stdout) と標準エラー (stderr) に出力する Greengrass コンポーネントには、このパラメータを指定する必要はありません。

コンポーネントまたはアプリケーションがログファイルをローテーションする場合、ローテーションされたログファイル名と一致する正規表現を指定します。例えば、hello_world\\\\w*.log が Hello World アプリケーションにログをアップロードするように指定します。\\\\w* パターンは、英数字とアンダースコアを含むゼロ以上の単語文字と一致します。この正規表現は、名前のタイムスタンプの有無にかかわらず、ログファイルを照合します。この例では、ログマネージャーは次のログファイルをアップロードします。

  • hello_world.log - Hello World アプリケーションの最新ログファイル。

  • hello_world_2020_12_15_17_0.log - Hello World アプリケーションの古いログファイル。

デフォルト: componentName\\\\w*.log、ここで componentName は、このログ設定のコンポーネントの名前です。

deleteLogFileAfterCloudUpload

(オプション) ログマネージャーコンポーネントがログを CloudWatch Logs にアップロードした後、ログファイルを削除できます。

デフォルト: false

multiLineStartPattern

(オプション) 新しい行のログメッセージが新しいログメッセージであるときに識別する正規表現。正規表現が新しい行と一致しない場合、ログマネージャーコンポーネントは新しい行を前の行のログメッセージに追加します。

デフォルトでは、ログマネージャーコンポーネントは、行が空白文字 (タブまたはスペースなど) で始まるかどうかについてチェックします。そうでない場合、ログマネージャーはその行を新しいログメッセージとして処理します。それ以外の場合、その行を現在のログメッセージに追加します。この動作により、ログマネージャーコンポーネントが複数行 (スタックトレースなど) にまたがるメッセージを分割しないようにします。

periodicUploadIntervalSec

(オプション) ログマネージャーコンポーネントがアップロードする新しいログファイルをチェックする期間 (秒)。

デフォルト: 300 (5 分)

最小: 0.000001 (1 マイクロ秒)

例: 設定マージの更新

次の設定例では、システムログとcom.example.HelloWorldコンポーネントログを Logs CloudWatch にアップロードするように指定しています。

{ "logsUploaderConfiguration": { "systemLogsConfiguration": { "uploadToCloudWatch": "true", "minimumLogLevel": "INFO", "diskSpaceLimit": "10", "diskSpaceLimitUnit": "MB", "deleteLogFileAfterCloudUpload": "false" }, "componentLogsConfigurationMap": { "com.example.HelloWorld": { "minimumLogLevel": "INFO", "diskSpaceLimit": "20", "diskSpaceLimitUnit": "MB", "deleteLogFileAfterCloudUpload": "false" } } }, "periodicUploadIntervalSec": "300" }
v2.1.x
logsUploaderConfiguration

(オプション) ログマネージャーコンポーネントがアップロードするログの設定。このオブジェクトには、次の情報が含まれます。

systemLogsConfiguration

(オプション) Greengrass nucleus とプラグインコンポーネント からのログを含む AWS IoT Greengrass Core ソフトウェアシステムログの設定。 Greengrass nucleusログマネージャーコンポーネントがシステムログを管理できるようにするため、この設定を指定します。このオブジェクトには、次の情報が含まれます。

uploadToCloudWatch

(オプション) システムログを CloudWatch ログにアップロードできます。

デフォルト: false

minimumLogLevel

(オプション) アップロードするログメッセージの最小レベル。この最小レベルは、Greengrass nucleus コンポーネントを出力JSON形式ログに設定した場合にのみ適用されます。JSON 形式ログを有効にするには、ログ記録形式パラメータ () JSON に を指定しますlogging.format

こちらにレベル順に一覧表示されているログレベルから選択します。

  • DEBUG

  • INFO

  • WARN

  • ERROR

デフォルト: INFO

diskSpaceLimit

(オプション) Greengrass システムログファイルの最大合計サイズ (diskSpaceLimitUnit で指定する単位)。Greengrass システムログファイルの合計サイズがこの最大合計サイズを超えると、 AWS IoT Greengrass Core ソフトウェアは最も古い Greengrass システムログファイルを削除します。

このパラメータは、Greengrass nucleus コンポーネントログサイズ上限パラメータ (totalLogsSizeKB) と同等です。 AWS IoT Greengrass Core ソフトウェアは、Greengrass システムログの最大合計サイズとして 2 つの値の最小値を使用します。

diskSpaceLimitUnit

(オプション) diskSpaceLimit の単位。次のオプションから選択します。

  • KB - キロバイト

  • MB - メガバイト

  • GB - ギガバイト

デフォルト: KB

deleteLogFileAfterCloudUpload

(オプション) ログマネージャーコンポーネントがログを CloudWatch Logs にアップロードした後、ログファイルを削除できます。

デフォルト: false

componentLogsConfiguration

(オプション) コアデバイスのコンポーネント用のログ設定リスト。このリストに記載された各設定内容は、コンポーネントまたはアプリケーションのログ設定を定義します。ログマネージャーコンポーネントは、これらのコンポーネントログを Logs CloudWatch にアップロードします。

各オブジェクトには、次の情報が含まれます:

componentName

このログ設定のコンポーネントまたはアプリケーションの名前。Greengrass コンポーネントの名前または別の値を指定して、このロググループを識別できます。

minimumLogLevel

(オプション) アップロードするログメッセージの最小レベル。この最小レベルは、このコンポーネントのログが特定のJSON形式を使用している場合にのみ適用されます。形式は、 のAWS IoT Greengrass ログ記録モジュールリポジトリにあります GitHub。

こちらにレベル順に一覧表示されているログレベルから選択します。

  • DEBUG

  • INFO

  • WARN

  • ERROR

デフォルト: INFO

diskSpaceLimit

(オプション) このコンポーネントにおけるすべてのログファイルの最大合計サイズ (diskSpaceLimitUnit で指定する単位)。このコンポーネントのログファイルの合計サイズがこの最大合計サイズを超えると、 AWS IoT Greengrass Core ソフトウェアはこのコンポーネントの最も古いログファイルを削除します。

このパラメータは、Greengrass nucleus コンポーネントログサイズ上限パラメータ (totalLogsSizeKB) に関連しています。 AWS IoT Greengrass Core ソフトウェアは、このコンポーネントの最大合計ログサイズとして 2 つの値の最小値を使用します。

diskSpaceLimitUnit

(オプション) diskSpaceLimit の単位。次のオプションから選択します。

  • KB - キロバイト

  • MB - メガバイト

  • GB - ギガバイト

デフォルト: KB

logFileDirectoryPath

(オプション) このコンポーネントのログファイルを含むフォルダへのパス。

標準出力 (stdout) と標準エラー (stderr) に出力する Greengrass コンポーネントには、このパラメータを指定する必要はありません。

デフォルト: /greengrass/v2/logs

logFileRegex

(オプション) コンポーネントまたはアプリケーションが使用するログファイル名の形式を指定する正規表現。ログマネージャーコンポーネントは、この正規表現を使用して logFileDirectoryPath のフォルダのログファイルを識別します。

標準出力 (stdout) と標準エラー (stderr) に出力する Greengrass コンポーネントには、このパラメータを指定する必要はありません。

コンポーネントまたはアプリケーションがログファイルをローテーションする場合、ローテーションされたログファイル名と一致する正規表現を指定します。例えば、hello_world\\\\w*.log が Hello World アプリケーションにログをアップロードするように指定します。\\\\w* パターンは、英数字とアンダースコアを含むゼロ以上の単語文字と一致します。この正規表現は、名前のタイムスタンプの有無にかかわらず、ログファイルを照合します。この例では、ログマネージャーは次のログファイルをアップロードします。

  • hello_world.log - Hello World アプリケーションの最新ログファイル。

  • hello_world_2020_12_15_17_0.log - Hello World アプリケーションの古いログファイル。

デフォルト: componentName\\\\w*.log、ここで componentName は、このログ設定のコンポーネントの名前です。

deleteLogFileAfterCloudUpload

(オプション) ログマネージャーコンポーネントがログを CloudWatch Logs にアップロードした後、ログファイルを削除できます。

デフォルト: false

multiLineStartPattern

(オプション) 新しい行のログメッセージが新しいログメッセージであるときに識別する正規表現。正規表現が新しい行と一致しない場合、ログマネージャーコンポーネントは新しい行を前の行のログメッセージに追加します。

デフォルトでは、ログマネージャーコンポーネントは、行が空白文字 (タブまたはスペースなど) で始まるかどうかについてチェックします。そうでない場合、ログマネージャーはその行を新しいログメッセージとして処理します。それ以外の場合、その行を現在のログメッセージに追加します。この動作により、ログマネージャーコンポーネントが複数行 (スタックトレースなど) にまたがるメッセージを分割しないようにします。

periodicUploadIntervalSec

(オプション) ログマネージャーコンポーネントがアップロードする新しいログファイルをチェックする期間 (秒)。

デフォルト: 300 (5 分)

最小: 0.000001 (1 マイクロ秒)

例: 設定マージの更新

次の設定例では、システムログとcom.example.HelloWorldコンポーネントログを Logs CloudWatch にアップロードするように指定しています。

{ "logsUploaderConfiguration": { "systemLogsConfiguration": { "uploadToCloudWatch": "true", "minimumLogLevel": "INFO", "diskSpaceLimit": "10", "diskSpaceLimitUnit": "MB", "deleteLogFileAfterCloudUpload": "false" }, "componentLogsConfiguration": [ { "componentName": "com.example.HelloWorld", "minimumLogLevel": "INFO", "diskSpaceLimit": "20", "diskSpaceLimitUnit": "MB", "deleteLogFileAfterCloudUpload": "false" } ] }, "periodicUploadIntervalSec": "300" }
v2.0.x
logsUploaderConfiguration

(オプション) ログマネージャーコンポーネントがアップロードするログの設定。このオブジェクトには、次の情報が含まれます。

systemLogsConfiguration

(オプション) AWS IoT Greengrass Core ソフトウェアシステムログの設定。ログマネージャーコンポーネントがシステムログを管理できるようにするため、この設定を指定します。このオブジェクトには、次の情報が含まれます。

uploadToCloudWatch

(オプション) システムログを CloudWatch ログにアップロードできます。

デフォルト: false

minimumLogLevel

(オプション) アップロードするログメッセージの最小レベル。この最小レベルは、Greengrass nucleus コンポーネントを出力JSON形式ログに設定した場合にのみ適用されます。JSON 形式ログを有効にするには、ログ記録形式パラメータ () JSON に を指定しますlogging.format

こちらにレベル順に一覧表示されているログレベルから選択します。

  • DEBUG

  • INFO

  • WARN

  • ERROR

デフォルト: INFO

diskSpaceLimit

(オプション) Greengrass システムログファイルの最大合計サイズ (diskSpaceLimitUnit で指定する単位)。Greengrass システムログファイルの合計サイズがこの最大合計サイズを超えると、 AWS IoT Greengrass Core ソフトウェアは最も古い Greengrass システムログファイルを削除します。

このパラメータは、Greengrass nucleus コンポーネントログサイズ上限パラメータ (totalLogsSizeKB) と同等です。 AWS IoT Greengrass Core ソフトウェアは、Greengrass システムログの最大合計サイズとして 2 つの値の最小値を使用します。

diskSpaceLimitUnit

(オプション) diskSpaceLimit の単位。次のオプションから選択します。

  • KB - キロバイト

  • MB - メガバイト

  • GB - ギガバイト

デフォルト: KB

deleteLogFileAfterCloudUpload

(オプション) ログマネージャーコンポーネントがログを CloudWatch Logs にアップロードした後、ログファイルを削除できます。

デフォルト: false

componentLogsConfiguration

(オプション) コアデバイスのコンポーネント用のログ設定リスト。このリストに記載された各設定内容は、コンポーネントまたはアプリケーションのログ設定を定義します。ログマネージャーコンポーネントは、これらのコンポーネントログを Logs CloudWatch にアップロードします。

各オブジェクトには、次の情報が含まれます:

componentName

このログ設定のコンポーネントまたはアプリケーションの名前。Greengrass コンポーネントの名前または別の値を指定して、このロググループを識別できます。

minimumLogLevel

(オプション) アップロードするログメッセージの最小レベル。この最小レベルは、このコンポーネントのログが特定のJSON形式を使用している場合にのみ適用されます。形式は、 のAWS IoT Greengrass ログ記録モジュールリポジトリにあります GitHub。

こちらにレベル順に一覧表示されているログレベルから選択します。

  • DEBUG

  • INFO

  • WARN

  • ERROR

デフォルト: INFO

diskSpaceLimit

(オプション) このコンポーネントにおけるすべてのログファイルの最大合計サイズ (diskSpaceLimitUnit で指定する単位)。このコンポーネントのログファイルの合計サイズがこの最大合計サイズを超えると、 AWS IoT Greengrass Core ソフトウェアはこのコンポーネントの最も古いログファイルを削除します。

このパラメータは、Greengrass nucleus コンポーネントログサイズ上限パラメータ (totalLogsSizeKB) に関連しています。 AWS IoT Greengrass Core ソフトウェアは、このコンポーネントの最大合計ログサイズとして 2 つの値の最小値を使用します。

diskSpaceLimitUnit

(オプション) diskSpaceLimit の単位。次のオプションから選択します。

  • KB - キロバイト

  • MB - メガバイト

  • GB - ギガバイト

デフォルト: KB

logFileDirectoryPath

このコンポーネントのログファイルが含まれるフォルダへのパス。

Greengrass コンポーネントのログをアップロードするには、 を指定し/greengrass/v2/logs、 を Greengrass ルートフォルダ/greengrass/v2に置き換えます。

logFileRegex

コンポーネントまたはアプリケーションが使用するログファイル名の形式を指定する正規表現。ログマネージャーコンポーネントは、この正規表現を使用して logFileDirectoryPath のフォルダのログファイルを識別します。

Greengrass コンポーネントのログをアップロードするには、ローテーションされたログファイル名と一致する正規表現を指定します。例えば、com.example.HelloWorld\\w*.log が Hello World コンポーネント用にログをアップロードするように指定します。\\w* パターンは、英数字とアンダースコアを含むゼロ以上の単語文字と一致します。この正規表現は、名前のタイムスタンプの有無にかかわらず、ログファイルを照合します。この例では、ログマネージャーは次のログファイルをアップロードします。

  • com.example.HelloWorld.log - Hello World コンポーネントの最新ログファイル。

  • com.example.HelloWorld_2020_12_15_17_0.log - Hello World コンポーネントのより古いログファイル。Greengrass nucleus は、ログファイルにローテーションするタイムスタンプを追加します。

deleteLogFileAfterCloudUpload

(オプション) ログマネージャーコンポーネントがログを CloudWatch Logs にアップロードした後、ログファイルを削除できます。

デフォルト: false

multiLineStartPattern

(オプション) 新しい行のログメッセージが新しいログメッセージであるときに識別する正規表現。正規表現が新しい行と一致しない場合、ログマネージャーコンポーネントは新しい行を前の行のログメッセージに追加します。

デフォルトでは、ログマネージャーコンポーネントは、行が空白文字 (タブまたはスペースなど) で始まるかどうかについてチェックします。そうでない場合、ログマネージャーはその行を新しいログメッセージとして処理します。それ以外の場合、その行を現在のログメッセージに追加します。この動作により、ログマネージャーコンポーネントが複数行 (スタックトレースなど) にまたがるメッセージを分割しないようにします。

periodicUploadIntervalSec

(オプション) ログマネージャーコンポーネントがアップロードする新しいログファイルをチェックする期間 (秒)。

デフォルト: 300 (5 分)

最小: 0.000001 (1 マイクロ秒)

例: 設定マージの更新

次の設定例では、システムログとcom.example.HelloWorldコンポーネントログを Logs CloudWatch にアップロードするように指定しています。

{ "logsUploaderConfiguration": { "systemLogsConfiguration": { "uploadToCloudWatch": "true", "minimumLogLevel": "INFO", "diskSpaceLimit": "10", "diskSpaceLimitUnit": "MB", "deleteLogFileAfterCloudUpload": "false" }, "componentLogsConfiguration": [ { "componentName": "com.example.HelloWorld", "minimumLogLevel": "INFO", "logFileDirectoryPath": "/greengrass/v2/logs", "logFileRegex": "com.example.HelloWorld\\w*.log", "diskSpaceLimit": "20", "diskSpaceLimitUnit": "MB", "deleteLogFileAfterCloudUpload": "false" } ] }, "periodicUploadIntervalSec": "300" }

使用方法

ログマネージャーコンポーネントは、次のロググループとログストリームにアップロードされます。

2.1.0 and later
ロググループ名
/aws/greengrass/componentType/region/componentName

ロググループ名は、次の変数を使用します。

  • componentType - 次のいずれかに該当するコンポーネントのタイプ。

    • GreengrassSystemComponent – このロググループには、Greengrass nucleus JVMと同じ で実行される nucleus およびプラグインコンポーネントのログが含まれます。コンポーネントは Greengrass nucleus の一部です。

    • UserComponent – このロググループには、汎用コンポーネント、Lambda コンポーネント、およびデバイス上のその他のアプリケーションのログが含まれます。コンポーネントは Greengrass nucleus の一部ではありません。

    詳細については、「コンポーネントタイプ」を参照してください。

  • region – コアデバイスが使用する AWS リージョン。

  • componentName - コンポーネントの名前。システムログの場合、この値は System です。

ログストリーム名
/date/thing/thingName

ログストリーム名は次の変数を使用します。

  • date - 2020/12/15 など、ログの日付。ログマネージャーコンポーネントは yyyy/MM/dd 形式を使用します。

  • thingName - コアデバイスの名前。

注記

モノの名前にコロン (:) が含まれている場合、ログマネージャーはコロンをプラス (+) に置き換えます。

2.0.x
ロググループ名
/aws/greengrass/componentType/region/componentName

ロググループ名は、次の変数を使用します。

  • componentType - 次のいずれかに該当するコンポーネントのタイプ。

    • GreengrassSystemComponent - コンポーネントは Greengrass nucleus の一部です。

    • UserComponent - コンポーネントは Greengrass nucleus の一部ではありません。ログマネージャーは、デバイスの Greengrass コンポーネントと他のアプリケーションにこのタイプを使用します。

  • region – コアデバイスが使用する AWS リージョン。

  • componentName - コンポーネントの名前。システムログの場合、この値は System です。

ログストリーム名
/date/deploymentTargets/thingName

ログストリーム名は次の変数を使用します。

  • date - 2020/12/15 など、ログの日付。ログマネージャーコンポーネントは yyyy/MM/dd 形式を使用します。

  • deploymentTargets - デプロイにコンポーネントが含まれるモノ。ログマネージャーコンポーネントは、各ターゲットをスラッシュで区切ります。ローカルデプロイの結果としてコンポーネントがコアデバイスに実行される場合、この値は LOCAL_DEPLOYMENT です。

    MyGreengrassCore という名前のコアデバイスがあり、そのコアデバイスに 2 つのデプロイがある例を見てみます。

    • コアデバイス MyGreengrassCore をターゲットするデプロイ。

    • コアデバイスを含む MyGreengrassCoreGroup という名前のモノグループをターゲットするデプロイ。

    このコアデバイスの deploymentTargetsthing/MyGreengrassCore/thinggroup/MyGreengrassCoreGroup です。

  • thingName - コアデバイスの名前。

ログエントリのフォーマット。

Greengrass nucleus は、文字列またはJSON形式でログファイルを書き込みます。システムログの場合、logging エントリーの format フィールドを設定することでフォーマットを制御します。Greengrass nucleus コンポーネントの設定ファイルに logging エントリが記載されています。詳細については、Greengrass nucleus 設定を参照してください。

テキスト形式は自由形式で、任意の文字列を受け付けます。次のフリート状況サービスメッセージは、文字列形式のロギングの例です:

2023-03-26T18:18:27.271Z [INFO] (pool-1-thread-2) com.aws.greengrass.status.FleetStatusService: fss-status-update-published. Status update published to FSS. {trigger=CADENCE, serviceName=FleetStatusService, currentState=RUNNING}

Greengrass logs CLI コマンドでログを表示する場合や、プログラムでログを操作する場合は、 JSON形式を使用する必要があります。次の例は、JSONシェイプの概要を示しています。

{ "loggerName": <string>, "level": <"DEBUG" | "INFO" | "ERROR" | "TRACE" | "WARN">, "eventType": <string, optional>, "cause": <string, optional>, "contexts": {}, "thread": <string>, "message": <string>, "timestamp": <epoch time> # Needs to be epoch time }

コンポーネントのログの出力を制御するために、minimumLogLevel 設定オプションを使用することができます。このオプションを使用するには、コンポーネントがログエントリを JSON形式で書き込む必要があります。システムログファイルと同じ形式を使用する必要があります。

ローカルログファイル

このコンポーネントは、Greengrass nucleus コンポーネントと同じログファイルを使用します。

Linux
/greengrass/v2/logs/greengrass.log
Windows
C:\greengrass\v2\logs\greengrass.log
このコンポーネントのログを確認するには
  • コアデバイスに次のコマンドを実行して、このコンポーネントのログファイルをリアルタイムに確認します。/greengrass/v2 または を置き換える C:\greengrass\v2 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

変更ログ

次の表は、コンポーネントの各バージョンにおける変更を示します。

バージョン

変更

2.3.8

Greengrass nucleus バージョン 2.13.0 リリース用にバージョンが更新されました。

2.3.7

Greengrass nucleus バージョン 2.12.0 リリース用にバージョンが更新されました。

2.3.6

バグ修正と機能向上
  • 特定のエラーのログレベルを調整します。

2.3.5

改良点

ログのアップロード速度が向上します。

Greengrass nucleus バージョン 2.11.0 のリリース用にバージョンが更新されました。

2.3.4

バグ修正と機能向上
  • periodicUploadIntervalSec パラメータを小数値に設定するためのサポートを追加します。最小値は 1 マイクロ秒です。

  • ログマネージャーがputLogEvents制限を尊重しない問題を修正しました CloudWatch。

2.3.3

Greengrass nucleus バージョン 2.10.0 のリリース用にバージョンが更新されました。

2.3.2

バグ修正と機能向上
  • ログファイルがアップロードされる前に削除されないように、容量管理を改善しました。

  • キャッシュ管理に関する問題を修正しました。

  • マイナーなバグの追加修正と機能向上。

2.3.1

バグ修正と機能向上
  • 複数のアクティブなログファイルを持つファイルグループをターゲットとする が、重複したエントリを にアップロードする問題を修正しました CloudWatch。

  • マイナーなバグの追加修正と機能向上。

2.3.0

注記

ログマネージャー 2.3.0 にアップグレードする場合は、Greengrass nucleus 2.9.1 にアップグレードすることをお勧めします。

新機能

新しいファイルがローテーションされるのを待つことなく、アクティブなログファイルを処理して直接アップロードすることによって、ログの遅延を軽減します。

バグ修正と機能向上
  • 一意の名前を持つファイルをローテーションする際のログローテーションのサポートを改善しました。

  • マイナーなバグの追加修正と機能向上。

2.2.8

Greengrass nucleus バージョン 2.9.0 のリリース用にバージョンが更新されました。

2.2.7

Greengrass nucleus バージョン 2.8.0 のリリース用にバージョンが更新されました。

2.2.6

Greengrass nucleus バージョン 2.7.0 のリリース用にバージョンが更新されました。

2.2.5

Greengrass nucleus バージョン 2.6.0 のリリース用にバージョンが更新されました。

2.2.4

バグ修正と機能向上
  • 無効な設定を処理するときの安定性を向上させます。

  • 追加のマイナー修正と機能向上。

2.2.3

バグ修正と機能向上
  • コンポーネントが再起動またはエラーに直面するときに特定のシナリオで安定性を向上させます。

  • 特定のシナリオで、大きなログメッセージと大きなログファイルがアップロードされない問題を修正します。

  • このコンポーネントが設定リセット更新を処理する際に関する問題を修正しました。

  • null diskSpaceLimit 設定値がコンポーネントのデプロイを妨げる問題を修正します。

2.2.2

バグ修正と機能向上
  • 256 キロバイトを超えるログメッセージのサポートを追加します。ログマネージャーコンポーネントは、これらの大きなログメッセージを、同じログイベントのタイムスタンプを持つ複数のメッセージに分割します。

2.2.1

Greengrass nucleus バージョン 2.5.0 のリリース用にバージョンが更新されました。

2.2.0

新機能
  • componentLogsConfigurationMap 設定パラメータを追加して、コンポーネントのログ設定のマップ形式をサポートします。マップの各 componentName オブジェクトは、コンポーネントまたはアプリケーションのログ設定を定義します。

2.1.3

Greengrass nucleus バージョン 2.4.0 のリリース用にバージョンが更新されました。

2.1.2

Greengrass nucleus バージョン 2.3.0 のリリース用にバージョンが更新されました。

2.1.1

バグ修正と機能向上
  • 特定のケースでシステムログ設定が更新されなかった問題を修正します。

2.1.0

バグ修正と機能向上
  • 標準出力 (stdout) と標準エラー (stderr) で出力する Greengrass コンポーネントに機能する logFileDirectoryPathlogFileRegex にデフォルトを使用します。

  • ログを CloudWatch Logs にアップロードするときに、設定されたネットワークプロキシを介してトラフィックを正しくルーティングします。

  • ログストリーム名でコロン文字 (:) を正しく処理します。 CloudWatch ログログストリーム名はコロンをサポートしていません。

  • ログストリームからモノグループ名を削除して、ログストリーム名を簡素化します。

  • 通常の動作中に出力されるエラーログメッセージを削除します。

2.0.x

当初のバージョン