From 690b969fe3452a14c634b4fd7662a697f6f13325 Mon Sep 17 00:00:00 2001 From: David Dworken <david@daviddworken.com> Date: Sun, 15 Oct 2023 17:45:38 -0700 Subject: [PATCH] Use queryReason parameter to properly record query interactions --- backend/server/internal/server/api_handlers.go | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/backend/server/internal/server/api_handlers.go b/backend/server/internal/server/api_handlers.go index 18cb6cf..ecec251 100644 --- a/backend/server/internal/server/api_handlers.go +++ b/backend/server/internal/server/api_handlers.go @@ -96,12 +96,16 @@ func (s *Server) apiQueryHandler(w http.ResponseWriter, r *http.Request) { ctx := r.Context() userId := getRequiredQueryParam(r, "user_id") deviceId := getRequiredQueryParam(r, "device_id") + queryReason := getOptionalQueryParam(r, "queryReason", s.isTestEnvironment) + isBackgroundQuery := queryReason == "preload" || queryReason == "newclient" // TODO: add these to the context in a middleware version := getHishtoryVersion(r) remoteIPAddr := getRemoteAddr(r) - s.handleNonCriticalError(s.updateUsageData(r.Context(), version, remoteIPAddr, userId, deviceId, 0, true)) + if !isBackgroundQuery { + s.handleNonCriticalError(s.updateUsageData(r.Context(), version, remoteIPAddr, userId, deviceId, 0, true)) + } // Delete any entries that match a pending deletion request deletionRequests, err := s.db.DeletionRequestsForUserAndDevice(r.Context(), userId, deviceId) @@ -136,7 +140,7 @@ func (s *Server) apiQueryHandler(w http.ResponseWriter, r *http.Request) { } if s.statsd != nil { - s.statsd.Incr("hishtory.query", []string{}, 1.0) + s.statsd.Incr("hishtory.query", []string{"query_reason:" + queryReason}, 1.0) } }