diff --git a/src/metabase/events/view_log.clj b/src/metabase/events/view_log.clj
index 65bbba8659f3326b958eca2fd597d5258cfa0795..09e4439773ce8e7f5ad2560c8c562a48210fe43c 100644
--- a/src/metabase/events/view_log.clj
+++ b/src/metabase/events/view_log.clj
@@ -135,14 +135,15 @@
 
 (defn- update-users-recent-views!
   [user-id model model-id]
-  (mw.session/with-current-user user-id
-    (let [view        {:model    (name model)
-                       :model_id model-id}
-          prior-views (remove #{view} (user-recent-views))]
-      (when (= model "dashboard") (most-recently-viewed-dashboard! model-id))
-      (when-not ((set prior-views) view)
-        (let [new-views (vec (take 10 (conj prior-views view)))]
-          (user-recent-views! new-views))))))
+  (when user-id
+    (mw.session/with-current-user user-id
+      (let [view        {:model    (name model)
+                         :model_id model-id}
+            prior-views (remove #{view} (user-recent-views))]
+        (when (= model "dashboard") (most-recently-viewed-dashboard! model-id))
+        (when-not ((set prior-views) view)
+          (let [new-views (vec (take 10 (conj prior-views view)))]
+            (user-recent-views! new-views)))))))
 
 (defn handle-view-event!
   "Handle processing for a single event notification received on the view-log-channel"