From 1786fffae60a8a2b7ba31d8fc9514aefce17e39c Mon Sep 17 00:00:00 2001 From: Noah Moss <32746338+noahmoss@users.noreply.github.com> Date: Wed, 3 Aug 2022 19:05:32 -0400 Subject: [PATCH] Set `CookieSpecs/STANDARD` on HttpClient for Snowplow (#24579) * set CookieSpecs/STANDARD on Apache HttpClient for Snowplow * add a comment in the code pointing to the PR * set cookie spec via RequestConfig instead --- src/metabase/analytics/snowplow.clj | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/src/metabase/analytics/snowplow.clj b/src/metabase/analytics/snowplow.clj index 1b0a7571697..320f5a22edb 100644 --- a/src/metabase/analytics/snowplow.clj +++ b/src/metabase/analytics/snowplow.clj @@ -16,6 +16,7 @@ [com.snowplowanalytics.snowplow.tracker.events Unstructured Unstructured$Builder] [com.snowplowanalytics.snowplow.tracker.http ApacheHttpClientAdapter ApacheHttpClientAdapter$Builder] com.snowplowanalytics.snowplow.tracker.payload.SelfDescribingJson + [org.apache.http.client.config CookieSpecs RequestConfig] org.apache.http.impl.client.HttpClients org.apache.http.impl.conn.PoolingHttpClientConnectionManager)) @@ -80,8 +81,14 @@ (def ^:private emitter "Returns an instance of a Snowplow emitter" (let [emitter* (delay - (let [client (-> (HttpClients/custom) + (let [request-config (-> (RequestConfig/custom) + ;; Set cookie spec to `STANDARD` to avoid warnings about an invalid cookie + ;; header in request response (PR #24579) + (.setCookieSpec CookieSpecs/STANDARD) + (.build)) + client (-> (HttpClients/custom) (.setConnectionManager (PoolingHttpClientConnectionManager.)) + (.setDefaultRequestConfig request-config) (.build)) builder (-> (ApacheHttpClientAdapter/builder) (.httpClient client) -- GitLab