Andrew Thompson
acb8cf596f
Add a test for async_threshold
12 anos atrás
Andrew Thompson
5b3fae60b1
Cleanups suggested by @mshonle
12 anos atrás
Andrew Thompson
cf89804ced
Switch between gen_event notify/sync_notify based on message queue length
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.
12 anos atrás
Andrew Thompson
7993c8f8a2
Merge pull request #112 from ewanmellor/non-atom-levels
Improve lager_console_backend to support non-atom output log levels.
12 anos atrás
Ewan Mellor
4e3ea7ba98
Improve lager_console_backend to support non-atom output log levels.
This supports forms such as "!notice" for configuring the output
log level (using the config handling changes from 7aa316902e
).
12 anos atrás
Andrew Thompson
467204dbbf
Merge pull request #108 from basho/adt-iolist-printing
Lager doesn't print iolists with ~s right
12 anos atrás
Andrew Thompson
c8eed35184
Remove broken code for stripping square brackets
12 anos atrás
Andrew Thompson
2a8706bbf6
Merge pull request #54 from basho/adt-variable-arguments
Parse transform can't handle `Attr' as a variable
12 anos atrás
Andrew Thompson
80e53076fc
Fix some bugs uncovered in review
12 anos atrás
Andrew Thompson
b3428c89bc
Merge pull request #103 from basho/adt-lager-registered-procs
Empty registered processes section in lager.app.src.
12 anos atrás
Andrew Thompson
2bb8feb6b0
Fiddle with test timeouts to accomodate slower machines
12 anos atrás
Andrew Thompson
0ec0d9055b
Also allow list comps, function calls and record fields as lager arguments
12 anos atrás
Andrew Thompson
95fdf935b9
Support variables as arguments to lager:info and friends
As long as *one* of the arguments is a literal, lager can figure out
what you're trying to do and (re)arrange the arguments as necessary.
12 anos atrás
Andrew Thompson
932b482e4a
Support printing iolists with ~s
12 anos atrás
Andrew Thompson
e749242087
Merge pull request #105 from basho/adt-fix-tracing
Tracing without using parse transform.
12 anos atrás
Andrew Thompson
24d17d05fa
Fix for loglevel none in status
12 anos atrás
Andrew Thompson
351e482735
File backends started as part of a trace have a loglevel of 'none'
12 anos atrás
Andrew Thompson
c8096302aa
Fix a regression about setting loglevel to 'none'
12 anos atrás
Andrew Thompson
069e553f1d
Fix a couple bugs in tracing
12 anos atrás
Andrew Thompson
3162ad7f6b
Merge pull request #104 from tsloughter/error_logger_whitelist
add whitelist of error_logger handlers not to delete when error_logger_r...
12 anos atrás
Tristan Sloughter
10059b60ae
add whitelist of error_logger handlers not to delete when error_logger_redirect is true
12 anos atrás
Andrew Thompson
7986ec43a1
A sacrifice to the dialyzer god
12 anos atrás
Andrew Thompson
3d429a33f3
Merge branch 'adt-application-metadata'
12 anos atrás
Andrew Thompson
0ed603bd58
Merge branch 'adt-syslog-comparison-flags'
12 anos atrás
Andrew Thompson
c3fc3c4e24
Add tests, fix some bugs & fix dialyzer specs
12 anos atrás
Andrew Thompson
9b73d461d0
Document the registered process in the .app file
This helps systools detect registered name clashes
12 anos atrás
Andrew Thompson
3bf2475952
Merge branch 'adt-ets-config'
12 anos atrás
Andrew Thompson
2b51f7b4b5
Merge pull request #100 from basho/adt-record-printing
Support pretty printing records found in a module at compile time
12 anos atrás
Andrew Thompson
1074416140
Return Default if lager_config:get/2 crashes
12 anos atrás
Andrew Thompson
dda46da731
Merge pull request #102 from basho/adt-backend-id
Support backend modules defining their own gen_event handler ID
12 anos atrás
Andrew Thompson
5cfaba3d31
Merge pull request #101 from basho/adt-format-errors
Reject invalid format strings more aggressively
12 anos atrás
Andrew Thompson
f566318bdc
Add some more record printing tests and fix a bug
12 anos atrás
Andrew Thompson
86c7c620bc
Lager master will become lager 2.0
12 anos atrás
Andrew Thompson
da4e0cfa84
Support backend modules defining their own gen_event handler ID
12 anos atrás
Andrew Thompson
ecebfe4269
Reject invalid format strings more aggressively
12 anos atrás
Andrew Thompson
9bd0a411a3
Support pretty printing records found in a module at compile time
12 anos atrás
Andrew Thompson
45f833e5db
Attempt to determine application at compile time and store in metadata
12 anos atrás
Andrew Thompson
8d353aab65
Merge pull request #98 from gotthardp/no_macro_overload2
BUGFIX: Avoid overloading the LOG macro.
12 anos atrás
Petr Gotthard
1c7a29f4fc
BUGFIX: Avoid overloading the LOG macro.
12 anos atrás
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 anos atrás
Andrew Thompson
bf1efd0573
Merge pull request #81 from ypaq/master
Added node to metadata in parse transfrom
12 anos atrás
Andrew Thompson
67bce42bb8
Add syslog comparison support to file and console backends
12 anos atrás
Andrew Thompson
f2f08d13fa
Merge pull request #85 from blinkov/master
Add "SMTP Support" section to README.org
12 anos atrás
Andrew Thompson
ea87dd90aa
Merge pull request #84 from ates/master
Unnecessary debug message
12 anos atrás
Andrew Thompson
464644836f
Merge pull request #92 from lukyanov/file_backend_formatter_fix2
Fix custom formatter spec for lager_file_backend (version 2)
12 anos atrás
snaky
9151da2306
Fix custom formatter spec for lager_file_backend (version 2)
12 anos atrás
Andrew Thompson
7aa316902e
Initial work on syslog style comparison flags for loglevels
12 anos atrás
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 anos atrás
Ivan Blinkov
abc11b2f04
Add "SMTP Support" section to README.org
12 anos atrás
Andrew Thompson
d648264942
Pid can sometimes be 'emulator', turns out
12 anos atrás