Improve APEX logging for irrelevant events 31/122931/3
authora.sreekumar <ajith.sreekumar@bell.ca>
Wed, 28 Jul 2021 16:21:35 +0000 (17:21 +0100)
committera.sreekumar <ajith.sreekumar@bell.ca>
Thu, 29 Jul 2021 09:18:20 +0000 (10:18 +0100)
When multiple policies are expecting event on the same topic/endpoint,
a lot of event parsing failure log messages are generated
unnecessarily. With this change, only a 1 line message will
be printed if an event cannot be parsed, and the detailed messages
will be available at debug level.

Change-Id: If1e7460ef5ed86fd470396f1e2ed8cc3c8af70c4
Issue-ID: POLICY-3499
Signed-off-by: a.sreekumar <ajith.sreekumar@bell.ca>
plugins/plugins-event/plugins-event-carrier/plugins-event-carrier-kafka/src/main/java/org/onap/policy/apex/plugins/event/carrier/kafka/ApexKafkaConsumer.java
plugins/plugins-event/plugins-event-carrier/plugins-event-carrier-restclient/src/main/java/org/onap/policy/apex/plugins/event/carrier/restclient/ApexRestClientConsumer.java
services/services-engine/src/main/java/org/onap/policy/apex/service/engine/main/ApexEventUnmarshaller.java
testsuites/integration/integration-uservice-test/src/test/resources/logback-test.xml

index acaf483..2957a1a 100644 (file)
@@ -2,6 +2,7 @@
  * ============LICENSE_START=======================================================
  *  Copyright (C) 2016-2018 Ericsson. All rights reserved.
  *  Modifications Copyright (C) 2019-2020 Nordix Foundation.
+ *  Modifications Copyright (C) 2021 Bell Canada. All rights reserved.
  * ================================================================================
  * Licensed under the Apache License, Version 2.0 (the "License");
  * you may not use this file except in compliance with the License.
@@ -91,7 +92,7 @@ public class ApexKafkaConsumer extends ApexPluginsEventConsumer {
                         eventReceiver.receiveEvent(new Properties(), record.value());
                     }
                 } catch (final Exception e) {
-                    LOGGER.warn("error receiving events on thread {}", consumerThread.getName(), e);
+                    LOGGER.debug("error receiving events on thread {}", consumerThread.getName(), e);
                 }
             }
         }
index fc7c11e..4f95c56 100644 (file)
@@ -172,7 +172,7 @@ public class ApexRestClientConsumer extends ApexPluginsEventConsumer {
                 // Send the event into Apex
                 eventReceiver.receiveEvent(new Properties(), eventJsonString);
             } catch (final Exception e) {
-                LOGGER.warn("error receiving events on thread {}", consumerThread.getName(), e);
+                LOGGER.debug("error receiving events on thread {}", consumerThread.getName(), e);
             }
         }
     }
index f49115b..4e62f5c 100644 (file)
@@ -264,6 +264,9 @@ public class ApexEventUnmarshaller implements ApexEventReceiver, Runnable {
             } catch (ApexException e) {
                 if (!iterator.hasNext()) {
                     final String errorMessage = "Error while converting event into an ApexEvent for " + name;
+                    if (!LOGGER.isDebugEnabled()) {
+                        LOGGER.warn("{}. Detailed logs are available at debug level.", errorMessage);
+                    }
                     throw new ApexEventException(errorMessage, e);
                 }
             }
index 341a9fd..1fa5652 100644 (file)
@@ -3,6 +3,7 @@
   ============LICENSE_START=======================================================
    Copyright (C) 2016-2018 Ericsson. All rights reserved.
    Modifications Copyright (C) 2020 Nordix Foundation.
+   Modifications Copyright (C) 2021 Bell Canada. All rights reserved.
   ================================================================================
   Licensed under the Apache License, Version 2.0 (the "License");
   you may not use this file except in compliance with the License.
@@ -36,7 +37,7 @@
     </root>
 
 
-    <logger name="org.onap.policy.apex" level="INFO" additivity="false">
+    <logger name="org.onap.policy.apex" level="DEBUG" additivity="false">
         <appender-ref ref="STDOUT" />
     </logger>