Skip to content

Commit

Permalink
gestion KO
Browse files Browse the repository at this point in the history
  • Loading branch information
SamuelQuetin committed Dec 13, 2023
1 parent 07ba515 commit 4470865
Showing 1 changed file with 21 additions and 14 deletions.
35 changes: 21 additions & 14 deletions src/main/java/fr/abes/logskbart/kafka/LogsListener.java
Original file line number Diff line number Diff line change
Expand Up @@ -90,7 +90,7 @@ public void listenInfoKbart2KafkaAndErrorKbart2Kafka(ConsumerRecord<String, Stri
@KafkaListener(topics = {"${topic.name.source.endoftraitement}"}, groupId = "${topic.groupid.source}", containerFactory = "kafkaLogsListenerContainerFactory")
public void listener(ConsumerRecord<String, String> message) throws IOException {

// Créer un nouveau Path avec le FileName (en remplaçant l'extension par .err)
// Créer un nouveau Path avec le FileName (en remplaçant l'extension par .bad)
Path source = null;
for (Header header : message.headers().toArray()) {
if (header.key().equals("FileName")) {
Expand All @@ -100,22 +100,29 @@ public void listener(ConsumerRecord<String, String> message) throws IOException
}

log.info("End of traitement : " + message.value());
// Copie le fichier existant vers le répertoire temporaire en ajoutant sa date de création
if (source != null && Files.exists(source)) {

if( message.value().equals("OK")) {
// Copie le fichier existant vers le répertoire temporaire en ajoutant sa date de création
if (source != null && Files.exists(source)) {

// Vérification du chemin et création si inexistant
String tempLog = "tempLog" + File.separator;
File chemin = new File(tempLog);
if (!chemin.isDirectory()) {
Files.createDirectory(Paths.get(tempLog));
}
Path target = Path.of(tempLog + source);
Files.deleteIfExists(target);

// Déplacement du fichier
Files.move(source, target, StandardCopyOption.REPLACE_EXISTING);
log.info("Fichier de log transféré dans le dossier temporaire.");
// Vérification du chemin et création si inexistant
String tempLog = "tempLog" + File.separator;
File chemin = new File(tempLog);
if (!chemin.isDirectory()) {
Files.createDirectory(Paths.get(tempLog));
}
Path target = Path.of(tempLog + source);
Files.deleteIfExists(target);

// Déplacement du fichier
Files.move(source, target, StandardCopyOption.REPLACE_EXISTING);
log.info("Fichier de log d'erreur transféré dans le dossier temporaire.");
}
} else if(message.value().equals("KO")) {
assert source != null;
Files.deleteIfExists(source);
log.info("Fichier de log d'erreur supprimé si existe");
}
}
}

0 comments on commit 4470865

Please sign in to comment.