5.1 ログについて

Greengrassのログをデバイス上で確認したい

セットアップスクリプトではデフォルトで/greengrassにGreengrassをセットアップします。インストール先を変更していた場合は、以降のパスは実際にインストールしたパスと置き換えてください。

Greengrassは起動すると、/greengrass/ggc/var/log/system/の中にログを出力します。代表的なものをここでは紹介します。説明していないログについては、こちらのトラブルシューティングのページを参照してください。

システムログ

以下のコマンドで、Greengrassのデーモンが実行する際のログを確認することが出来ます。Greengrassがおかしいと思った時はまずこのログを確認します。

sudo tail -F /greengrass/ggc/var/log/system/runtime.log

ルーティングログ

以下のコマンドで、Greengrassのサブスクリプションで指定したルーティングの状況について確認することが出来ます。

sudo tail -F /greengrass/ggc/var/log/system/GGConnManager.log

Lambdaのログ

Lambdaのログは/greengrass/ggc/var/log/user/の中の出力されます。今回デプロイしたLambdaのログを見たい場合は以下のコマンドでパスを調べます。

sudo find /greengrass/ggc/var/log/user -type f -name DataChecker.log

検索されたファイルを sudo tail -F で見ます。

sudo tail -F /greengrass/ggc/var/log/user/ap-northeast-1/1234567890/DataChecker.log

Greengrassのログ出力レベルを変更したい

AWS IoT Coreのマネージメントコンソールで、Greengrassグループを開き、左側のメニューで設定を開くと、Greengrassの設定を見ることが出来ます。下の方にスクロールするとログのセクションがあります。

Greengrass

CloudWatch Logsへログを出力する設定も同様に行うことができます。 その場合にはCloud Watch Logsへの書き込み権限がGreengrass Groupに必要です。 Greengrass GroupへAWSへのアクセス権限を付与するためには、IAMロールをGreengrass Groupへ紐づけることで可能です。 このGreengrass Groupの設定画面から簡単にロールを紐づけることが可能です。

セットアップのスクリプトだとデフォルトでINFOレベルで出力しますが、実際の環境に合わせてログレベルを調整しましょう。今回は、エラーレベルに変更して、保存を選択します。反映するには、デプロイする必要があるので、上部のアクション > デプロイでデプロイします。

しばらくして、Cloud9からログを参照すると、出力される頻度が変わるのが確認できます。