0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

CloudWatchLogsに「AWS以外のサーバ環境」からは書き込みが出来て「AWS Fargate」からは書き込みが出来ない時の対応

Posted at

CloudWatch AgentAWS SDK を使用して**CloudWatch Logs**に書き込みをする際の話になります。

**ローカルのDocker環境さくらサーバなどでは動作してもAWS Fargate**では動作しなくて困ることがあるかもしれません。

上記でロググループが存在しない際に**CreateLogGroup**で権限エラーと表示される場合、権限&ポリシー設定になります。

**IAM**でログ関係の権限を全て与えているから問題が無いと勘違いをされている方もいます。
※AWSをメインで対応している会社でも勘違いをしている方がいました。

###VPCエンドポイントのポリシーを疑うと解決するかもしれません。

■CloudWatch Agent

VPCのポリシーに下記権限を与えれば、基本的には問題が無いと思います。

# ロググループの作成
CreateLogGroup
# ログストリームの作成
CreateLogStream
# ログの書込
PutLogEvents

# ※ログの自動削除を行う場合、削除の権限が必要になるかと思います

■AWS SDK(CloudWatch)

VPCのポリシーに下記権限を与えれば、基本的には問題が無いと思います。

※ PHPの場合、**maxbanton/cwh/src/Handler/CloudWatch.php**を参照

# ロググループの作成
CreateLogGroup
# ログストリームの作成
CreateLogStream
# ログの書込
PutLogEvents

# ロググループに「期限」を設定する場合に必要
# ※指定のロググループが存在しない場合のみ処理が実行されます
PutRetentionPolicy
# ロググループの一覧を取得
# ※指定のロググループの存在を確認する際に使用
DescribeLogGroups
# ログストリームの一覧を取得
# ※指定のログストリームの存在を確認する際に使用
DescribeLogStreams
# タグを登録
# ※指定のタグをロググループに登録する際に使用
# ※タグの指定が無ければ不要
TagLogGroup

■参照

0
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
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?