GreengrassV2のカスタムコンポーネントで、ログに関する設定ができない

0

コンポーネントのレシピを変更し、Manifestsに以下の設定を追記しても、バージョンを作成するとレシピからロギングに関する情報が消えてしまいます。 正しくコンポーネントレシピにログの設定を追加する方法を教えて頂きたいです。 "Logging": { "LoggerName": "YourComponentName", "LogLevel": "INFO", "OutputType": "FILE", "FilePath": "/greengrass/v2/logs/YourComponentName.log" }

質問済み 2ヶ月前54ビュー
2回答
0

申し訳ありませんが、AWS IoT Greengrass V2のカスタムコンポーネントでは、コンポーネントのレシピ内で直接ロギング設定を行うことはできません。代わりに、ログ管理は主にGreengrass nucleusコンポーネントとログマネージャーコンポーネントによって制御されます。

カスタムコンポーネントのログを管理するには、以下の方法を使用することができます:

  1. デフォルトのログ設定: カスタムコンポーネントは、デフォルトで <Greengrassのルートディレクトリ>/v2/logs ディレクトリにログを出力します。ログファイルは通常 ComponentName.log という形式で命名されます。

  2. Greengrass nucleusコンポーネントの設定: Greengrass nucleusコンポーネントの設定を変更することで、ファイルシステムのログ設定(出力ディレクトリ、ログフォーマットなど)を調整できます。

  3. ログマネージャーコンポーネントの使用: ログマネージャーコンポーネントを使用して、CloudWatch Logsへ書き込むログ設定をカスタマイズできます。このコンポーネントを通じて、ログレベル、ファイルサイズ制限、CloudWatchへのアップロードなどを設定できます。

  4. コンポーネントコード内でのログ出力: コンポーネントのコード内で標準出力(stdout)と標準エラー(stderr)にログを出力することができます。これらは自動的にGreengrass nucleusによってキャプチャされ、適切なログファイルに記録されます。

したがって、レシピ内に直接ロギング設定を追加するのではなく、これらの方法を使用してログを管理することをお勧めします。ファイルシステムのログについてはGreengrass nucleusコンポーネントの設定、CloudWatch Logsについてはログマネージャーコンポーネントの設定を変更することで特定のニーズに対応できる可能性があります。

参考資料
Monitor AWS IoT Greengrass logs - AWS IoT Greengrass
Log manager - AWS IoT Greengrass
Greengrass nucleus - AWS IoT Greengrass

profile picture
回答済み 2ヶ月前
AWS
サポートエンジニア
修正済み 2ヶ月前
0

適用しようとしている設定は、Nucleus のログ属性だと思います: https://docs.aws.amazon.com/greengrass/v2/developerguide/greengrass-nucleus-component.html#greengrass-nucleus-component-configuration。必要な値を指定するには、デプロイメントで Nucleus の設定を更新する必要があります。

一般的に、コンポーネント設定の更新については、次のドキュメントを参照してください: https://docs.aws.amazon.com/greengrass/v2/developerguide/update-component-configurations.html。カスタム コンポーネントに独自のログ ソリューションが実装されている場合は、サポートされる可能性のある設定を追加できますが、そうでない場合は、Greengrass は Nucleus 設定の下の設定に従って自動的にログを管理します。

AWS
回答済み 1ヶ月前

ログインしていません。 ログイン 回答を投稿する。

優れた回答とは、質問に明確に答え、建設的なフィードバックを提供し、質問者の専門分野におけるスキルの向上を促すものです。

質問に答えるためのガイドライン

関連するコンテンツ