(add-bulk {:keys [meta template] :as journal} entries)adds multiple entries to the journal
adds multiple entries to the journal
(add-entry {:keys [meta template] :as journal} entry)adds an entry to the journal
(-> (journal {:meta {:head {:range [0 3]}}}) (add-entry {:start 1 :output {:value 1}}) journal-info) => (contains-in {:id string? :order :desc, :count 1, :duration "0ms", :template [:output.value :start], :head [{:start 1, :output.value 1, :s/time string?}]})
adds an entry to the journal
(-> (journal {:meta {:head {:range [0 3]}}})
(add-entry {:start 1 :output {:value 1}})
journal-info)
=> (contains-in {:id string?
:order :desc, :count 1,
:duration "0ms",
:template [:output.value :start],
:head [{:start 1, :output.value 1, :s/time string?}]})(create-template entry)creates a template for entry
creates a template for entry
(derive {:keys [meta] :as journal} {:keys [range sample transform] :as params})derives the journal given a select statement
(derive -jnl- {:range [:1m :15m] :sample 2000 :transform {:interval :0.1s :time {:aggregate :first} :default {:aggregate :mean :sample 3}}})
derives the journal given a select statement
(derive -jnl- {:range [:1m :15m]
:sample 2000
:transform {:interval :0.1s
:time {:aggregate :first}
:default {:aggregate :mean :sample 3}}})(journal)(journal {:keys [id meta entries previous] :as m :or {id (f/sid)}})creates a new journal
(journal {:meta {:time {:unit :s :format "HH:mm:ss"} :entry {:flatten false} :head {:range [0 3]}}})
creates a new journal
(journal {:meta {:time {:unit :s :format "HH:mm:ss"}
:entry {:flatten false}
:head {:range [0 3]}}})(merge)(merge j0)(merge j0 j1)merges two journals of the same type together ^:hiddene
(-> ((merge (derive -jnl- {:range [:1m :3m] :transform {:interval 1 :time {:aggregate :middle} :default {:aggregate :mean :sample 3}}}) (derive -jnl- {:range [:10m -1] :transform {:interval :5s :time {:aggregate :first} :default {:aggregate :mean}}})) {:sample :0.1s :transform {:interval :1s :time {:aggregate :first :fn #(long (/ % 100))} :custom [{:keys [:output.value] :aggregate :random :fn #(long (* % 100))}]} :series [{:data '(:start :output.value) :s/meta {:title "Output 1" :with :lines}}]}))
merges two journals of the same type together ^:hiddene
(-> ((merge (derive -jnl- {:range [:1m :3m]
:transform {:interval 1
:time {:aggregate :middle}
:default {:aggregate :mean :sample 3}}})
(derive -jnl- {:range [:10m -1]
:transform {:interval :5s
:time {:aggregate :first}
:default {:aggregate :mean}}}))
{:sample :0.1s
:transform {:interval :1s
:time {:aggregate :first
:fn #(long (/ % 100))}
:custom [{:keys [:output.value]
:aggregate :random
:fn #(long (* % 100))}]}
:series [{:data '(:start :output.value)
:s/meta {:title "Output 1" :with :lines}}]}))(process arr {:keys [time transform computes] :as opts})processes time series
processes time series
(select journal)(select {:keys [meta] :as journal}
{:keys [range sample transform series template compute]
:or {range :all}})selects data ferom the journal
(def -jnl- (->> [0 (journal {:meta {:time {:key :start :order :desc} :head {:range [0 3]} :hide #{:meta :template :id}}})] (iterate (fn [[t journal]] (let [t (+ t 1000000000 (rand-int 100000000))] [t (add-entry journal {:start t :output {:value (Math/sin (+ (/ t 100000000000) (rand)))}})]))) (map second) (take 1000) (last)))
(select -jnl- {:range [:1m :5m] :sample 10}) => (fn [entries] (= 10 (count entries)))
(first (select -jnl- {:range [:1m :5m] :sample 10})) => (contains {:start integer? :output.value number?})
selects data ferom the journal
(def -jnl- (->> [0 (journal {:meta {:time {:key :start :order :desc}
:head {:range [0 3]}
:hide #{:meta :template :id}}})]
(iterate (fn [[t journal]]
(let [t (+ t 1000000000 (rand-int 100000000))]
[t (add-entry journal {:start t
:output {:value (Math/sin
(+ (/ t 100000000000)
(rand)))}})])))
(map second)
(take 1000)
(last)))
(select -jnl- {:range [:1m :5m] :sample 10})
=> (fn [entries]
(= 10 (count entries)))
(first (select -jnl- {:range [:1m :5m] :sample 10}))
=> (contains {:start integer? :output.value number?})(update-meta journal meta)updates journal meta. used for display
updates journal meta. used for display
cljdoc builds & hosts documentation for Clojure/Script libraries
| Ctrl+k | Jump to recent docs |
| ← | Move to previous article |
| → | Move to next article |
| Ctrl+/ | Jump to the search field |