Changelog
1.8.1
Changelog
1.8.0
Note: Bad release. An addition in this release broke 'rotating-file' usage. Use 1.8.1 or later.
bunyan -p ...
(i.e. DTrace integration) on node
4.x and 5.x.Changelog
1.7.1
[issue #332, pull #355] Ensure stream for type='stream' stream is a writable stream. (By Michael Nisi.)
[issue #344] Fix "rotating-file" Bunyan streams to not miss rotations when configured
for a period greater than approximately 25 days. Before this there was an issue
where periods greater than node.js's maximum setTimeout
length would fail to rotate.
(By Martijn Schrage.)
[issue #234, pull #345] Improve bunyan
CLI rendering of "res" field
HTTP responses to not show two blank lines for an empty body.
(By Michael Nisi.)
Changelog
1.7.0
[pull #311, #302, #310] Improve the runtime environment detection to fix running under NW.js. Contributions by Adam Lynch, Jeremy Ruppel, and Aleksey Timchenko.
[pull #318] Add reemitErrorEvents
optional boolean for streams added to a
Bunyan logger to control whether an "error" event on the stream will be
re-emitted on the Logger
instance.
var log = bunyan.createLogger({
name: 'foo',
streams: [
{
type: 'raw',
stream: new MyCustomStream(),
reemitErrorEvents: true
}
]
});
Before this change, "error" events were re-emitted on file
streams only. The new
behaviour is as follows:
reemitErrorEvents
not specified: file
streams will re-emit error events
on the Logger instance.reemitErrorEvents: true
: error events will be re-emitted on the Logger
for any stream with a .on()
function -- which includes file streams,
process.stdout/stderr, and any object that inherits from EventEmitter.reemitErrorEvents: false
: error events will not be re-emitted for any
streams.Dev Note: Bunyan Logger
objects don't currently have a .close()
method
in which registered error event handlers can be unregistered. That means
that a (presumably rare) situation where code adds dozens of Bunyan Logger
streams to, e.g. process.stdout, and with reemitErrorEvents: true
, could
result in leaking Logger objects.
Original work for allowing "error" re-emitting on non-file streams is by Marc Udoff in pull #318.
Changelog
1.6.0
[pull #304, issue #245] Use [Moment.js][momentjs.com] library to handle
bunyan
CLI time formatting in some cases, especially to fix display of
local time. It is now required for local time formatting (i.e. bunyan -L
or bunyan --time local
). (By David M. Lee.)
[pull #252] Fix errant client_res={}
in bunyan
CLI rendering, and avoid
extra newlines in client_req
rendering in some cases. (By Thomas Heymann.)
[pull #291, issue #303] Fix LOG.child(...)
to not override the "hostname"
field of the parent. A use case is when one manually sets "hostname" to
something other than os.hostname()
. (By github.com/Cactusbone.)
[issue #325] Allow one to set level: 0
in createLogger
to turn on
logging for all levels. (Adapted from #336 by github.com/sometimesalready.)
Add guards (to resolveLevel
) so that all "level" values are validated.
Before this, a bogus level like "foo" or -12 or ['some', 'array']
would
silently be accepted -- with undefined results.
Doc updates for #340 and #305.
Update make test
to test against node 5, 4, 0.12 and 0.10.
Changelog
1.5.0
Note: Bad release. The addition of 'use strict';
broke Bunyan's src: true
feature. Use 1.5.1 instead.
Changelog
1.4.0
(Bumping minor ver b/c I'm wary of dtrace-provider changes. :)