1 | var winston = require('winston'),
|
2 | paths = require('../configs/paths'),
|
3 | config = require('../configs/config')
|
4 |
|
5 | require('winston-email');
|
6 |
|
7 |
|
8 | module.exports = () => {
|
9 | var loggerConfig = {
|
10 |
|
11 | levels: {
|
12 | debug: 7,
|
13 | info: 6,
|
14 | notice: 5,
|
15 | warning: 4,
|
16 | error: 3,
|
17 | critical: 2,
|
18 | alert: 1,
|
19 | emergency: 0
|
20 | },
|
21 | colors: {
|
22 | debug: 'green',
|
23 | notice: 'white',
|
24 | info: 'blue',
|
25 | warning: 'yellow',
|
26 | error: 'red',
|
27 | critical: 'bgBlack',
|
28 | alert: 'bgYellow',
|
29 | emergency: 'bgRed'
|
30 | },
|
31 | transports: [
|
32 | new(winston.transports.Console)({
|
33 | level: 'debug',
|
34 | colorize: true
|
35 | }),
|
36 | new(winston.transports.File)({
|
37 | name: 'notice-file',
|
38 | filename: 'logs/info.log',
|
39 | level: 'info'
|
40 | }),
|
41 | new(winston.transports.File)({
|
42 | name: 'emergency-file',
|
43 | filename: 'logs/error.log',
|
44 | level: 'error'
|
45 | })
|
46 | ]
|
47 | };
|
48 |
|
49 |
|
50 | if (config('logs_mail')) {
|
51 | loggerConfig.transports.push(new(winston.transports.Email)(config('logs_mail')));
|
52 | }
|
53 |
|
54 |
|
55 | return new(winston.Logger)(loggerConfig);
|
56 | } |
\ | No newline at end of file |