Skip to content

Commit 87aec83

Browse files
committed
refactor: 재시도를 위한 retryCount 필드 추가
1 parent 0e4a819 commit 87aec83

4 files changed

Lines changed: 13 additions & 6 deletions

File tree

src/main/java/org/scoula/domain/cloudwatch/dto/Common.java

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,4 +11,5 @@ public class Common {
1111
private String memberId;
1212
private String ledgerCode;
1313
private String transactionGroupId;
14+
private Integer retryCount;
1415
}
Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,10 @@
11
package org.scoula.domain.cloudwatch.service;
22

3+
import org.scoula.domain.cloudwatch.dto.LogMessage;
34
import org.springframework.stereotype.Service;
45

56
@Service
67
public interface LogConsumerService {
78

8-
void loggingIntegration(String message) throws Exception;
9+
void loggingIntegration(LogMessage message) throws Exception;
910
}

src/main/java/org/scoula/domain/cloudwatch/serviceImpl/LogConsumerServiceImpl.java

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -29,9 +29,7 @@ public class LogConsumerServiceImpl implements LogConsumerService {
2929
private static final String LOG_GROUP = "Dolfin";
3030

3131
@Override
32-
public void loggingIntegration(String message) throws Exception {
33-
34-
LogMessage logMessage = objectMapper.readValue(message, LogMessage.class);
32+
public void loggingIntegration(LogMessage logMessage) throws Exception {
3533
String logStream = "dolfin-log-stream";
3634
writeToCloudWatch(logMessage, logStream);
3735
}

src/main/java/org/scoula/domain/kafka/listener/KafkaLogListener.java

Lines changed: 9 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,7 @@
11
package org.scoula.domain.kafka.listener;
22

3+
import com.fasterxml.jackson.databind.ObjectMapper;
4+
import org.scoula.domain.cloudwatch.dto.LogMessage;
35
import org.scoula.domain.cloudwatch.service.LogConsumerService;
46
import org.scoula.domain.kafka.producer.KafkaProducer;
57
import org.springframework.kafka.annotation.KafkaListener;
@@ -16,11 +18,14 @@ public class KafkaLogListener {
1618

1719
private final LogConsumerService logConsumerService;
1820
private final KafkaProducer kafkaProducer;
21+
private final ObjectMapper objectMapper = new ObjectMapper();
22+
1923

2024
@KafkaListener(topics = "log-module", groupId = "log-consumer-group")
2125
public void listen(String message, Acknowledgment ack) {
2226
try {
23-
logConsumerService.loggingIntegration(message);
27+
LogMessage logMessage = objectMapper.readValue(message, LogMessage.class);
28+
logConsumerService.loggingIntegration(logMessage);
2429
ack.acknowledge();
2530
}catch (Exception e) {
2631
log.error(e.getMessage());
@@ -32,7 +37,9 @@ public void listen(String message, Acknowledgment ack) {
3237
@KafkaListener(topics = "log-retry", groupId = "log-retry-group")
3338
public void listenRetry(String message, Acknowledgment ack) {
3439
try {
35-
logConsumerService.loggingIntegration(message);
40+
LogMessage logMessage = objectMapper.readValue(message, LogMessage.class);
41+
//todo retry count > 10 have to go DLQ
42+
logConsumerService.loggingIntegration(logMessage);
3643
ack.acknowledge();
3744
}catch (Exception e) {
3845
log.error(e.getMessage());

0 commit comments

Comments
 (0)