From fba6aa53fb498c7d8608c8a0d4e37333831d8e22 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Fri, 21 Nov 2025 21:31:29 +0000 Subject: [PATCH 1/2] Initial plan From d14e2092b2aa06826642e7532fcc4bf21fd3b8cb Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Fri, 21 Nov 2025 21:36:19 +0000 Subject: [PATCH 2/2] Add logging for Jackson serialization fallback Co-authored-by: jaredmixpanel <10504508+jaredmixpanel@users.noreply.github.com> --- src/main/java/com/mixpanel/mixpanelapi/MixpanelAPI.java | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/main/java/com/mixpanel/mixpanelapi/MixpanelAPI.java b/src/main/java/com/mixpanel/mixpanelapi/MixpanelAPI.java index c56172b..1892537 100644 --- a/src/main/java/com/mixpanel/mixpanelapi/MixpanelAPI.java +++ b/src/main/java/com/mixpanel/mixpanelapi/MixpanelAPI.java @@ -10,6 +10,8 @@ import java.net.URLConnection; import java.net.URLEncoder; import java.util.List; +import java.util.logging.Level; +import java.util.logging.Logger; import java.util.zip.GZIPOutputStream; import org.json.JSONArray; import org.json.JSONException; @@ -38,6 +40,7 @@ */ public class MixpanelAPI implements AutoCloseable { + private static final Logger logger = Logger.getLogger(MixpanelAPI.class.getName()); private static final int BUFFER_SIZE = 256; // Small, we expect small responses. private static final int CONNECT_TIMEOUT_MILLIS = 2000; @@ -409,6 +412,7 @@ private String dataString(List messages) { return serializer.serializeArray(messages); } catch (IOException e) { // Fallback to original implementation if serialization fails + logger.log(Level.WARNING, "Jackson serialization failed, falling back to org.json", e); JSONArray array = new JSONArray(); for (JSONObject message:messages) { array.put(message);