🦁
【API Gateway】CloudWatch Logsを有効化する
はじめに
API GatewayではCloudWatch Logsはデフォルトでは有効化になっていません。
有効化するためには設定をする必要があります。
今回はその設定方法をご紹介したいと思います。
IAMロールの作成
IAMポリシーの作成
まずAPI gatewayがCloudWatch Logsへ書き込めるよう、ポリシーを作成します。
今回はAWS管理ポリシーのAmazonAPIGatewayPushToCloudWatchLogs
を使用します。
IAMロールの作成
信頼されたエンティティを選択
で「AWS のサービス」を、ユースケース
では「API Gateway」を選択しましょう。
API Gatewayでの設定
IAMロールの指定
次にAPI Gatewayで設定していきます。
まず、下記の画像の設定
を開きます。
CloudWatch ログのロール ARN
で先ほど作成したIAMロールのARNを入力しましょう。
ログを有効化
続いてログを取集したいAPIを選択し、ステージ画面を開き、下記画像の編集
を開きます。
ログ収集の種類を選択します。
これでログが有効化になりました。
では、確認をしていきます。
確認
CloudWatchのロググループにいき、下記のような命名でロググループが作成されているはずです。
API-Gateway-Execution-Logs_{APIのID}/{ステージ名}
注意点
IAMロールを設定せずに、ログを有効化するとCloudWatch Logs role ARN must be set in account settings to enable logging
というエラーがでます。
適切なIAMロールを設定しましょう。
Discussion