Pārlūkot izejas kodu

feat: 添加监控

haha 3 gadi atpakaļ
vecāks
revīzija
e4c0a66ace

+ 6 - 0
seec-oj-server/src/main/java/cn/seecoder/ojserver/rabbitmq/RabbitMQConsumer.java

@@ -8,6 +8,9 @@ import cn.seecoder.ojserver.dao.entity.Commit;
 import cn.seecoder.ojserver.enums.CodeJudgeResultType;
 import cn.seecoder.ojserver.model.dto.CodeJudgeDTO;
 import cn.seecoder.ojserver.service.JudgeService;
+import com.nju.edu.paasMonitorClient.MonitorClient;
+import com.nju.edu.paasMonitorClient.entity.Call;
+import com.nju.edu.paasMonitorCommon.enums.SeecSystem;
 import org.springframework.amqp.rabbit.annotation.Queue;
 import org.springframework.amqp.rabbit.annotation.RabbitHandler;
 import org.springframework.amqp.rabbit.annotation.RabbitListener;
@@ -29,6 +32,8 @@ public class RabbitMQConsumer {
     @RabbitHandler
     @RabbitListener(queuesToDeclare = @Queue("notice_queue"))
     public void process(CodeJudgeDTO codeJudgeDTO) {
+        Call call = MonitorClient.createCall(SeecSystem.CODER,"asyncJudge","processJudge");
+        call.start();
         JudgeResult judgeResult = judgeService.judgeCode(codeJudgeDTO.getProblemId(), codeJudgeDTO.getCodeJudgeVO());
         CodeJudgeResultType message = CodeJudgeResultType.values()[JudgeResultType.ACCEPT.ordinal()];
         for (JudgeResult.Item item : judgeResult.getResultList()) {
@@ -57,6 +62,7 @@ public class RabbitMQConsumer {
         }else{
             throw new CodeJudgeException("找不到commit",103);
         }
+        call.end();
 
     }
 }

+ 6 - 0
seec-oj-server/src/main/java/cn/seecoder/ojserver/service/impl/JudgeServiceImpl.java

@@ -72,6 +72,8 @@ public class JudgeServiceImpl implements JudgeService {
 
     @Override
     public JudgeResult asyncJudgeCode(Integer questionId, CodeJudgeVO codeJudgeVO) {
+        Call call = MonitorClient.createCall(SeecSystem.CODER,"asyncJudge","createCommit");
+        call.start();
         Commit commit = new Commit();
         commit.setUserId(0);
         commit.setProblemId(questionId);
@@ -79,8 +81,12 @@ public class JudgeServiceImpl implements JudgeService {
         commit.setLanguage(codeJudgeVO.getLanguage());
         commit.setCommitTime(new Date());
         commitDAO.save(commit);
+        call.end();
+        Call call1 = MonitorClient.createCall(SeecSystem.CODER,"asyncJudge","commitToMQ");
+        call1.start();
         CodeJudgeDTO codeJudgeDTO = new CodeJudgeDTO(commit.getId(),questionId,codeJudgeVO);
         rabbitTemplate.convertAndSend("notice_queue",codeJudgeDTO);
+        call1.end();
         return null;
     }