Added log entries

This commit is contained in:
deiflaender 2022-03-28 09:26:25 +02:00
parent 9ad923c314
commit 50c2d4ffdc
2 changed files with 29 additions and 1 deletions

View File

@ -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<Integer> 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<SectionText> 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);
var newRedactionLogEntries = redactionLogCreatorService.createRedactionLog(pageEntities, text.getNumberOfPages(), analyzeRequest.getDossierTemplateId());
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);
}

View File

@ -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<DictionaryIncrementValue> newValues = new HashSet<>();
List<DictionaryModel> 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);
}