Added bebot logger.
This commit is contained in:
parent
7ff8a393c0
commit
bdedb3028d
2
deps.edn
2
deps.edn
|
@ -8,7 +8,7 @@
|
||||||
|
|
||||||
org.fudo/fudo-clojure {
|
org.fudo/fudo-clojure {
|
||||||
:git/url "https://git.fudo.org/fudo-public/fudo-clojure.git"
|
:git/url "https://git.fudo.org/fudo-public/fudo-clojure.git"
|
||||||
:sha "1312a2805616b265ed4c89ef6216f300a7a7a155"
|
:sha "9775e301714b785c27b23664b0d89e379bdca27e"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
:aliases {
|
:aliases {
|
||||||
|
|
|
@ -0,0 +1,28 @@
|
||||||
|
(ns bebot.logger
|
||||||
|
(:require [bebot.api.client :as client]
|
||||||
|
[bebot.api.channel :as chan]
|
||||||
|
[bebot.client :refer [connect]]
|
||||||
|
[fudo-clojure.result :refer [let-result unwrap success]]
|
||||||
|
[fudo-clojure.logging :as log]))
|
||||||
|
|
||||||
|
(defrecord MatterLogger [channel verbosity]
|
||||||
|
log/Logger
|
||||||
|
(debug! [_ msg] (when (= :info @verbosity
|
||||||
|
(chan/send-post! channel (str "DEBUG: " msg)))))
|
||||||
|
(warn! [_ msg] (throw (ex-info "Not Implemented!" {})))
|
||||||
|
(error! [_ msg] (throw (ex-info "Not Implemented!" {})))
|
||||||
|
(fatal! [_ msg] (throw (ex-info "Not Implemented!" {})))
|
||||||
|
|
||||||
|
(info! [_ msg] (when (= :info @verbosity)
|
||||||
|
(chan/send-post! channel msg)))
|
||||||
|
(notify! [_ msg] (when (or (= :notify @verbosity)
|
||||||
|
(= :info @verbosity))
|
||||||
|
(chan/send-post! channel msg)))
|
||||||
|
(alert! [_ msg] (chan/send-post! channel msg)))
|
||||||
|
|
||||||
|
(defn make-logger [url access-token channel-id & {:keys [verbosity]
|
||||||
|
:or {verbosity :info}}]
|
||||||
|
(unwrap
|
||||||
|
(let-result [conn (connect url access-token)
|
||||||
|
chan (client/open-channel! conn channel-id)]
|
||||||
|
(success (->MatterLogger chan (atom verbosity))))))
|
Loading…
Reference in New Issue