Pedram Nimreezi
95b3fb0c87
Implement event stream processing
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.
преди 12 години
Andrew Thompson
f4f3dd3817
Rewrite to use a bitmask to represent active loglevels
Also, adapt the rest of lager to use this bitmask as well.
преди 12 години
Andrew Thompson
a192bd9e91
Replace mochiglobal with a public ETS table
This also removes the dependency on the syntax_tools and compiler
applications, which interfered with lager's startup/shutdown order.
преди 12 години
Andrew Thompson
e04830b382
Tag lager_msg messages with a {log, ...} tuple
Helps with pattern matching.
преди 12 години
Andrew Thompson
180e09fd01
Use an opaque type with a module for accessors rather than a record
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.
преди 12 години
Andrew Thompson
12a784b18e
Time makes fools of us all
преди 12 години
Andrew Thompson
55283cc2c2
Make the default truncation limit a macro
преди 12 години
Andrew Thompson
05718792ae
Whitespace cleanups
преди 13 години
Jason Wagner
0415d21669
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.
преди 13 години
Andrew Thompson
d28e7c5f19
Initial attempt at a trace API, and a status() command
преди 13 години
Andrew Thompson
121c4c5241
Initial implementation of 'tracing'
преди 13 години
Andrew Thompson
d828c35f12
Fixup the tests after merging in the rotation code
преди 13 години
Andrew Thompson
116ee8d890
Try to preserve internal log messages generated before lager boots
If backends have a failure or something, don't discard the messages,
wait half a second and then try sending them again.
преди 13 години
Andrew Thompson
3fe861c348
Lots of tests for the file backend
преди 13 години
Andrew Thompson
ec61e88d8a
Make the dialyzer happy.
преди 14 години
Andrew Thompson
077f218cd9
Make logging not crash when lager is not running
преди 14 години
Andrew Thompson
5394a7d3fd
Add lager.hrl
преди 14 години