1 | minilog = require 'minilog'
|
2 | fs = require 'fs'
|
3 | filter = new minilog.Filter()
|
4 |
|
5 | default_filter = ->
|
6 | filter.allow /.*/, 'info'
|
7 | filter.allow /.*/, 'warn'
|
8 | filter.defaultResult = false
|
9 |
|
10 | quiet = ->
|
11 | filter.clear()
|
12 |
|
13 | verbose = (is_verbose) ->
|
14 | if is_verbose
|
15 | filter.clear()
|
16 | filter.allow /.*/, 'debug'
|
17 | else
|
18 | default_filter()
|
19 |
|
20 | init = () ->
|
21 | if process.env.LOGFILE
|
22 | minilog
|
23 | .pipe filter
|
24 | .pipe fs.createWriteStream(process.env.LOGFILE)
|
25 | else
|
26 | minilog
|
27 | .pipe filter
|
28 | .pipe minilog.backends.nodeConsole.formatNpm
|
29 | .pipe minilog.backends.nodeConsole
|
30 |
|
31 | default_filter()
|
32 |
|
33 | module.exports =
|
34 | create: minilog,
|
35 | verbose: verbose,
|
36 | quiet: quiet
|
37 |
|
38 | init()
|