diff --git a/src/main/java/org/jabref/FallbackExceptionHandler.java b/src/main/java/org/jabref/FallbackExceptionHandler.java index 9bc9c9fb136..1521b67cf60 100644 --- a/src/main/java/org/jabref/FallbackExceptionHandler.java +++ b/src/main/java/org/jabref/FallbackExceptionHandler.java @@ -1,16 +1,14 @@ package org.jabref; -import org.apache.logging.log4j.LogManager; -import org.apache.logging.log4j.Logger; -import org.apache.logging.log4j.Marker; -import org.apache.logging.log4j.MarkerManager; +import org.apache.commons.logging.Log; +import org.apache.commons.logging.LogFactory; /** * Catch and log any unhandled exceptions. */ public class FallbackExceptionHandler implements Thread.UncaughtExceptionHandler { - private static final Marker UncaughtException_MARKER = MarkerManager.getMarker("UncaughtException"); + private static final Log LOGGER = LogFactory.getLog(FallbackExceptionHandler.class); public static void installExceptionHandler() { Thread.setDefaultUncaughtExceptionHandler(new FallbackExceptionHandler()); @@ -18,7 +16,6 @@ public static void installExceptionHandler() { @Override public void uncaughtException(Thread thread, Throwable exception) { - Logger logger = LogManager.getLogger(FallbackExceptionHandler.class); - logger.error(UncaughtException_MARKER, "Uncaught exception Occurred in " + thread, exception); + LOGGER.error("Uncaught exception occurred in " + thread, exception); } } diff --git a/src/main/java/org/jabref/gui/actions/NewEntryAction.java b/src/main/java/org/jabref/gui/actions/NewEntryAction.java index 63e009fa665..b404dfea3af 100644 --- a/src/main/java/org/jabref/gui/actions/NewEntryAction.java +++ b/src/main/java/org/jabref/gui/actions/NewEntryAction.java @@ -1,10 +1,13 @@ package org.jabref.gui.actions; import java.awt.event.ActionEvent; +import java.util.HashMap; +import java.util.Map; import javax.swing.Action; import javax.swing.KeyStroke; +import org.jabref.Globals; import org.jabref.gui.EntryTypeDialog; import org.jabref.gui.IconTheme; import org.jabref.gui.JabRefFrame; @@ -58,6 +61,8 @@ public void actionPerformed(ActionEvent e) { return; } thisType = tp.getName(); + + trackNewEntry(tp); } if (jabRefFrame.getBasePanelCount() > 0) { @@ -68,4 +73,12 @@ public void actionPerformed(ActionEvent e) { LOGGER.info("Action 'New entry' must be disabled when no database is open."); } } + + private void trackNewEntry(EntryType type) { + Map properties = new HashMap<>(); + properties.put("EntryType", type.getName()); + Map measurements = new HashMap<>(); + + Globals.getTelemetryClient().ifPresent(client -> client.trackEvent("NewEntry", properties, measurements)); + } } diff --git a/src/main/java/org/jabref/gui/logging/ApplicationInsightsAppender.java b/src/main/java/org/jabref/gui/logging/ApplicationInsightsAppender.java index 2978bc187aa..2f82d8f76ea 100644 --- a/src/main/java/org/jabref/gui/logging/ApplicationInsightsAppender.java +++ b/src/main/java/org/jabref/gui/logging/ApplicationInsightsAppender.java @@ -39,6 +39,7 @@ public void append(LogEvent rawEvent) { Telemetry telemetry; if (event.isException()) { ExceptionTelemetry exceptionTelemetry = new ExceptionTelemetry(event.getException()); + exceptionTelemetry.getProperties().put("Message", rawEvent.getMessage().getFormattedMessage()); exceptionTelemetry.setSeverityLevel(event.getNormalizedSeverityLevel()); telemetry = exceptionTelemetry; } else {