diff --git a/persistence-service-v1/persistence-service-processor-v1/src/main/java/com/iqser/red/service/persistence/management/v1/processor/service/AnalysisFlagsCalculationService.java b/persistence-service-v1/persistence-service-processor-v1/src/main/java/com/iqser/red/service/persistence/management/v1/processor/service/AnalysisFlagsCalculationService.java index 2ca216e39..c953a6973 100644 --- a/persistence-service-v1/persistence-service-processor-v1/src/main/java/com/iqser/red/service/persistence/management/v1/processor/service/AnalysisFlagsCalculationService.java +++ b/persistence-service-v1/persistence-service-processor-v1/src/main/java/com/iqser/red/service/persistence/management/v1/processor/service/AnalysisFlagsCalculationService.java @@ -6,6 +6,7 @@ import java.util.Map; import java.util.stream.Collectors; import org.apache.commons.lang3.StringUtils; +import org.springframework.scheduling.annotation.Async; import org.springframework.stereotype.Service; import com.iqser.red.service.persistence.management.v1.processor.entity.annotations.ViewedPageEntity; @@ -18,6 +19,7 @@ import com.iqser.red.service.persistence.service.v1.api.shared.model.analysislog import com.iqser.red.service.persistence.service.v1.api.shared.model.dossiertemplate.dossier.file.WorkflowStatus; import io.micrometer.core.annotation.Timed; +import io.micrometer.observation.annotation.Observed; import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; @@ -32,6 +34,7 @@ public class AnalysisFlagsCalculationService { @Timed("redactmanager_calculateFlags") + @Observed(name = "AnalysisFlagsCalculationService", contextualName = "calculate-flags") public void calculateFlags(String dossierId, String fileId) { long startTime = System.currentTimeMillis(); @@ -104,7 +107,6 @@ public class AnalysisFlagsCalculationService { hasImages = true; } - var viewedPage = entry.getPositions().isEmpty() ? null : viewedPages.get(entry.getPositions().get(0).getPageNumber()); if (file.getWorkflowStatus() != WorkflowStatus.APPROVED && lastChange != null && lastChange.getDateTime() != null && viewedPage != null && viewedPage.isBefore( diff --git a/persistence-service-v1/persistence-service-processor-v1/src/main/java/com/iqser/red/service/persistence/management/v1/processor/service/manualredactions/ManualRedactionMapper.java b/persistence-service-v1/persistence-service-processor-v1/src/main/java/com/iqser/red/service/persistence/management/v1/processor/service/manualredactions/ManualRedactionMapper.java index b8d2a9728..0d850ca14 100644 --- a/persistence-service-v1/persistence-service-processor-v1/src/main/java/com/iqser/red/service/persistence/management/v1/processor/service/manualredactions/ManualRedactionMapper.java +++ b/persistence-service-v1/persistence-service-processor-v1/src/main/java/com/iqser/red/service/persistence/management/v1/processor/service/manualredactions/ManualRedactionMapper.java @@ -32,6 +32,7 @@ import com.iqser.red.service.persistence.service.v1.api.shared.model.manual.Remo import com.iqser.red.service.persistence.service.v1.api.shared.model.manual.ResizeRedactionRequestModel; import com.knecon.fforesight.keycloakcommons.security.KeycloakSecurity; +import io.micrometer.observation.annotation.Observed; import lombok.AccessLevel; import lombok.RequiredArgsConstructor; import lombok.experimental.FieldDefaults; @@ -44,6 +45,7 @@ public class ManualRedactionMapper { EntityLogService entityLogService; + @Observed(name = "ManualRedactionMapper", contextualName = "to-add-redaction-request-list") public List toAddRedactionRequestList(String dossierId, Set addRedactionRequests, Dossier dossier) { return addRedactionRequests.stream() diff --git a/persistence-service-v1/persistence-service-processor-v1/src/main/java/com/iqser/red/service/persistence/management/v1/processor/service/manualredactions/ManualRedactionService.java b/persistence-service-v1/persistence-service-processor-v1/src/main/java/com/iqser/red/service/persistence/management/v1/processor/service/manualredactions/ManualRedactionService.java index fde6b1509..d480a5b8b 100644 --- a/persistence-service-v1/persistence-service-processor-v1/src/main/java/com/iqser/red/service/persistence/management/v1/processor/service/manualredactions/ManualRedactionService.java +++ b/persistence-service-v1/persistence-service-processor-v1/src/main/java/com/iqser/red/service/persistence/management/v1/processor/service/manualredactions/ManualRedactionService.java @@ -43,6 +43,7 @@ import com.iqser.red.service.persistence.service.v1.api.shared.model.annotations import com.iqser.red.service.persistence.service.v1.api.shared.model.annotations.entitymapped.ManualResizeRedaction; import com.knecon.fforesight.databasetenantcommons.providers.utils.MagicConverter; +import io.micrometer.observation.annotation.Observed; import lombok.AccessLevel; import lombok.RequiredArgsConstructor; import lombok.experimental.FieldDefaults; @@ -72,6 +73,7 @@ public class ManualRedactionService { @Transactional + @Observed(name = "ManualRedactionService", contextualName = "add-manual-redaction") public List addAddRedaction(String dossierId, String fileId, List addRedactionRequests) { var response = new ArrayList(); @@ -111,11 +113,12 @@ public class ManualRedactionService { .entriesToAdd(MagicConverter.convert(manualRedactionEntryEntities, ManualRedactionEntry.class)) .build(); entityLogMergeService.sendToAnalyseQueue(fileId, dossierEntity, fileStatusService.getStatus(fileId), manualRedactions); + } else { + reprocess(dossierId, fileId); } analysisFlagsCalculationService.calculateFlags(dossierId, fileId); - reprocess(dossierId, fileId); return response; } @@ -249,6 +252,7 @@ public class ManualRedactionService { @Transactional + @Observed(name = "ManualRedactionService", contextualName = "add-manual-redaction") public List addResizeRedaction(String dossierId, String fileId, List resizeRedactionRequests) { List response = new ArrayList<>(); @@ -288,14 +292,12 @@ public class ManualRedactionService { .resizeRedactions(MagicConverter.convert(manualResizeRedactionEntities, ManualResizeRedaction.class)) .build(); entityLogMergeService.sendToAnalyseQueue(fileId, dossierPersistenceService.getAndValidateDossier(dossierId), fileStatusService.getStatus(fileId), manualRedactions); + } else { + reprocess(dossierId, fileId); } analysisFlagsCalculationService.calculateFlags(dossierId, fileId); - reprocess(dossierId, fileId); - - analysisFlagsCalculationService.calculateFlags(dossierId, fileId); - return response; } diff --git a/persistence-service-v1/persistence-service-processor-v1/src/main/java/com/iqser/red/service/persistence/management/v1/processor/service/persistence/AuditPersistenceService.java b/persistence-service-v1/persistence-service-processor-v1/src/main/java/com/iqser/red/service/persistence/management/v1/processor/service/persistence/AuditPersistenceService.java index 840ff9c6e..574303499 100644 --- a/persistence-service-v1/persistence-service-processor-v1/src/main/java/com/iqser/red/service/persistence/management/v1/processor/service/persistence/AuditPersistenceService.java +++ b/persistence-service-v1/persistence-service-processor-v1/src/main/java/com/iqser/red/service/persistence/management/v1/processor/service/persistence/AuditPersistenceService.java @@ -9,6 +9,7 @@ import java.time.OffsetDateTime; import java.time.temporal.ChronoUnit; import java.util.List; +import io.micrometer.observation.annotation.Observed; import jakarta.transaction.Transactional; import org.springframework.beans.BeanUtils; @@ -34,6 +35,7 @@ public class AuditPersistenceService { private final AuditRepository auditRepository; + @Observed(name = "AuditPersistenceService", contextualName = "audit") public void audit(AuditRequest auditRequest) { insertRecord(auditRequest);