Fix tests; Added extra logs

This commit is contained in:
Mikhail Trofimov 2025-09-23 14:56:00 +03:00
parent 21bd541243
commit a633a0d605
6 changed files with 26 additions and 22 deletions

View file

@ -18,7 +18,7 @@ public class MapperTimingAspect {
} finally { } finally {
long tookMs = (System.nanoTime() - start) / 1_000_000; long tookMs = (System.nanoTime() - start) / 1_000_000;
String method = pjp.getSignature().toShortString(); String method = pjp.getSignature().toShortString();
if (tookMs > 500) { if (tookMs > 1000) {
log.warn("Slow mapper call {} took {} ms", method, tookMs); log.warn("Slow mapper call {} took {} ms", method, tookMs);
} else { } else {
log.debug("Mapper call {} took {} ms", method, tookMs); log.debug("Mapper call {} took {} ms", method, tookMs);

View file

@ -55,7 +55,7 @@ public class GlobalExceptionHandler {
commonError.setErrorText(errorText); commonError.setErrorText(errorText);
if (ex instanceof SignalClientException) { if (ex instanceof SignalClientException) {
log.warn(errorText); log.warn("Response error: {}", errorText);
return new ResponseEntity<>(commonError, headers, HttpStatus.BAD_REQUEST); return new ResponseEntity<>(commonError, headers, HttpStatus.BAD_REQUEST);
} else { } else {
Exception cause = ((SignalServerException) ex).getCause(); Exception cause = ((SignalServerException) ex).getCause();

View file

@ -131,7 +131,9 @@ public class SignalService {
if (!filteredItems.isEmpty()) { if (!filteredItems.isEmpty()) {
Map<Integer, PhoneFidMap> fidsMapByBatch = phoneService.defineFidByPhone(filteredItems); Map<Integer, PhoneFidMap> fidsMapByBatch = phoneService.defineFidByPhone(filteredItems);
if (fidsMapByBatch.size() + phonesByFidToProcessing.size() < batchSize) { log.debug("Actual fids size by phone's batch: {}", fidsMapByBatch.size());
if (fidsMapByBatch.size() + phonesByFidToProcessing.size() <= batchSize) {
phonesByFidToProcessing.putAll(fidsMapByBatch); phonesByFidToProcessing.putAll(fidsMapByBatch);
} else { } else {
boolean fidsFound = updateFlags(phonesByFidToProcessing, packageId); boolean fidsFound = updateFlags(phonesByFidToProcessing, packageId);
@ -161,7 +163,7 @@ public class SignalService {
*/ */
// TODO Добавить отдельный метод. Если не нашелся фид, надо обновить в базе fid = null и флаги = null calculated_at=now() // TODO Добавить отдельный метод. Если не нашелся фид, надо обновить в базе fid = null и флаги = null calculated_at=now()
public boolean updateFlags(Map<Integer, PhoneFidMap> fidsMap, Integer packageId) { public boolean updateFlags(Map<Integer, PhoneFidMap> fidsMap, Integer packageId) {
log.info("Start calculating fids and flags for subjects batch. PackageId: {}", packageId); log.info("Start calculating flags for subjects batch. PackageId: {}", packageId);
Map<Integer, FlagsService.FlagsData> flagsDataMap = flagsService.findFlags(fidsMap.keySet().stream().toList()); Map<Integer, FlagsService.FlagsData> flagsDataMap = flagsService.findFlags(fidsMap.keySet().stream().toList());
for (Map.Entry<Integer, FlagsService.FlagsData> entry : flagsDataMap.entrySet()) { for (Map.Entry<Integer, FlagsService.FlagsData> entry : flagsDataMap.entrySet()) {
Integer fid = entry.getKey(); Integer fid = entry.getKey();
@ -175,7 +177,7 @@ public class SignalService {
phoneFidMapMapper.updatePhoneFid(phoneFidMap); phoneFidMapMapper.updatePhoneFid(phoneFidMap);
} }
log.info("Finish calculating fids and flags for subjects. PackageId: {}. Batch size: {}", packageId, fidsMap.size()); log.info("Finish calculating flags for subjects. PackageId: {}. Batch size: {}", packageId, fidsMap.size());
return !fidsMap.isEmpty(); return !fidsMap.isEmpty();
} }

View file

@ -63,12 +63,12 @@
</appender> </appender>
<!--SQL запросы и результаты их выполнения--> <!--SQL запросы и результаты их выполнения-->
<logger name="ru.nbch.credit_tracker.mapper" level="INFO" additivity="false"> <logger name="ru.nbch.credit_tracker.mapper" level="DEBUG" additivity="false">
<appender-ref ref="FILE"/> <appender-ref ref="FILE"/>
<appender-ref ref="FILE-JSON"/> <appender-ref ref="FILE-JSON"/>
</logger> </logger>
<logger name="ru.nbch.credit_tracker.service" level="INFO" additivity="false"> <logger name="ru.nbch.credit_tracker.service" level="DEBUG" additivity="false">
<appender-ref ref="FILE"/> <appender-ref ref="FILE"/>
<appender-ref ref="FILE-JSON"/> <appender-ref ref="FILE-JSON"/>
<appender-ref ref="CONSOLE"/> <appender-ref ref="CONSOLE"/>

View file

@ -1,20 +1,22 @@
package ru.nbch.credit_tracker.service; package ru.nbch.credit_tracker.service;
import org.junit.jupiter.api.Assertions;
import org.junit.jupiter.api.Test;
import org.junit.jupiter.api.extension.ExtendWith;
import org.mockito.Mock;
import org.mockito.Mockito;
import org.mockito.junit.jupiter.MockitoExtension;
import ru.nbch.credit_tracker.entities.dto.PhoneFidMap;
import ru.nbch.credit_tracker.mapper.indic.PhoneMapper;
import ru.nbch.credit_tracker.service.indic.PhoneService;
import java.time.LocalDate; import java.time.LocalDate;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.Comparator; import java.util.Comparator;
import java.util.List; import java.util.List;
import java.util.Map; import java.util.Map;
import org.junit.jupiter.api.Assertions;
import org.junit.jupiter.api.Test;
import org.junit.jupiter.api.extension.ExtendWith;
import org.mockito.Mock;
import org.mockito.Mockito;
import static org.mockito.Mockito.when; import static org.mockito.Mockito.when;
import org.mockito.junit.jupiter.MockitoExtension;
import ru.nbch.credit_tracker.entities.dto.PhoneFidMap;
import ru.nbch.credit_tracker.mapper.indic.PhoneMapper;
import ru.nbch.credit_tracker.service.indic.PhoneService;
@ExtendWith(MockitoExtension.class) @ExtendWith(MockitoExtension.class)
public class PhoneServiceTest { public class PhoneServiceTest {
@ -43,10 +45,10 @@ public class PhoneServiceTest {
private final List<PhoneService.FidsData> fidsDataWithEqualSinceDt = new ArrayList<>( private final List<PhoneService.FidsData> fidsDataWithEqualSinceDt = new ArrayList<>(
List.of( List.of(
new PhoneService.FidsData(123, "1111", LocalDate.of(2025, 9, 10)), new PhoneService.FidsData(123, "91111", LocalDate.of(2025, 9, 10)),
new PhoneService.FidsData(124, "1111", LocalDate.of(2025, 9, 10)), new PhoneService.FidsData(124, "91111", LocalDate.of(2025, 9, 10)),
new PhoneService.FidsData(125, "1112", LocalDate.of(2024, 10, 10)), new PhoneService.FidsData(125, "91112", LocalDate.of(2024, 10, 10)),
new PhoneService.FidsData(126, "1114", LocalDate.of(2024, 10, 11)) new PhoneService.FidsData(126, "91114", LocalDate.of(2024, 10, 11))
) )
); );

View file

@ -69,12 +69,12 @@ public class ValidationUtilTest {
Arguments.of( Arguments.of(
"/monitoring_request/invalid_phone_request.zip", "/monitoring_request/invalid_phone_request.zip",
SignalError.ERROR_003, SignalError.ERROR_003,
Collections.emptyList().toArray(new Object[0]) new Object[]{"abc123"}
), ),
Arguments.of( Arguments.of(
"/monitoring_request/invalid_id_request.zip", "/monitoring_request/invalid_id_request.zip",
SignalError.ERROR_010, SignalError.ERROR_010,
Collections.emptyList().toArray(new Object[0]) new Object[]{"#####"}
) )
); );
} }