Amazon EventBridgeスケジューラーの実行ログを確認する
Amazon EventBridge スケジューラでEC2インスタンスの自動停止を設定しましたが、時間になってもEC2が停止しませんでした。
EventBridge画面内にログが存在しなそうなので、スケジューラーが動かなかったのか、動いた結果何らかの原因で処理が失敗したのかわかりませんでした。
調べたところ、AWS CloudTrailで結果を確認できたので、その記録です。
EventBridge画面内にログが存在しなそうなので、スケジューラーが動かなかったのか、動いた結果何らかの原因で処理が失敗したのかわかりませんでした。
調べたところ、AWS CloudTrailで結果を確認できたので、その記録です。
以下、動かなかった処理です。

19時に起動

Amazon EC2のStopInstancesを呼び出し
CloudTrailで結果を見てみます。19:00にStopInstancesのイベント履歴が記録されていました。

エラーコード
Client.OperationNotPermitted
とあります。

画面下の方をみると、「”errorMessage”: “The instance ‘i-02cdb071406ea52b1’ may not be stopped. Modify its ‘disableApiStop’ instance attribute and try ag」とエラーメッセージが出力されていました。
この場合、EC2インスタンスの停止保護が有効になっているため、スケジューラーが停止できなかったという原因でした。
この場合、EC2インスタンスの停止保護が有効になっているため、スケジューラーが停止できなかったという原因でした。
ということで、停止保護を解除して無事に停止できました。
