UNPKG

1.44 kBJavaScriptView Raw
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
13var Stream = require('stream');
14require('colors');
15// Uncomment this and below for timestamp
16//var Moment = require('moment');
17
18var stream = new Stream();
19stream.writable = true;
20
21var 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
48stream.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
69module.exports = stream;
70