Upgrade to Pro — share decks privately, control downloads, hide ads and more …

バッチ処理を監視したいだけなんだが…

Avatar for yjszk yjszk
April 24, 2025
2k

 バッチ処理を監視したいだけなんだが…

Avatar for yjszk

yjszk

April 24, 2025
Tweet

Transcript

  1. 0. 自己紹介 Yuji Suzuki(@yjszk666) Copyright © Livesense Inc. • 仕事:インフラグループでSRE的な動き

    ◦ 主催勉強会:yabaibuki.dev ↑このままwebサイトになってます↑ • 略歴 ◦ 無内定卒業→Excel職⼈→リブセンス ◦ ずっとSIで2年前からWeb系きた • 趣味:公営賭博、地⽅競⾺場は全踏破 ◦ ←先週⾏った霧島神宮
  2. • バッチの実⾏時間 • バッチの実⾏結果 ◦ 成功 / 失敗 / 実⾏されなかったこと

    • (その他失敗時にログがすぐに⾒れるとなお良い) 取りたい情報は… 1. バッチ監視で見たいこと Copyright © Livesense Inc.
  3. • バッチの実⾏時間 • バッチの実⾏結果 ◦ 成功 / 失敗 / 実⾏されなかったこと

    • (その他失敗時にログがすぐに⾒れるとなお良い) 取りたい情報は… 1. バッチ監視で見たいこと Copyright © Livesense Inc. cronitorというSaaSを使っている
  4. 2.バッチ基盤の変容と監視 メインがcrontab + cronitorだった。イメージとしては以下。 crontab -eで編集という伝統的な⽅法でやっていた。 ※⼀部Whenever/Rundeckも使っていた #batch 1 10

    0 * * * cronitor exec job_code /hoge/batch.sh 10 0 * * * cronitor exec job_code /hoge/batch.sh 10 0 * * * cronitor exec job_code /hoge/batch.sh 10 0 * * * cronitor exec job_code /hoge/batch.sh 10 0 * * * cronitor exec job_code /hoge/batch.sh # 10 0 * * * cronitor exec job_code /hoge/batch.sh 10 0 * * * cronitor exec job_code /hoge/batch.sh 10 0 * * * cronitor exec job_code /hoge/batch.sh 10 0 * * * cronitor exec job_code /hoge/batch.sh 10 0 * * * cronitor exec job_code /hoge/batch.sh 10 0 * * * cronitor exec job_code /hoge/batch.sh オンプレ時代 Copyright © Livesense Inc.
  5. 2.バッチ基盤の変容と監視 最初はEventBridge Scheduler + ECS Run Taskに置換した たまに「Capacity is unavailable

    at this time」で実⾏されないことがある AWS化 - ECS Run Task Copyright © Livesense Inc.
  6. 3.AWSだけで監視できるか? EventBridgeのメトリクスを監視(み)る Copyright © Livesense Inc. • 「実⾏されなかった場合」の監視としてユースケースとして2つ考える ◦ 1.

    ターゲットを呼び出しているものの、ターゲットの API (StartExecution APIを想定) がエラーを返す等で呼び出しに失敗している ◦ 2. EventBridge Scheduler がターゲットを呼び出していない
  7. 3.AWSだけで監視できるか? EventBridgeのメトリクスを監視(み)る Copyright © Livesense Inc. • InvocationDroppedCount ◦ 最初のターゲットの呼び出しが失敗し、その後の再試⾏も全て失敗した

    場合に報告されるメトリクス ◦ 1に使えそう • InvocationAttemptCount ◦ 呼び出しのたびに発⽣するメトリクス、1以外であれば実⾏されてないと 判断できる、クォータに近づいたのを察するためにあると書いてある ◦ 2に使えそう https://docs.aws.amazon.com/ja_jp/scheduler/latest/UserGuide/monitoring-cloudwatch.html