Jelajahi Sumber

enhance(rtc): replace console.log and prn with lambdaisland.glogi

rcmerci 8 bulan lalu
induk
melakukan
d1b9eadc5e

+ 3 - 2
src/main/frontend/common/missionary.cljs

@@ -3,6 +3,7 @@
   (:require-macros [frontend.common.missionary])
   (:require [cljs.core.async.impl.channels]
             [clojure.core.async :as a]
+            [lambdaisland.glogi :as log]
             [missionary.core :as m]
             [promesa.protocols :as pt]))
 
@@ -82,11 +83,11 @@
 (defn run-task
   "Return the canceler"
   [task key & {:keys [succ fail]}]
-  (task (or succ #(prn key :succ %)) (or fail #(js/console.log key %))))
+  (task (or succ #(log/info :key key :succ %)) (or fail #(log/info :key key :stopped %))))
 
 (defn run-task-throw
   [task key & {:keys [succ]}]
-  (task (or succ #(prn key :succ %)) #(throw (ex-info "task failed" {:key key :e %}))))
+  (task (or succ #(log/info :key key :succ %)) #(throw (ex-info "task stopped" {:key key :e %}))))
 
 (defonce ^:private *background-task-cancelers ; key -> canceler
   (volatile! {}))

+ 2 - 0
src/main/frontend/worker/db_worker.cljs

@@ -28,6 +28,7 @@
             [frontend.worker.undo-redo2 :as undo-redo]
             [frontend.worker.util :as worker-util]
             [goog.object :as gobj]
+            [lambdaisland.glogi.console :as glogi-console]
             [logseq.common.config :as common-config]
             [logseq.common.util :as common-util]
             [logseq.db :as ldb]
@@ -961,6 +962,7 @@
 (defn init
   "web worker entry"
   []
+  (glogi-console/install!)
   (check-worker-scope!)
   (let [^js obj (DBWorker.)]
     (outliner-register-op-handlers!)

+ 2 - 1
src/main/frontend/worker/rtc/client_op.cljs

@@ -4,6 +4,7 @@
             [frontend.common.missionary :as c.m]
             [frontend.worker.rtc.malli-schema :as rtc-schema]
             [frontend.worker.state :as worker-state]
+            [lambdaisland.glogi :as log]
             [logseq.db.sqlite.util :as sqlite-util]
             [malli.core :as ma]
             [malli.transform :as mt]
@@ -58,7 +59,7 @@
 
 (def ops-schema [:sequential op-schema])
 (def ops-coercer (ma/coercer ops-schema mt/json-transformer nil
-                             #(do (prn ::bad-ops (:value %))
+                             #(do (log/error ::bad-ops (:value %))
                                   (ma/-fail! ::ops-schema %))))
 
 (def ^:private block-op-types #{:move :remove :update-page :remove-page :update})

+ 5 - 4
src/main/frontend/worker/rtc/core.cljs

@@ -17,6 +17,7 @@
             [frontend.worker.rtc.ws-util :as ws-util :refer [gen-get-ws-create-map--memoized]]
             [frontend.worker.state :as worker-state]
             [frontend.worker.util :as worker-util]
+            [lambdaisland.glogi :as log]
             [logseq.common.config :as common-config]
             [logseq.db :as ldb]
             [logseq.db.frontend.schema :as db-schema]
@@ -319,17 +320,17 @@
     (let [{:keys [conn user-uuid graph-uuid schema-version remote-schema-version date-formatter] :as r}
           (validate-rtc-start-conditions repo token)]
       (if (instance? ExceptionInfo r)
-        (do (prn r) (r.ex/->map r))
+        (do (log/info :e r) (r.ex/->map r))
         (let [{:keys [rtc-state-flow *rtc-auto-push? *rtc-remote-profile? rtc-loop-task *online-users onstarted-task]}
               (create-rtc-loop graph-uuid schema-version repo conn date-formatter token)
               *last-stop-exception (atom nil)
               canceler (c.m/run-task rtc-loop-task :rtc-loop-task
                                      :fail (fn [e]
                                              (reset! *last-stop-exception e)
-                                             (js/console.log :rtc-loop-task e)))
+                                             (log/info :rtc-loop-task e)))
               start-ex (m/? onstarted-task)]
           (if-let [start-ex (:ex-data start-ex)]
-            (do (prn start-ex) (r.ex/->map start-ex))
+            (do (log/info :start-ex start-ex) (r.ex/->map start-ex))
             (do (reset! *rtc-loop-metadata {:repo repo
                                             :graph-uuid graph-uuid
                                             :local-graph-schema-version schema-version
@@ -376,7 +377,7 @@
                                     {:action "delete-graph"
                                      :graph-uuid graph-uuid
                                      :schema-version (str schema-version)}))]
-        (when ex-data (prn ::delete-graph-failed graph-uuid ex-data))
+        (when ex-data (log/info ::delete-graph-failed {:graph-uuid graph-uuid :ex-data ex-data}))
         (boolean (nil? ex-data))))))
 
 (defn new-task--get-users-info

+ 2 - 1
src/main/frontend/worker/rtc/log_and_state.cljs

@@ -2,6 +2,7 @@
   "Fns to generate rtc related logs"
   (:require [frontend.common.missionary :as c.m]
             [frontend.worker.util :as worker-util]
+            [lambdaisland.glogi :as log]
             [logseq.common.defkeywords :refer [defkeywords]]
             [malli.core :as ma]
             [missionary.core :as m]))
@@ -50,7 +51,7 @@
                                          (fn [v]
                                            (if (validator v)
                                              true
-                                             (do (prn :debug-graph-uuid->t-validator v)
+                                             (do (log/error :debug-graph-uuid->t-validator v)
                                                  false)))))
 
 (def *graph-uuid->local-t (atom {} :validator graph-uuid->t-validator))

+ 3 - 2
src/main/frontend/worker/rtc/malli_schema.cljs

@@ -1,6 +1,7 @@
 (ns frontend.worker.rtc.malli-schema
   "Malli schema for rtc"
-  (:require [logseq.db.frontend.malli-schema :as db-malli-schema]
+  (:require [lambdaisland.glogi :as log]
+            [logseq.db.frontend.malli-schema :as db-malli-schema]
             [logseq.db.frontend.schema :as db-schema]
             [malli.core :as m]
             [malli.transform :as mt]
@@ -353,5 +354,5 @@
                                                       (mt/key-transformer {:encode m/-keyword->string}))))
 (def data-to-ws-coercer (m/coercer data-to-ws-schema mt/string-transformer nil
                                    #(do
-                                      (prn ::data-to-ws-schema %)
+                                      (log/error ::data-to-ws-schema %)
                                       (m/-fail! ::data-to-ws-schema %))))

+ 2 - 1
src/main/frontend/worker/rtc/remote_update.cljs

@@ -12,6 +12,7 @@
             [frontend.worker.rtc.malli-schema :as rtc-schema]
             [frontend.worker.state :as worker-state]
             [frontend.worker.util :as worker-util]
+            [lambdaisland.glogi :as log]
             [logseq.clj-fractional-indexing :as index]
             [logseq.common.defkeywords :refer [defkeywords]]
             [logseq.common.util :as common-util]
@@ -544,7 +545,7 @@ so need to pull earlier remote-data from websocket."})
     (doseq [refed-block sorted-refed-blocks]
       (let [ent (d/entity @conn [:block/uuid (:block/uuid refed-block)])]
         (when-not ent
-          (prn :ensure-refed-blocks-exist refed-block)
+          (log/info :ensure-refed-blocks-exist refed-block)
           (if (:block/name refed-block)
             (apply-remote-update-page-ops repo conn [(-> refed-block
                                                          (assoc :self (:block/uuid refed-block))

+ 2 - 1
src/main/frontend/worker/rtc/skeleton.cljs

@@ -4,6 +4,7 @@
             [datascript.core :as d]
             [frontend.worker.rtc.ws-util :as ws-util]
             [frontend.worker.util :as worker-util]
+            [lambdaisland.glogi :as log]
             [logseq.db :as ldb]
             [logseq.db.frontend.schema :as db-schema]
             [missionary.core :as m]))
@@ -30,7 +31,7 @@
           :graph-lock-failed
           (throw (ex-info "retry calibrate-graph-skeleton" {:missionary/retry true}))
           ;; else
-          (do (prn {:remote-ex remote-ex})
+          (do (log/info :remote-ex remote-ex)
               (throw (ex-info "Unavailable2" {:remote-ex remote-ex}))))
         (let [{:keys [server-schema-version server-builtin-db-idents]} r
               client-builtin-db-idents (set (get-builtin-db-idents db))