From ad9714c9e9dbb897af289aea16fc6bff9afe01ec Mon Sep 17 00:00:00 2001
From: lhameury <lukas.hameury@libriciel.coop>
Date: Wed, 14 Feb 2024 10:23:05 +0100
Subject: [PATCH] Better logging on message Sender and receiver (stop using
 system.out)

---
 .../repo/amq/impl/MessageSenderImpl.java      | 11 +++++++----
 .../repo/amq/impl/MessagesReceiver.java       | 19 +++++++------------
 2 files changed, 14 insertions(+), 16 deletions(-)

diff --git a/iparapheur-core/src/main/java/org/adullact/iparapheur/repo/amq/impl/MessageSenderImpl.java b/iparapheur-core/src/main/java/org/adullact/iparapheur/repo/amq/impl/MessageSenderImpl.java
index b20a59d..760fae9 100644
--- a/iparapheur-core/src/main/java/org/adullact/iparapheur/repo/amq/impl/MessageSenderImpl.java
+++ b/iparapheur-core/src/main/java/org/adullact/iparapheur/repo/amq/impl/MessageSenderImpl.java
@@ -6,6 +6,7 @@ import org.alfresco.service.cmr.repository.NodeRef;
 import org.alfresco.service.cmr.repository.NodeService;
 import org.alfresco.service.namespace.QName;
 import org.alfresco.service.transaction.TransactionService;
+import org.apache.log4j.Logger;
 import org.springframework.beans.factory.annotation.Autowired;
 
 import javax.jms.JMSException;
@@ -21,6 +22,8 @@ import java.util.Map;
  */
 public class MessageSenderImpl implements MessagesSender {
 
+    private final Logger logger = Logger.getLogger(MessagesSender.class);
+
     @Autowired
     private NodeService nodeService;
     @Autowired
@@ -47,17 +50,17 @@ public class MessageSenderImpl implements MessagesSender {
                 ut.commit();
                 TextMessage m = activeMQConnectionService.createTextMessage();
                 m.setText(objString);
-                System.out.println("-----Sending message : " + m.getText());
+                logger.info("-----Sending message : " + m.getText());
                 sender.send(m);
             } catch (JMSException e) {
-                e.printStackTrace();
+                logger.error("Exception when sending message to activemq : " + e.getMessage());
                 nodeService.removeAspect(nodeRef, ParapheurModel.ASPECT_PENDING);
             } catch (Exception e2) {
-                e2.printStackTrace();
+                logger.error("Exception when sending message to activemq : " + e2.getMessage());
                 try {
                     ut.rollback();
                 } catch(Exception e3) {
-                    e3.printStackTrace();
+                    logger.error("Exception when rollback after sending message to activemq : " + e3.getMessage());
                 }
             }
         }
diff --git a/iparapheur-core/src/main/java/org/adullact/iparapheur/repo/amq/impl/MessagesReceiver.java b/iparapheur-core/src/main/java/org/adullact/iparapheur/repo/amq/impl/MessagesReceiver.java
index ec2e3cc..19870cd 100644
--- a/iparapheur-core/src/main/java/org/adullact/iparapheur/repo/amq/impl/MessagesReceiver.java
+++ b/iparapheur-core/src/main/java/org/adullact/iparapheur/repo/amq/impl/MessagesReceiver.java
@@ -1,6 +1,8 @@
 package org.adullact.iparapheur.repo.amq.impl;
 
+import lombok.extern.log4j.Log4j;
 import org.adullact.iparapheur.repo.worker.SchedulerService;
+import org.adullact.iparapheur.repo.worker.WorkerService;
 import org.codehaus.jackson.JsonParseException;
 import org.codehaus.jackson.map.JsonMappingException;
 import org.codehaus.jackson.map.ObjectMapper;
@@ -15,6 +17,7 @@ import java.util.HashMap;
 /**
  * Created by lhameury on 14/01/14.
  */
+@Log4j
 public class MessagesReceiver implements MessageListener, ExceptionListener {
 
     @Autowired
@@ -32,22 +35,14 @@ public class MessagesReceiver implements MessageListener, ExceptionListener {
         TextMessage m = (TextMessage) message;
         try {
             if(m != null) {
-                System.out.println("----Consumer : message received");
                 JSONObject obj = new JSONObject(m.getText());
                 HashMap request = new ObjectMapper().readValue(obj.toString(), HashMap.class);
+                log.info("Consumer : message received; ACTION : " + WorkerService.ACTION + "; ID : " + WorkerService.ID);
                 SelectWorkerRunnable selectWorkerRunnable = new SelectWorkerRunnable(schedulerService, request, m);
                 (new Thread(selectWorkerRunnable)).start();
             }
-        } catch (JMSException ex) {
-            ex.printStackTrace();
-        } catch (JSONException e) {
-            e.printStackTrace();
-        } catch (JsonMappingException e) {
-            e.printStackTrace();
-        } catch (JsonParseException e) {
-            e.printStackTrace();
-        } catch (IOException e) {
-            e.printStackTrace();
+        } catch (JMSException | JSONException | IOException ex) {
+            log.error("Error on onMessage : ", ex);
         }
     }
 
@@ -84,6 +79,6 @@ public class MessagesReceiver implements MessageListener, ExceptionListener {
      */
     @Override
     public void onException(JMSException exception) {
-        System.err.println("----AMQ : an error occurred: " + exception);
+        log.error("AMQ : an error occurred", exception);
     }
 }
-- 
GitLab