From: Ben Soares Date: Fri, 30 Jun 2023 01:37:20 +0000 (+0100) Subject: JAL-4001 Added a random id to User-Agent to ensure separate visits recorded in Plausi... X-Git-Tag: Release_2_11_3_0~13^2~4^2 X-Git-Url: http://source.jalview.org/gitweb/?p=jalview.git;a=commitdiff_plain;h=3a39fb5cc1a7483fbf64d0fca8e57f8fc4bc57c2 JAL-4001 Added a random id to User-Agent to ensure separate visits recorded in Plausible. Changed default URL to self-hosted site --- diff --git a/src/jalview/analytics/Plausible.java b/src/jalview/analytics/Plausible.java index 74db1f7..3d7f1cd 100644 --- a/src/jalview/analytics/Plausible.java +++ b/src/jalview/analytics/Plausible.java @@ -19,6 +19,7 @@ import java.util.HashMap; import java.util.Iterator; import java.util.List; import java.util.Map; +import java.util.Random; import jalview.bin.Cache; import jalview.bin.Console; @@ -27,8 +28,7 @@ import jalview.util.HttpUtils; public class Plausible { - private static final String USER_AGENT = HttpUtils.getUserAgent( - MethodHandles.lookup().lookupClass().getCanonicalName()); + private static final String USER_AGENT; private static final String JALVIEW_ID = "Jalview Desktop"; @@ -36,10 +36,12 @@ public class Plausible private static final String CONFIG_API_BASE_URL = "https://www.jalview.org/services/config/analytics/url"; - private static final String DEFAULT_API_BASE_URL = "https://plausible.io/api/event"; + private static final String DEFAULT_API_BASE_URL = "https://analytics.jalview.org/api/event"; private static final String API_BASE_URL; + private static final String clientId; + public static final String APPLICATION_BASE_URL = "desktop://localhost"; private List> queryStringValues; @@ -96,6 +98,13 @@ public class Plausible // ascertain the API_BASE_URL API_BASE_URL = getAPIBaseURL(); + + // random clientId to make User-Agent unique (to register analytic) + clientId = String.format("%08x", new Random().nextInt()); + + USER_AGENT = HttpUtils.getUserAgent( + MethodHandles.lookup().lookupClass().getCanonicalName() + " " + + clientId); } private Plausible()