taoensso.timbre.appenders.carmine

Carmine (Redis) appender. Requires https://github.com/ptaoussanis/carmine.

carmine-appender

(carmine-appender & [{:keys [conn-opts keyfn nentries-by-level], :or {keyfn default-keyfn, nentries-by-level {:trace 50, :debug 50, :info 50, :warn 100, :error 100, :fatal 100, :report 100}}}])
Returns a Carmine Redis appender (experimental, subject to change):
  * All raw logging args are preserved in serialized form (even Throwables!).
  * Only the most recent instance of each unique entry is kept (uniqueness
    determined by data-hash-fn).
  * Configurable number of entries to keep per logging level.
  * Log is just a value: a vector of Clojure maps: query+manipulate with
    standard seq fns: group-by hostname, sort/filter by ns & severity, explore
    exception stacktraces, filter by raw arguments, etc. Datomic and `core.logic`
    also offer interesting opportunities here.

See accompanying `query-entries` fn to return deserialized log entries.

default-keyfn

(default-keyfn level)

make-carmine-appender

(make-carmine-appender & [appender-merge opts])
DEPRECATED. Please use `carmine-appender` instead.

query-entries

(query-entries conn-opts level & [n asc? keyfn])
Alpha - subject to change!
Returns latest `n` log entries by level as an ordered vector of deserialized
maps. Normal sequence fns can be used to query/transform entries. Datomic and
core.logic are also useful!