UNPKG

2.05 kBJavaScriptView Raw
1"use strict";
2
3
4//
5// This is copied from coralogix-bunyan-stream pacakge and altered to expose waitForFlush
6//
7
8
9var coralogix_logger_1 = require("coralogix-logger");
10var sev_map = {
11 10: coralogix_logger_1.Severity.debug,
12 30: coralogix_logger_1.Severity.info,
13 40: coralogix_logger_1.Severity.warning,
14 50: coralogix_logger_1.Severity.error,
15 60: coralogix_logger_1.Severity.critical,
16 20: coralogix_logger_1.Severity.debug
17};
18var CoralogixStream = (function () {
19 function CoralogixStream(options) {
20 if (!options)
21 options = {};
22 CoralogixStream.logger = this.logger = new coralogix_logger_1.CoralogixLogger(options.category);
23 }
24 CoralogixStream.waitForFlush = function() {
25 return CoralogixStream.logger.waitForFlush();
26 }
27 CoralogixStream.prototype.write = function (rec) {
28 var log = new coralogix_logger_1.Log();
29 log.severity = sev_map[rec.level];
30 log.category = rec.category;
31 if (rec.className)
32 log.className = rec.className;
33 if (rec.methodName)
34 log.methodName = rec.methodName;
35 if (rec.threadId)
36 log.threadId = rec.threadId;
37 log.text = this.removeStaticFields(rec);
38 this.logger.addLog(log);
39 };
40 CoralogixStream.prototype.removeStaticFields = function (json) {
41 delete json.threadId;
42 delete json.methodName;
43 delete json.className;
44 delete json.category;
45 return JSON.stringify(json, this.replaceErrors);
46 };
47 CoralogixStream.prototype.replaceErrors = function (key, value) {
48 if (value instanceof Error) {
49 var error = {};
50 Object.getOwnPropertyNames(value).forEach(function (key) {
51 error[key] = value[key];
52 });
53 return error;
54 }
55 return value;
56 };
57 CoralogixStream.configure = function (config) {
58 coralogix_logger_1.CoralogixLogger.configure(config);
59 };
60 return CoralogixStream;
61}());
62module.exports = { CoralogixStream }