mirror of
https://github.com/taoensso/telemere.git
synced 2026-02-05 20:03:13 +00:00
[nop] Switch to faster enc/binding
This commit is contained in:
parent
fb85a994b7
commit
dfc52d6f87
4 changed files with 16 additions and 12 deletions
|
|
@ -61,9 +61,9 @@ Telemere is **highly optimized** and offers terrific performance at any scale:
|
||||||
| Compile-time filtering? | Runtime filtering? | Time? | Trace? | nsecs
|
| Compile-time filtering? | Runtime filtering? | Time? | Trace? | nsecs
|
||||||
| :-: | :-: | :-: | :-: | --:
|
| :-: | :-: | :-: | :-: | --:
|
||||||
| ✓ (elide) | - | - | - | 0
|
| ✓ (elide) | - | - | - | 0
|
||||||
| - | ✓ | - | - | 220
|
| - | ✓ | - | - | 200
|
||||||
| - | ✓ | ✓ | - | 300
|
| - | ✓ | ✓ | - | 280
|
||||||
| - | ✓ | ✓ | ✓ | 730
|
| - | ✓ | ✓ | ✓ | 650
|
||||||
|
|
||||||
Measurements:
|
Measurements:
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -5,9 +5,9 @@
|
||||||
<https://www.taoensso.com/telemere>"
|
<https://www.taoensso.com/telemere>"
|
||||||
|
|
||||||
{:author "Peter Taoussanis (@ptaoussanis)"}
|
{:author "Peter Taoussanis (@ptaoussanis)"}
|
||||||
(:refer-clojure :exclude [newline])
|
(:refer-clojure :exclude [binding newline])
|
||||||
(:require
|
(:require
|
||||||
[taoensso.encore :as enc :refer [have have?]]
|
[taoensso.encore :as enc :refer [binding have have?]]
|
||||||
[taoensso.encore.signals :as sigs]
|
[taoensso.encore.signals :as sigs]
|
||||||
[taoensso.telemere.impl :as impl]
|
[taoensso.telemere.impl :as impl]
|
||||||
[taoensso.telemere.handlers :as handlers]
|
[taoensso.telemere.handlers :as handlers]
|
||||||
|
|
@ -351,13 +351,13 @@
|
||||||
|
|
||||||
(binding [impl/*sig-handlers* nil]
|
(binding [impl/*sig-handlers* nil]
|
||||||
|
|
||||||
[(enc/qb 1e6 ; [9.26 16.85 187.3 202.7]
|
[(enc/qb 1e6 ; [10.4 17.06 195.42 200.34]
|
||||||
(signal! {:level :info, :run nil, :elide? true})
|
(signal! {:level :info, :run nil, :elide? true})
|
||||||
(signal! {:level :info, :run nil, :allow? false})
|
(signal! {:level :info, :run nil, :allow? false})
|
||||||
(signal! {:level :info, :run nil, :allow? true })
|
(signal! {:level :info, :run nil, :allow? true })
|
||||||
(signal! {:level :info, :run nil}))
|
(signal! {:level :info, :run nil}))
|
||||||
|
|
||||||
(enc/qb 1e6 ; [8.09 15.29 677.91 278.57 688.89]
|
(enc/qb 1e6 ; [8.1 15.35 647.82 279.67 682.1]
|
||||||
(signal! {:level :info, :run "run", :elide? true})
|
(signal! {:level :info, :run "run", :elide? true})
|
||||||
(signal! {:level :info, :run "run", :allow? false})
|
(signal! {:level :info, :run "run", :allow? false})
|
||||||
(signal! {:level :info, :run "run", :allow? true })
|
(signal! {:level :info, :run "run", :allow? true })
|
||||||
|
|
@ -365,7 +365,7 @@
|
||||||
(signal! {:level :info, :run "run"}))
|
(signal! {:level :info, :run "run"}))
|
||||||
|
|
||||||
;; For README "performance" table
|
;; For README "performance" table
|
||||||
(enc/qb [8 1e6] ; [9.23 220.27 300.83 726.07]
|
(enc/qb [8 1e6] ; [9.23 197.2 277.55 649.32]
|
||||||
(signal! {:level :info, :elide? true})
|
(signal! {:level :info, :elide? true})
|
||||||
(signal! {:level :info})
|
(signal! {:level :info})
|
||||||
(signal! {:level :info, :run "run", :trace? false})
|
(signal! {:level :info, :run "run", :trace? false})
|
||||||
|
|
|
||||||
|
|
@ -1,8 +1,10 @@
|
||||||
(ns ^:no-doc taoensso.telemere.impl
|
(ns ^:no-doc taoensso.telemere.impl
|
||||||
"Private ns, implementation detail.
|
"Private ns, implementation detail.
|
||||||
Signal design shared by: Telemere, Tufte, Timbre."
|
Signal design shared by: Telemere, Tufte, Timbre."
|
||||||
|
|
||||||
|
(:refer-clojure :exclude [binding])
|
||||||
(:require
|
(:require
|
||||||
[taoensso.encore :as enc :refer [have have?]]
|
[taoensso.encore :as enc :refer [binding have have?]]
|
||||||
[taoensso.encore.signals :as sigs]
|
[taoensso.encore.signals :as sigs]
|
||||||
#?(:clj [clj-commons.format.exceptions :as fmt-ex])
|
#?(:clj [clj-commons.format.exceptions :as fmt-ex])
|
||||||
#?(:clj [clj-commons.ansi :as fmt-ansi])))
|
#?(:clj [clj-commons.ansi :as fmt-ansi])))
|
||||||
|
|
@ -187,7 +189,7 @@
|
||||||
(do form))))
|
(do form))))
|
||||||
|
|
||||||
(comment
|
(comment
|
||||||
[(enc/qb 1e6 (with-tracing true :id1 :uid1 "form")) ; 302.2
|
[(enc/qb 1e6 (with-tracing true :id1 :uid1 "form")) ; 257.5
|
||||||
(macroexpand '(with-tracing false :id1 :uid1 "form"))
|
(macroexpand '(with-tracing false :id1 :uid1 "form"))
|
||||||
(macroexpand '(with-tracing true :id1 :uid1 "form"))])
|
(macroexpand '(with-tracing true :id1 :uid1 "form"))])
|
||||||
|
|
||||||
|
|
@ -657,7 +659,7 @@
|
||||||
(defn test-interop! [msg test-fn]
|
(defn test-interop! [msg test-fn]
|
||||||
(let [msg (str "Interop test: " msg " (" (enc/uuid-str) ")")
|
(let [msg (str "Interop test: " msg " (" (enc/uuid-str) ")")
|
||||||
[_ [signal]]
|
[_ [signal]]
|
||||||
(binding [*rt-sig-filter* nil] ; without runtime filters
|
(binding [*rt-sig-filter* nil] ; Without runtime filters
|
||||||
(-with-signals (fn [] (test-fn msg))
|
(-with-signals (fn [] (test-fn msg))
|
||||||
{:handle? false}))]
|
{:handle? false}))]
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1,8 +1,10 @@
|
||||||
(ns ^:no-doc taoensso.telemere.streams
|
(ns ^:no-doc taoensso.telemere.streams
|
||||||
"Private ns, implementation detail.
|
"Private ns, implementation detail.
|
||||||
Interop support: standard stream/s -> Telemere."
|
Interop support: standard stream/s -> Telemere."
|
||||||
|
|
||||||
|
(:refer-clojure :exclude [binding])
|
||||||
(:require
|
(:require
|
||||||
[taoensso.encore :as enc :refer [have have?]]
|
[taoensso.encore :as enc :refer [binding have have?]]
|
||||||
[taoensso.telemere.impl :as impl]))
|
[taoensso.telemere.impl :as impl]))
|
||||||
|
|
||||||
(enc/defonce orig-*out* "Original `*out*` on ns load" *out*)
|
(enc/defonce orig-*out* "Original `*out*` on ns load" *out*)
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue