継続は力なり

タイトル通り定期的な更新を心掛けるブログです。

AWS CLI で cron イベントのあるイベント名と cron 詳細を抽出する

タダです.

EvnetBridge の cron で設定しているイベントを洗い出したいと思って,AWS CLI を使ってやってみたので備忘録でまとめます.

試したコマンド

EventBridge に設定してるイベントは list-rules で確認できるため,このコマンドを使いました.加えて cron が設定されているものを確認したいため --query オプションや jq を使ったコマンド例をまとめます.

--query オプションを使った場合

$ aws events list-rules --query 'Rules[*].[Name, ScheduleExpression]' | grep -v null
[
    [
        "5minexecute",
        "cron(0/3 * * * ? *)"
    ],
    [
        "EC2-Start-Evnet",
        "cron(55 6 * * ? *)"
    ],
    [
        "EC2-Stop-Events",
        "cron(48 6 * * ? *)"
    ],
~中略~
    [
        "MailAtLogin"
    ],
    [
        "lambda_sample",
        "rate(5 minutes)"
    ]
]

jq を使った場合

aws events list-rules | jq -r '.Rules[] | .Name, .ScheduleExpression' | grep -v null
5minexecute
cron(0/3 * * * ? *)
cron(0 0 * * ? *)
EC2-Start-Evnet
cron(55 6 * * ? *)
EC2-Stop-Events
cron(48 6 * * ? *)
~中略~
MailAtLogin
lambda_sample
rate(5 minutes)

個人的に jq でやったほうが抽出後のイベント名と cron 詳細を分別するのに早そうだなと思い,jq を使って分別しました.

まとめ

EvnetBridge の cron で設定しているイベントを洗い出したいと思って試したコマンドをまとめました.