Browse Source

history dup key error fix

shjung 2 years ago
parent
commit
7745f5ad12

+ 30 - 5
src/main/java/com/tsi/api/server/service/TscSsipApiService.java

@@ -9,12 +9,14 @@ import com.tsi.api.server.mybatis.vo.AbstractDbmsVo;
 import com.tsi.api.server.mybatis.vo.AlarmOccrVo;
 import com.tsi.api.server.repository.TsiAlarmManager;
 import com.tsi.api.server.vo.*;
+import lombok.extern.slf4j.Slf4j;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
 
 import java.text.SimpleDateFormat;
 import java.util.*;
 
+@Slf4j
 @Service
 @Transactional(rollbackFor = {Exception.class})
 public class TscSsipApiService {
@@ -126,6 +128,7 @@ public class TscSsipApiService {
     }
 
     public int insertInvokeHs(ApiInvokeVo invokeVo, boolean isAlarm) {
+        int result = 0;
         Date date = new Date();
         SimpleDateFormat sdf = new java.text.SimpleDateFormat("yyyy/MM/dd HH:mm:ss");
         sdf.setTimeZone(java.util.TimeZone.getTimeZone("GMT+9"));
@@ -145,16 +148,38 @@ public class TscSsipApiService {
                 alarm.setAlarmCode(alarmCode);
                 alarm.setAlarmTarget(invokeVo.getApiId());
                 alarm.setAlarmValue(invokeVo.getApiToken() + ", " + String.valueOf(invokeVo.getError()));
-                tsiDatabaseMapper.insertAlarmOccrHs(alarm);
+                try {
+                    result = tsiDatabaseMapper.insertAlarmOccrHs(alarm);
+                } catch (Exception e) {
+                    log.error("insertAlarmOccrHs: {}, {}", alarm, e.getMessage());
+                }
             }
         }
-        return tscSsipApiMapper.insertInvokeHs(invokeVo);
+        try {
+            // 같은 곳에서 1초이내에 요청하는 경우 이력 Dup Key Error 발생(20221005)
+            result = tscSsipApiMapper.insertInvokeHs(invokeVo);
+        } catch(Exception e) {
+            log.error("insertAlarmOccrHs: {}, {}", invokeVo, e.getMessage());
+        }
+        return result;
     }
 
     public int updateSystemInfo(SystemStatusDto info){
-        return tscSsipApiMapper.insertSystemInfo(info);
+        int result = 0;
+        try {
+            tscSsipApiMapper.insertSystemInfo(info);
+        } catch(Exception e) {
+            log.error("insertSystemInfo: {}, {}", info, e.getMessage());
+        }
+        return result;
     }
-    public int insertSystemStatusHs(SystemStatusVo info){
-        return tscSsipApiMapper.insertSystemStatusHs(info);
+    public int insertSystemStatusHs(SystemStatusVo info) {
+        int result = 0;
+        try {
+            result = tscSsipApiMapper.insertSystemStatusHs(info);
+        } catch (Exception e) {
+            log.error("insertSystemStatusHs: {}, {}", info, e.getMessage());
+        }
+        return result;
     }
 }

BIN
tsi-api-server-0.0.1-20221005.jar