1 | /********************************************************* {COPYRIGHT-TOP} ***
|
2 | * Licensed Materials - Property of IBM
|
3 | * 5725-Z22, 5725-Z63, 5725-U33, 5725-Z63
|
4 | *
|
5 | * (C) Copyright IBM Corporation 2016, 2017
|
6 | *
|
7 | * All Rights Reserved.
|
8 | * US Government Users Restricted Rights - Use, duplication or disclosure
|
9 | * restricted by GSA ADP Schedule Contract with IBM Corp.
|
10 | ********************************************************** {COPYRIGHT-END} **/
|
11 | // Node module: apiconnect-cli-logger
|
12 |
|
13 | var Stream = require('stream');
|
14 | require('colors');
|
15 | // Uncomment this and below for timestamp
|
16 | //var Moment = require('moment');
|
17 |
|
18 | var stream = new Stream();
|
19 | stream.writable = true;
|
20 |
|
21 | var colorSet = {
|
22 | 60: {
|
23 | color: 'magenta',
|
24 | name: 'Fatal:',
|
25 | },
|
26 | 50: {
|
27 | color: 'red',
|
28 | name: 'Error:',
|
29 | },
|
30 | 40: {
|
31 | color: 'yellow',
|
32 | name: ' Warn:',
|
33 | },
|
34 | 30: {
|
35 | color: 'green',
|
36 | name: ' Info:',
|
37 | },
|
38 | 20: {
|
39 | color: 'cyan',
|
40 | name: 'Debug:',
|
41 | },
|
42 | 10: {
|
43 | color: 'grey',
|
44 | name: 'Trace:',
|
45 | },
|
46 | };
|
47 |
|
48 | stream.write = function(objStr) {
|
49 | var obj = JSON.parse(objStr);
|
50 | var info = '';
|
51 | var output;
|
52 |
|
53 | var color = colorSet[obj.level].color;
|
54 | var levelName = colorSet[obj.level].name;
|
55 | // Uncomment for timestamp
|
56 | //var time = obj.time;
|
57 | //info += Moment(time).format('hh:mm:ss');
|
58 | //info += ' ';
|
59 | info += levelName[color];
|
60 | info += ' ';
|
61 |
|
62 | info += obj.msg;
|
63 |
|
64 | output = info;
|
65 |
|
66 | console.log(output);
|
67 | };
|
68 |
|
69 | module.exports = stream;
|
70 |
|