LoginSignup
2
0

More than 1 year has passed since last update.

Greengrass V1でCloudWatchロググループが作られない問題への対応

Posted at

Greengrass V1のトラブルシュートログです。ググっても情報全く出なかったので書いておきます。

事象

Greengrassの設定で以下のようにログをCloudWatch Logsに飛ばすように設定しているのですが、一部のデバイスからログが飛んでいないことに気付きました。

image.png

調査

以下のログに原因らしきものを見つけました。

sudo tail -f /greengrass/ggc/var/log/system/localwatch/localwatch.log

メッセージを読んでみるとIAMロールが上手くAssumeできてないようです。

[2022-05-25T15:00:42.882+01:00][WARN]-TES responded with status code: 403 and body: {
"Message" : "Not authorized to perform assume role"
}
[2022-05-25T15:00:42.882+01:00][WARN]-failed to send to AWS Cloudwatch {"errorString": "UnknownErrorOccurred: unable to deal with the exception, logGroupName: /aws/greengrass/Lambda/ap-northeast-1/123456789012/function, logStreamName:2022/05/25/xxxxxx, requestId: [437eb142-c933-4000-7847-980e043f24c5], error: TES responded with status code: 403 and body: {\n "Message" : "Not authorized to perform assume role"\n}, retry count: 0\ncaused by: TES responded with status code: 403 and body: {\n "Message" : "Not authorized to perform assume role"\n}"}

対応

サービスロール確認

そもそもGreengrassのサービスロールが作成されていることを以下を参考に確認します。通常サービスロールは Greengrass_ServiceRole という名前です。

上記のエラーについてはサービスロールを確認するように公式にも書いてあります。

サービスロールは存在するがAssumeできてない

この場合は以下の対応で私の場合は上手くいきました。

  • Greengrassグループのロール設定を削除してデプロイ
  • Greengrass_ServiceRoleを再度設定してデプロイ

image.png

デプロイ後に上記の localwatch.log ログを見ていると、CloudWatch Logグループを作成する処理が流れるのが確認できます。

2
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
0