Changes to config structure:
* [:shared-appender-config :timestamp-pattern] -> :timestamp-pattern
* [:shared-appender-config :locale] -> :timestamp-locale
* Add :prefix-fn
Motivation: timestamp options aren't actually config intended for
appenders. Having them in :shared-appender-config was unnecessarily
confusing.
The addition of :prefix-fn allows full control of prefix strings in a
way that carries over automatically to all appenders. Previously,
adjusting prefix text required modifying appender fns.
Changes to default appenders:
* Drop [:appenders :standard-out]
* [:appenders :standard-out-or-err] -> [:appenders :standard-out]
Motivation: the :standard-out-or-err appender was already the default
anyway, and the presence of the :standard-out appender was just
confusing.
All future appenders that depend on an external library will follow this pattern, allowing the
flexibility to add more diverse appenders without the worry of bloating Timbre core or Timbre's
dependencies.
See updated README example for how to include standard email appender.
* Added check for valid logging level for 'set-level!' and for logging fns.
* Added ':report' level above fatal.
* Fixed arglists for 'log' macro.
* A few other bits of house-keeping.
Signed-off-by: Peter Taoussanis <ptaoussanis@gmail.com>
* Updated .gitignore
* Added copyright info to README.
* Added Clojure 1.3 dependency to project.clj.
* Cleaned up some arg names in core.clj.
Signed-off-by: Peter Taoussanis <p.taoussanis@gmail.com>
* Removed 'timestamp-fn' from appender args and replaced with ready-formatted 'timestamp' for simpler appender writing.
* Fixed appender wrapping function bug that was unnecessarily recomputing shared args and timestamp function at runtime.
Signed-off-by: Peter Taoussanis <p.taoussanis@gmail.com>
* E.g. there was a problem when changing shared-appender config. The new approach is more robust.
Signed-off-by: Peter Taoussanis <p.taoussanis@gmail.com>