- 19 Jan, 2016 1 commit
-
-
Mark Allen authored
See PR #306 for details. This is a backport.
-
- 15 Apr, 2015 1 commit
-
-
MaximMinin authored
-
- 22 Jan, 2015 3 commits
-
-
Andrew Thompson authored
-
Andrew Thompson authored
-
Andrew Thompson authored
-
- 17 Dec, 2014 1 commit
-
-
Luis Rascao authored
-
- 11 Feb, 2014 1 commit
-
-
Shane Howley authored
Fixed issue whereby element(1, ...) is called on every tuple nested inside a pretty printed record regardless of size. Modified unit test to test 0 size tuple case.
-
- 24 Jan, 2014 1 commit
-
-
Andrew Thompson authored
-
- 02 Sep, 2013 1 commit
-
-
Maxim Minin authored
-
- 13 Aug, 2013 1 commit
-
-
Steve Strong authored
-
- 19 Apr, 2013 1 commit
-
-
Andrew Thompson authored
-
- 09 Apr, 2013 1 commit
-
-
Pedram Nimreezi authored
Adds transparent event stream processing and statistics. A new 3-tuple trace is introduced as `{Key, Op, Value}`, but for backwards compatibility `{Key, Val}` implies `=` for `Op` and `{Key, '*'}` remains as is in the case of wildcards. A simplified query tree module is generated which reduces redundant selection conditions to minimize filtering overhead.
-
- 16 Mar, 2013 1 commit
-
-
Andrew Thompson authored
This is done via a combination of several things: * Make the loglevel that triggers a sync configurable * Make the delayed_write size and intervals configurable * Make the interval at which external rotation is checked for configurable * Store the timestamp a lager_msg was created inside the lager_msg To support these changes, several other things had to be modified: * lager_msg:timestamp now returns a timestamp * lager_msg:datetime was added to return the {date, time} of a message, like lager_msg:timestamp used to * The configuration syntax for file backends was changed to be of the form {lager_file_backend, proplist()} and the old syntax was deprecated Additionally, the defaults for the check_interval was raised from 'always' to 1 second, and the sync_interval was changed from 2 seconds to one second.
-
- 15 Mar, 2013 2 commits
-
-
Andrew Thompson authored
For persistant processes with some immutable metadata (riak vnode and the vnode ID, for example), implement lager:md/0 and lager:md/1 for getting/setting such metadata into the process dictionary. Such metadata is automatically included in any lager message metadata, so you can just set it in your init() function or whatever and not have to worry about passing the data around and using it in every lager call.
-
Andrew Thompson authored
Originally an idea that Dizzy forwarded to me from Tony Rogvall. Basicially all the work lager does gathering metadata and stuff is wrapped in a case statement that fails-fast if the message is definitely not going to be logged; the severity isn't currently being consumed and there's no traces installed. In my simple test, logging 1 million debug messages, when the debug level is not being consumed, goes from taking 2.99 seconds to 1.21 seconds with this change. Also, lager pre 1.0 actually had something similar to this, but it was removed during a refactor and never re-added.
-
- 14 Mar, 2013 1 commit
-
-
Andrew Thompson authored
-
- 13 Mar, 2013 1 commit
-
-
Andrew Thompson authored
-
- 08 Mar, 2013 1 commit
-
-
Andrew Thompson authored
In normal operation, there's no need for log messages to be synchronous. Its slower and introduces a global serialization point in the application. However, when in an overload condition, synchronous logging is good because it limits each process to at most 1 log message in flight. So, this change allows the gen_event at the core of lager to switch modes depending on the size of the gen_event's mailbox. It should provide better performance in the case of normal load, but it will also prevent unbounded mailbox growth if an overload occurs. The threshold at which the switch between async and sync is done is configured via the 'async_threshold' app env var.
-
- 05 Mar, 2013 1 commit
-
-
Ewan Mellor authored
Add add_trace_to_loglevel_config and update_loglevel_config. These two handle most of the updates to the loglevel config item, including the update of the overall logging mask. This makes minimum_loglevel private. This doesn't change any behavior -- it just a tidy-up.
-
- 21 Dec, 2012 1 commit
-
-
Andrew Thompson authored
-
- 20 Dec, 2012 2 commits
-
-
Andrew Thompson authored
-
Andrew Thompson authored
-
- 13 Dec, 2012 1 commit
-
-
Andrew Thompson authored
-
- 12 Dec, 2012 1 commit
-
-
Andrew Thompson authored
-
- 05 Dec, 2012 1 commit
-
-
Andrew Thompson authored
-
- 30 Nov, 2012 1 commit
-
-
Andrew Thompson authored
Also, adapt the rest of lager to use this bitmask as well.
-
- 28 Nov, 2012 1 commit
-
-
Andrew Thompson authored
-
- 14 Nov, 2012 1 commit
-
-
Andrew Thompson authored
This also removes the dependency on the syntax_tools and compiler applications, which interfered with lager's startup/shutdown order.
-
- 25 Oct, 2012 1 commit
-
-
Andrew Thompson authored
-
- 19 Oct, 2012 1 commit
-
-
Artem Teslenko authored
-
- 26 Sep, 2012 2 commits
-
-
Andrew Thompson authored
Helps with pattern matching.
-
Andrew Thompson authored
I didn't want the lager_log_message record being used across application boundaries, this will insulate other applications from any changes to the message type's internal structure.
-
- 25 Sep, 2012 2 commits
-
-
Andrew Thompson authored
-
Andrew Thompson authored
-
- 28 Aug, 2012 3 commits
-
-
Andrew Thompson authored
-
Andrew Thompson authored
Had to add a pseudo-ternary operator to the formatter to support this. Also allowed lager:log to log metadata.
-
Jason Wagner authored
Changed the messages sent to the backends to include metadata and separated formatting from the backend. Added documentation, fixed tests, and removed some unused code.
-
- 16 May, 2012 1 commit
-
-
Devin Torres authored
-
- 23 Apr, 2012 1 commit
-
-
Andrew Thompson authored
-
- 20 Apr, 2012 1 commit
-
-
Andrew Thompson authored
-