From 50c2d4ffdc7bd6a67468ab0499ae0bca4bc2b02f Mon Sep 17 00:00:00 2001 From: deiflaender Date: Mon, 28 Mar 2022 09:26:25 +0200 Subject: [PATCH] Added log entries --- .../redaction/service/AnalyzeService.java | 25 ++++++++++++++++++- .../redaction/service/DictionaryService.java | 5 ++++ 2 files changed, 29 insertions(+), 1 deletion(-) diff --git a/redaction-service-v1/redaction-service-server-v1/src/main/java/com/iqser/red/service/redaction/v1/server/redaction/service/AnalyzeService.java b/redaction-service-v1/redaction-service-server-v1/src/main/java/com/iqser/red/service/redaction/v1/server/redaction/service/AnalyzeService.java index 70059b16..ba6d0d3e 100644 --- a/redaction-service-v1/redaction-service-server-v1/src/main/java/com/iqser/red/service/redaction/v1/server/redaction/service/AnalyzeService.java +++ b/redaction-service-v1/redaction-service-server-v1/src/main/java/com/iqser/red/service/redaction/v1/server/redaction/service/AnalyzeService.java @@ -123,8 +123,13 @@ public class AnalyzeService { long startTime = System.currentTimeMillis(); + long redactionLogStartTime = System.currentTimeMillis(); var redactionLog = redactionStorageService.getRedactionLog(analyzeRequest.getDossierId(), analyzeRequest.getFileId()); + log.info("Getting redactionLog took: {}", System.currentTimeMillis() - redactionLogStartTime); + + long textStartTime = System.currentTimeMillis(); var text = redactionStorageService.getText(analyzeRequest.getDossierId(), analyzeRequest.getFileId()); + log.info("Getting text took: {}", System.currentTimeMillis() - textStartTime); // not yet ready for reanalysis if (redactionLog == null || text == null || text.getNumberOfPages() == 0) { @@ -133,38 +138,56 @@ public class AnalyzeService { DictionaryIncrement dictionaryIncrement = dictionaryService.getDictionaryIncrements(analyzeRequest.getDossierTemplateId(), new DictionaryVersion(redactionLog.getDictionaryVersion(), redactionLog.getDossierDictionaryVersion()), analyzeRequest.getDossierId()); + long sectionsToReanalyseStartTime = System.currentTimeMillis(); Set sectionsToReanalyse = !analyzeRequest.getSectionsToReanalyse() .isEmpty() ? analyzeRequest.getSectionsToReanalyse() : findSectionsToReanalyse(dictionaryIncrement, redactionLog, text, analyzeRequest); + log.info("Getting sectionsToReanalyse took: {}", System.currentTimeMillis() - sectionsToReanalyseStartTime); if (sectionsToReanalyse.isEmpty()) { return finalizeAnalysis(analyzeRequest, startTime, redactionLog, text, dictionaryIncrement.getDictionaryVersion(), true); } + long nerStartTime = System.currentTimeMillis(); NerEntities nerEntities; if (redactionServiceSettings.isNerServiceEnabled()) { nerEntities = redactionStorageService.getNerEntities(analyzeRequest.getDossierId(), analyzeRequest.getFileId()); } else { nerEntities = NerEntities.builder().build(); } + log.info("Getting ner took: {}", System.currentTimeMillis() - nerStartTime); + + long reanalysisSectionsStartTime = System.currentTimeMillis(); List reanalysisSections = text.getSectionTexts() .stream() .filter(sectionText -> sectionsToReanalyse.contains(sectionText.getSectionNumber())) .collect(Collectors.toList()); + log.info("Getting sections took: {}", System.currentTimeMillis() - reanalysisSectionsStartTime); + long getRulesStartTime = System.currentTimeMillis(); KieContainer kieContainer = droolsExecutionService.updateRules(analyzeRequest.getDossierTemplateId()); + log.info("Getting rules took: {}", System.currentTimeMillis() - getRulesStartTime); + long copyDictionaryStartTime = System.currentTimeMillis(); Dictionary dictionary = dictionaryService.getDeepCopyDictionary(analyzeRequest.getDossierTemplateId(), analyzeRequest.getDossierId()); + log.info("Copy Dictionary took: {}", System.currentTimeMillis() - copyDictionaryStartTime); + long findEntitiesStartTime = System.currentTimeMillis(); PageEntities pageEntities = entityRedactionService.findEntities(dictionary, reanalysisSections, kieContainer, analyzeRequest, nerEntities); + log.info("Find Entities took: {}", System.currentTimeMillis() - findEntitiesStartTime); + + long createRedactionLogStartTime = System.currentTimeMillis(); var newRedactionLogEntries = redactionLogCreatorService.createRedactionLog(pageEntities, text.getNumberOfPages(), analyzeRequest.getDossierTemplateId()); + log.info("Create redactionLog took: {}", System.currentTimeMillis() - createRedactionLogStartTime); + long importedRedactionFilteredStartTime = System.currentTimeMillis(); var importedRedactionFilteredEntries = importedRedactionService.processImportedRedactions(analyzeRequest.getDossierTemplateId(), analyzeRequest.getDossierId(), analyzeRequest.getFileId(), newRedactionLogEntries, false); - + redactionLog.getRedactionLogEntry() .removeIf(entry -> sectionsToReanalyse.contains(entry.getSectionNumber()) && !entry.getType() .equals(IMPORTED_REDACTION_TYPE)); redactionLog.getRedactionLogEntry().addAll(importedRedactionFilteredEntries); + log.info("Filter imported redactions took: {}", System.currentTimeMillis() - importedRedactionFilteredStartTime); return finalizeAnalysis(analyzeRequest, startTime, redactionLog, text, dictionaryIncrement.getDictionaryVersion(), true); } diff --git a/redaction-service-v1/redaction-service-server-v1/src/main/java/com/iqser/red/service/redaction/v1/server/redaction/service/DictionaryService.java b/redaction-service-v1/redaction-service-server-v1/src/main/java/com/iqser/red/service/redaction/v1/server/redaction/service/DictionaryService.java index a71c061c..ef4348ca 100644 --- a/redaction-service-v1/redaction-service-server-v1/src/main/java/com/iqser/red/service/redaction/v1/server/redaction/service/DictionaryService.java +++ b/redaction-service-v1/redaction-service-server-v1/src/main/java/com/iqser/red/service/redaction/v1/server/redaction/service/DictionaryService.java @@ -50,8 +50,12 @@ public class DictionaryService { public DictionaryIncrement getDictionaryIncrements(String dossierTemplateId, DictionaryVersion fromVersion, String dossierId) { + long dictionaryStartTime = System.currentTimeMillis(); DictionaryVersion version = updateDictionary(dossierTemplateId, dossierId); + log.info("dictionary update took: {}", System.currentTimeMillis() - dictionaryStartTime); + + long dictionaryIncrementStartTime = System.currentTimeMillis(); Set newValues = new HashSet<>(); List dictionaryModels = dictionariesByDossierTemplate.get(dossierTemplateId).getDictionary(); dictionaryModels.forEach(dictionaryModel -> { @@ -73,6 +77,7 @@ public class DictionaryService { }); } + log.info("dictionary update took: {}", System.currentTimeMillis() - dictionaryIncrementStartTime); return new DictionaryIncrement(newValues, version); }