Commit Graph

68 Commits

Author SHA1 Message Date
Peter Taoussanis 0945b83009 Housekeeping: rename `utils/deep-merge` -> `utils/merge-deep` 2013-07-06 00:54:25 +07:00
Peter Taoussanis 634223bdbc Merge branch 'mongo' of github.com:emlyn/timbre into emlyn-mongo 2013-06-27 15:06:08 +07:00
Emlyn Corrin b7ec7ae71b Remove restriction on :throwable, default to all but :ap-config 2013-06-26 18:02:09 +01:00
Peter Taoussanis 25cc163c34 Tweak README 2013-06-22 17:43:56 +07:00
Peter Taoussanis f3d704bc45 Merge pull request #18 from emlyn/socket
TCP Socket Appender (emlyn)
2013-06-14 20:37:42 -07:00
Peter Taoussanis 71218f7086 Allow no-message throwable logging, use `str` for ex-data printing 2013-06-07 20:45:33 +07:00
Peter Taoussanis 5d4e5f2739 Fix ex-data separator 2013-06-07 20:22:00 +07:00
Peter Taoussanis eaa4495e49 Add `ex-data` output to `stacktrace` fn 2013-06-07 20:15:07 +07:00
Emlyn Corrin 7cfae88eb3 Add more default keys, allow setting write-concern 2013-06-05 18:19:18 +01:00
Emlyn Corrin e7bf5015e9 Make threads daemons to not block shutdown, add stacktrace, default to localhost only but allow :all 2013-06-05 16:45:59 +01:00
Peter Taoussanis 912dfb46d0 Fix: `log*` return value should be `nil`, not `true` 2013-06-05 20:16:29 +07:00
Emlyn Corrin 6dac0ec03e Add socket appender 2013-06-05 13:52:23 +01:00
Emlyn Corrin fff4a85b5d Add MongoDB appender 2013-06-05 13:06:11 +01:00
Peter Taoussanis 7b09d1a562 BREAKING: Refactor Timbre for integration with clojure.tools.logging & logf macros
BREAKING CHANGES:
* Custom appenders that rely on the :more argument will no longer function correctly.
* Stacktraces are no longer automatically generated at the `log`-macro level, but are
left as an appender implementation detail. A :throwable appender argument has been added
along with a `stacktrace` fn.

MIGRATION GUIDE:
* :message is now a string of all arguments as joined by `logp`/`logf`. Appenders that
need unjoined logging arguments (i.e. raw arguments as given to `logp`/`logf`) should
use the new :log-args vector.

MOTIVATION:
The :more argument was always kind of manky.

By joining logging arguments at the `log`-macro level, we simplify appender
implementations and allow the use of different joining strategies like `logp` and
`logf`.

This approach also fits better with the `tools.logging` API, allowing a cleaner
Logger implementation.
2013-06-01 19:29:57 +07:00
Peter Taoussanis 6fc6baee37 Rename appender argument: :max-message-per-msecs -> :limit-per-msecs (backwards compatible) 2013-06-01 19:29:57 +07:00
Peter Taoussanis c30ae5fbcc Housekeeping 2013-06-01 19:29:57 +07:00
Peter Taoussanis 7c29ce6852 Clean up appender documentation 2013-06-01 19:29:57 +07:00
Emlyn Corrin 0d1dfe6259 Remove extra newline for nicer diff 2013-04-20 08:55:05 +01:00
Emlyn Corrin 3302d17af6 Per-appender prefix-fns 2013-04-19 18:01:55 +01:00
Emlyn Corrin 48f8329dbb Add IRC appender 2013-04-19 14:28:02 +01:00
Peter Taoussanis 0dc4951db7 Fix EvalReader exception when *read-eval* is false (thanks ummels) 2013-04-14 16:30:19 +07:00
Peter Taoussanis 7935493a22 Remove unnecessary `set-config!` destructuring 2013-03-17 14:40:32 +07:00
Peter Taoussanis 03d2c0c242 nil logging level should be < :trace logging level 2013-03-16 14:30:05 +07:00
Peter Taoussanis 5864673b47 Housekeeping 2013-03-16 14:30:05 +07:00
Peter Taoussanis 17043d20b7 Catch UnknownHostException 2013-02-11 11:47:24 +07:00
Peter Taoussanis 27388879a4 Fix: remove `mapv` use in frequencies.clj (requires Clojure 1.4+) 2013-02-08 14:21:22 +07:00
Peter Taoussanis ff5ce760cf Housekeeping 2013-02-07 20:27:17 +07:00
Peter Taoussanis c7d59a570b Add experimental logging frequency counter (`utils/frequencies.clj`) 2013-02-07 18:11:46 +07:00
Peter Taoussanis 3258023105 Refactor profiling ns 2013-02-07 18:09:41 +07:00
Peter Taoussanis 9454e0f4ab Add `logged-future` 2013-02-06 00:37:12 +07:00
Peter Taoussanis 6c359427d9 Use ns as part of flood control message disambiguator 2013-02-05 23:35:14 +07:00
Peter Taoussanis 4184491719 Add middleware support, refactor appender decoration
* Appenders are now decorated via 2 separate mechanisms: a per-appender
  decorator (as before), and a new per-juxt (i.e. combined) decorator.
  The per-juxt wrapping provides a performance-conscious hook for
  higher-level facilities like the new middleware feature.

* Moved compile-time config wrapping from per-appender to per-juxt,
  improving performance.

* Fixed appender wrapper ordering.
2013-02-05 20:05:42 +07:00
Peter Taoussanis 210fe39b37 Add `spy` alias 2013-02-03 01:10:00 +07:00
Peter Taoussanis bbbaf036b5 Fix: `spy` double-evaluation 2013-02-03 01:10:00 +07:00
Peter Taoussanis a7b41a6f2d Add `middleware` dev notes 2013-02-03 00:55:23 +07:00
Peter Taoussanis 3c211afe62 Housekeeping 2013-01-29 16:57:28 +07:00
Peter Taoussanis 75778694ff Add `with-default-outs`, `with-err-as-out`, `log-errors`, `log-and-rethrow-errors` 2013-01-29 16:49:42 +07:00
Peter Taoussanis b1d60d1bee Swap `utils/round-to` arg order 2013-01-24 21:58:28 +07:00
Peter Taoussanis 222be9d48e Add `merge-config!` 2013-01-04 14:50:28 +07:00
Peter Taoussanis f23b59119d Update `utils/deep-merge-with` 2013-01-04 14:42:29 +07:00
Peter Taoussanis d8b35e14cc Label stacktraces in output 2013-01-03 23:37:18 +07:00
Peter Taoussanis d13b870799 Add string color utils 2013-01-03 23:37:18 +07:00
Peter Taoussanis 7c81fc58de Fix `config` docstring 2012-12-28 14:12:53 +07:00
Peter Taoussanis b6b447ca9a Print seconds to 1 decimal place 2012-12-16 19:22:10 +07:00
Peter Taoussanis b07c044004 Distinguish between wall-clock and accounted times 2012-12-16 19:03:11 +07:00
Peter Taoussanis d6bc6b2947 Rename 'total'->'time' 2012-12-16 18:45:01 +07:00
Peter Taoussanis fc51884472 Refactor valid logging-level checks, support non-const logging levels
The `assert-valid-logging-level` macro had the unfortunate side effect of
preventing the use of runtime-evaluated logging-levels.

To get around this without impacting performance, `assert-valid-logging-level`
has been removed and the validty checking moved to the (memoized) level
comparator.

This is cleaner, more flexible, and no slower.
2012-10-26 16:24:42 +07:00
Peter Taoussanis 92e31c7b7c Add simple file spit appender 2012-10-19 15:26:54 +07:00
Peter Taoussanis dc995c10ad Add `utils/deep-merge` 2012-10-19 15:05:24 +07:00
Peter Taoussanis 5750fc7c8b Fix `ap-config` bug 2012-10-19 15:04:42 +07:00