Users with EUM Server version 4.3.5.x or higher may encounter Null Pointer Exception(NPEs) flooding their eum-processor.log file.
A typical NPE would be something like below:
03 Nov 2017 15:26:09.634 +0000 Analytics Event Dispatcher Processors-1 AD.BatchingAnalyticsPubli ERROR | Analytics Event Dispatcher Processor failure | java.lang.NullPointerException | at com.appdynamics.eumanalytics.publisher.JobDescriptor.hashCode(JobDescriptor.java:103) | at java.util.HashMap.hash(HashMap.java:338) | at java.util.HashMap.put(HashMap.java:611) | at com.google.common.collect.LinkedListMultimap.addNode(LinkedListMultimap.java:223) | at com.google.common.collect.LinkedListMultimap.put(LinkedListMultimap.java:604) | at com.appdynamics.eumanalytics.publisher.BatchingAnalyticsPublisher$Processor.drainAndGroupByBatchId(BatchingAnalyticsPublisher.java:372) | at com.appdynamics.eumanalytics.publisher.BatchingAnalyticsPublisher$Processor.flushBuffer(BatchingAnalyticsPublisher.java:316) | at com.appdynamics.eumanalytics.publisher.BatchingAnalyticsPublisher$Processor.flush(BatchingAnalyticsPublisher.java:311) | at com.appdynamics.eumanalytics.publisher.BatchingAnalyticsPublisher$Processor.runOneCycle(BatchingAnalyticsPublisher.java:280) | at com.appdynamics.eumanalytics.publisher.BatchingAnalyticsPublisher$Processor.run(BatchingAnalyticsPublisher.java:267) | at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) | at java.util.concurrent.FutureTask.run(FutureTask.java:266) | at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) | at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java) | at java.lang.Thread.run(Thread.java:745)
This is a known bug in the EUM Server 4.3.5.x version and above, which has been fixed for EUM Server version 4.4. The following workaround is recommended to quickly mitigate the excessive logging for 4.3.5.x users.
1) Take a backup of the eum.properties
file.
2) Stop the EUM Server.
3) Add the following property to the properties file:
eumUsage.enabled=false
4) Save the file.
5) Start the EUM Server.