CODE-417 バッチログ抑制

URL: CODE-417 【バックエンド】定期バッチのログ抑制

修正内容

バッチ結果のログを抑制

CleanupBatchMetadataジョブ を作成いたしました.
毎週月曜日(batch.cleanup-batch-metadata.cron = "0 0 0 * * mon") に定期実行され, 7日前より過去のバッチ結果(batch.cleanup-batch-metadata.cleanup-before-sec) を削除します.

取引に関するバッチ処理のリファクタリング, 修正

  • spring-batchの実装を Chunk モデルから Tasklet モデルによるバッチ処理にリファクタリング
    • バッチ処理の対象件数そこまで多くないや「月末締め処理バッチ」も Tasklet による実装であることを鑑みての判断です
    • ビジネスロジックを BatchDealService に移動し, 再掲載処理に対する単体テストを書きました
  • 自動完了取引の対象を「取引開始時刻」ではなく「最終更新時刻」から7日以上経っているものに変更

バッチ処理の流れに関してご説明いたします.

  1. batch/SchedulesBatches クラス が起点で全てのJobが定期実行されます. 各Jobは現在時刻とバッチ実行間隔を基に重複しないような期間を対象としてバッチ処理が行われます.
  2. 各Jobは batch/XXXBatchConfig クラス で定義され, ただ1つの Tasklet から成ります. TaskletBatchDealService 内の処理を呼びます.
  3. domain/service/BatchDealService では対象取引を変更し, それに伴う通知を作成する処理が含まれています.

お手すきの際にコードレビューをお願いしたく思います.