From 0cc9c389210ff0fee1956992e9ec644c26c37fc6 Mon Sep 17 00:00:00 2001 From: JuHyun419 Date: Sat, 10 Sep 2022 15:51:19 +0900 Subject: [PATCH] =?UTF-8?q?[#140]=20refactor:=20SlackService=20DI=EB=A1=9C?= =?UTF-8?q?=20=EB=B3=80=EA=B2=BD,=20Job=20Success=20=EC=8B=9C=20=EC=8A=AC?= =?UTF-8?q?=EB=9E=99=20=EC=95=8C=EB=A6=BC=20=EC=B6=94=EA=B0=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../yapp/web2/batch/job/JobCompletionListener.kt | 15 +++++++++++---- 1 file changed, 11 insertions(+), 4 deletions(-) diff --git a/src/main/kotlin/com/yapp/web2/batch/job/JobCompletionListener.kt b/src/main/kotlin/com/yapp/web2/batch/job/JobCompletionListener.kt index 17c9728e..4d4b6e7b 100644 --- a/src/main/kotlin/com/yapp/web2/batch/job/JobCompletionListener.kt +++ b/src/main/kotlin/com/yapp/web2/batch/job/JobCompletionListener.kt @@ -1,6 +1,6 @@ package com.yapp.web2.batch.job -import com.yapp.web2.infra.slack.SlackServiceImpl +import com.yapp.web2.infra.slack.SlackService import org.slf4j.LoggerFactory import org.springframework.batch.core.BatchStatus import org.springframework.batch.core.JobExecution @@ -9,20 +9,27 @@ import org.springframework.stereotype.Component import java.util.stream.Collectors @Component -class JobCompletionListener : JobExecutionListenerSupport() { +class JobCompletionListener( + private val slackApi: SlackService +) : JobExecutionListenerSupport() { private val log = LoggerFactory.getLogger(javaClass) - private val slackApi: SlackServiceImpl = SlackServiceImpl() override fun afterJob(jobExecution: JobExecution) { val jobStatus = jobExecution.status log.info("Job {} - {}", jobStatus, jobExecution.jobInstance.jobName) + if (jobStatus == BatchStatus.COMPLETED) { + slackApi.sendSlackAlarm( + "*`${jobExecution.jobInstance.jobName}`* - executed" + ) + } + if (jobStatus != BatchStatus.COMPLETED) { val errorMessage = String.format( "*`Batch Error`* - %s", getErrorMessage(jobExecution).replace("\"", "") ) - slackApi.sendMessage(errorMessage) + slackApi.sendSlackAlarm(errorMessage) } }