@beforeyoubid/logger-adapter 2.0.2 → 2.0.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -51,6 +51,8 @@ can also helps you out as well.
51
51
  - Also moved `createLoggerObject()` into this shared module so it's easier to use and prefix message before returning
52
52
  the actual logger object. e.g. `createLoggerObject(`[LOG-PREFIX]`);`
53
53
  - ![V2 Diagram](./docs/v2-diagram.png)
54
+ - **v2.0.3 onwards**
55
+ - Adding generic `MetricLogger`
54
56
 
55
57
  ## 1) Use Console Logger
56
58
 
@@ -165,7 +167,7 @@ module so they look like this. ![Log prefix](./docs/log-prefix.png)
165
167
  ```
166
168
  import { getLoggerObject } from '@beforeyoubid/logger-adapter';
167
169
 
168
- const logger = getLoggerObject('[CoreLogicListingProvider]');
170
+ const logger = getLoggerObject('[Your Custom Prefix]');
169
171
 
170
172
  logger.info('the usual log string...')
171
173
  ```
@@ -173,3 +175,26 @@ module so they look like this. ![Log prefix](./docs/log-prefix.png)
173
175
  **Notes that** this function just wraps the original Winston logger instance your normally access from this line.
174
176
  `import { logger } from '@beforeyoubid/logger-adapter';`. It only wraps and add the prefix the log line for you and
175
177
  returns with debug, info, warn, error functions.
178
+
179
+ ## MetricLogger
180
+
181
+ **Motivation:**
182
+
183
+ - Mezmo is one of the leading telemetry tools for logging and debugging
184
+ - We can also utilise Mezmo to collect, process and display business metrics based on log messages without extra fee on
185
+ the existing plan
186
+ - The setup is very simple and Mezmo does this out of the box
187
+
188
+ **How does it work?**
189
+
190
+ - When a JSON string (e.g. `JSON.stringify(jsonObject)`) is sent to Mezmo, Mezmo is smart enough to parse this into a
191
+ json object and index them automatically
192
+ - With this process, we can search for any value in the object and/or create a dashboard on any specific metric we see
193
+ fit
194
+ - The only drawback, the data retention is usually limited to 30 days as per the data retention policy on the account
195
+
196
+ **How to use:**
197
+
198
+ - [Sample Metric](./samples/metricLogger.sample.ts)
199
+ - [Sample 1](./samples/metricLogger1.sample.ts)
200
+ - [Sample 2](./samples/metricLogger2.sample.ts)
@@ -0,0 +1,193 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ var _index = require("../index");
6
+ var _logger = require("../../logger");
7
+ function _defineProperty(obj, key, value) {
8
+ if (key in obj) {
9
+ Object.defineProperty(obj, key, {
10
+ value: value,
11
+ enumerable: true,
12
+ configurable: true,
13
+ writable: true
14
+ });
15
+ } else {
16
+ obj[key] = value;
17
+ }
18
+ return obj;
19
+ }
20
+ function _objectSpread(target) {
21
+ for(var i = 1; i < arguments.length; i++){
22
+ var source = arguments[i] != null ? arguments[i] : {};
23
+ var ownKeys = Object.keys(source);
24
+ if (typeof Object.getOwnPropertySymbols === "function") {
25
+ ownKeys = ownKeys.concat(Object.getOwnPropertySymbols(source).filter(function(sym) {
26
+ return Object.getOwnPropertyDescriptor(source, sym).enumerable;
27
+ }));
28
+ }
29
+ ownKeys.forEach(function(key) {
30
+ _defineProperty(target, key, source[key]);
31
+ });
32
+ }
33
+ return target;
34
+ }
35
+ function ownKeys(object, enumerableOnly) {
36
+ var keys = Object.keys(object);
37
+ if (Object.getOwnPropertySymbols) {
38
+ var symbols = Object.getOwnPropertySymbols(object);
39
+ if (enumerableOnly) {
40
+ symbols = symbols.filter(function(sym) {
41
+ return Object.getOwnPropertyDescriptor(object, sym).enumerable;
42
+ });
43
+ }
44
+ keys.push.apply(keys, symbols);
45
+ }
46
+ return keys;
47
+ }
48
+ function _objectSpreadProps(target, source) {
49
+ source = source != null ? source : {};
50
+ if (Object.getOwnPropertyDescriptors) {
51
+ Object.defineProperties(target, Object.getOwnPropertyDescriptors(source));
52
+ } else {
53
+ ownKeys(Object(source)).forEach(function(key) {
54
+ Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));
55
+ });
56
+ }
57
+ return target;
58
+ }
59
+ jest.mock("../../logger", function() {
60
+ return {
61
+ logger: {
62
+ info: jest.fn()
63
+ }
64
+ };
65
+ });
66
+ describe("MetricLogger", function() {
67
+ var defaultMetric = {
68
+ req: {
69
+ type: "myType",
70
+ userId: "my-user-id"
71
+ },
72
+ res: {
73
+ isSuccessful: true,
74
+ errorCode: "",
75
+ count: 10
76
+ }
77
+ };
78
+ describe("setMetric() - extended metric type", function() {
79
+ it("should set metric property", function() {
80
+ var metricLogger = new _index.MetricLogger(defaultMetric, true, _logger.logger);
81
+ var expectedUserId = "another-user-id";
82
+ var expectedResult = _objectSpreadProps(_objectSpread({}, defaultMetric), {
83
+ req: _objectSpreadProps(_objectSpread({}, defaultMetric.req), {
84
+ userId: expectedUserId
85
+ })
86
+ });
87
+ metricLogger.setMetric("req.userId", expectedUserId);
88
+ var result = metricLogger.getMetric();
89
+ expect(result.req.userId).toEqual(expectedUserId);
90
+ expect(result).toEqual(expectedResult);
91
+ });
92
+ it("should allow to set metrics", function() {
93
+ var metricLogger = new _index.MetricLogger(defaultMetric, true, _logger.logger);
94
+ var expectedUserId = "another-user-id";
95
+ var newCount = 20;
96
+ var expectedResult = {
97
+ req: _objectSpreadProps(_objectSpread({}, defaultMetric.req), {
98
+ userId: expectedUserId
99
+ }),
100
+ res: _objectSpreadProps(_objectSpread({}, defaultMetric.res), {
101
+ count: newCount
102
+ })
103
+ };
104
+ metricLogger.setMetric("req.userId", expectedUserId);
105
+ metricLogger.setMetric("res.count", newCount);
106
+ var result = metricLogger.getMetric();
107
+ expect(result.req.userId).toEqual(expectedUserId);
108
+ expect(result).toEqual(expectedResult);
109
+ });
110
+ it("should allow to set custom multi-layer metrics", function() {
111
+ var nestedDefaultMetric = _objectSpreadProps(_objectSpread({}, defaultMetric), {
112
+ res: _objectSpreadProps(_objectSpread({}, defaultMetric.res), {
113
+ customObject: {
114
+ someKey: "some-key",
115
+ someValue: "some-value"
116
+ }
117
+ })
118
+ });
119
+ var metricLogger = new _index.MetricLogger(nestedDefaultMetric, true, _logger.logger);
120
+ var expectedSomeKey = "new-key";
121
+ var expectedSomeValue = "new-value";
122
+ var expectedResult = _objectSpreadProps(_objectSpread({}, nestedDefaultMetric), {
123
+ res: _objectSpreadProps(_objectSpread({}, defaultMetric.res), {
124
+ customObject: {
125
+ someKey: expectedSomeKey,
126
+ someValue: expectedSomeValue
127
+ }
128
+ })
129
+ });
130
+ metricLogger.setMetric("res.customObject.someKey", expectedSomeKey);
131
+ metricLogger.setMetric("res.customObject.someValue", expectedSomeValue);
132
+ var result = metricLogger.getMetric();
133
+ expect(result).toEqual(expectedResult);
134
+ });
135
+ });
136
+ describe("setMetric() - custom metric type", function() {
137
+ it("should be able to handle custom metric", function() {
138
+ var myDefaultMetric = {
139
+ productType: "myType",
140
+ count: 10
141
+ };
142
+ var metricLogger = new _index.MetricLogger(myDefaultMetric, true, _logger.logger);
143
+ var expectedProductType = "anotherType";
144
+ var expectedCount = 100;
145
+ metricLogger.setMetric("productType", expectedProductType);
146
+ metricLogger.setMetric("count", expectedCount);
147
+ var result = metricLogger.getMetric();
148
+ expect(result.productType).toEqual(expectedProductType);
149
+ expect(result.count).toEqual(expectedCount);
150
+ });
151
+ });
152
+ describe("success()", function() {
153
+ it("should set success response", function() {
154
+ var metricLogger = new _index.MetricLogger(defaultMetric, true, _logger.logger);
155
+ var expectedUserId = "another-user-id";
156
+ var expectedResult = _objectSpreadProps(_objectSpread({}, defaultMetric), {
157
+ req: _objectSpreadProps(_objectSpread({}, defaultMetric.req), {
158
+ userId: expectedUserId,
159
+ isSuccessful: true,
160
+ errorCode: ""
161
+ })
162
+ });
163
+ metricLogger.setMetric("req.userId", expectedUserId);
164
+ var result = metricLogger.getMetric();
165
+ expect(result.req.userId).toEqual(expectedUserId);
166
+ expect(result.res.isSuccessful).toEqual(expectedResult.res.isSuccessful);
167
+ expect(result.res.errorCode).toEqual(expectedResult.res.errorCode);
168
+ });
169
+ });
170
+ describe("error()", function() {
171
+ it("should set error response", function() {
172
+ var metricLogger = new _index.MetricLogger(defaultMetric, true, _logger.logger);
173
+ var expectedUserId = "another-user-id";
174
+ var expectedResult = {
175
+ req: _objectSpreadProps(_objectSpread({}, defaultMetric.req), {
176
+ userId: expectedUserId
177
+ }),
178
+ res: _objectSpreadProps(_objectSpread({}, defaultMetric.res), {
179
+ isSuccessful: false,
180
+ errorCode: "some-error-code"
181
+ })
182
+ };
183
+ metricLogger.error("some-error-code");
184
+ metricLogger.setMetric("res.isSuccessful", false);
185
+ var result = metricLogger.getMetric();
186
+ expect(result.req.userId).toEqual(expectedUserId);
187
+ expect(result.res.isSuccessful).toEqual(expectedResult.res.isSuccessful);
188
+ expect(result.res.errorCode).toEqual(expectedResult.res.errorCode);
189
+ });
190
+ });
191
+ });
192
+
193
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9NZXRyaWNMb2dnZXIvX190ZXN0c19fL2luZGV4LnNwZWMudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTWV0cmljTG9nZ2VyIH0gZnJvbSAnLi4vaW5kZXgnO1xuaW1wb3J0IHR5cGUgeyBCYXNpY01ldHJpYywgQmFzaWNNZXRyaWNSZXEsIEJhc2ljTWV0cmljUmVzIH0gZnJvbSAnLi4vdHlwZXMnO1xuaW1wb3J0IHsgbG9nZ2VyIH0gZnJvbSAnLi4vLi4vbG9nZ2VyJztcbmplc3QubW9jaygnLi4vLi4vbG9nZ2VyJywgKCkgPT4gKHtcbiAgbG9nZ2VyOiB7XG4gICAgaW5mbzogamVzdC5mbigpLFxuICB9LFxufSkpO1xuXG50eXBlIE15UmVxTWV0cmljID0gQmFzaWNNZXRyaWNSZXEgJiB7XG4gIHVzZXJJZDogc3RyaW5nO1xufTtcblxudHlwZSBNeVJlc01ldHJpYyA9IEJhc2ljTWV0cmljUmVzICYge1xuICBjb3VudDogbnVtYmVyO1xufTtcblxudHlwZSBNeU1ldHJpYyA9IEJhc2ljTWV0cmljICYge1xuICByZXE6IE15UmVxTWV0cmljO1xuICByZXM6IE15UmVzTWV0cmljO1xufTtcblxudHlwZSBNeUN1c3RvbU1ldHJpYyA9IHtcbiAgcHJvZHVjdFR5cGU6IHN0cmluZztcbiAgY291bnQ6IG51bWJlcjtcbn07XG5cbmRlc2NyaWJlKCdNZXRyaWNMb2dnZXInLCAoKSA9PiB7XG4gIGNvbnN0IGRlZmF1bHRNZXRyaWMgPSB7XG4gICAgcmVxOiB7IHR5cGU6ICdteVR5cGUnLCB1c2VySWQ6ICdteS11c2VyLWlkJyB9LFxuICAgIHJlczogeyBpc1N1Y2Nlc3NmdWw6IHRydWUsIGVycm9yQ29kZTogJycsIGNvdW50OiAxMCB9LFxuICB9O1xuICBkZXNjcmliZSgnc2V0TWV0cmljKCkgLSBleHRlbmRlZCBtZXRyaWMgdHlwZScsICgpID0+IHtcbiAgICBpdCgnc2hvdWxkIHNldCBtZXRyaWMgcHJvcGVydHknLCAoKSA9PiB7XG4gICAgICBjb25zdCBtZXRyaWNMb2dnZXIgPSBuZXcgTWV0cmljTG9nZ2VyPE15TWV0cmljPihkZWZhdWx0TWV0cmljLCB0cnVlLCBsb2dnZXIpO1xuXG4gICAgICBjb25zdCBleHBlY3RlZFVzZXJJZCA9ICdhbm90aGVyLXVzZXItaWQnO1xuICAgICAgY29uc3QgZXhwZWN0ZWRSZXN1bHQgPSB7XG4gICAgICAgIC4uLmRlZmF1bHRNZXRyaWMsXG4gICAgICAgIHJlcTogeyAuLi5kZWZhdWx0TWV0cmljLnJlcSwgdXNlcklkOiBleHBlY3RlZFVzZXJJZCB9LFxuICAgICAgfTtcbiAgICAgIG1ldHJpY0xvZ2dlci5zZXRNZXRyaWMoJ3JlcS51c2VySWQnLCBleHBlY3RlZFVzZXJJZCk7XG4gICAgICBjb25zdCByZXN1bHQgPSBtZXRyaWNMb2dnZXIuZ2V0TWV0cmljKCk7XG4gICAgICBleHBlY3QocmVzdWx0LnJlcS51c2VySWQpLnRvRXF1YWwoZXhwZWN0ZWRVc2VySWQpO1xuICAgICAgZXhwZWN0KHJlc3VsdCkudG9FcXVhbChleHBlY3RlZFJlc3VsdCk7XG4gICAgfSk7XG5cbiAgICBpdCgnc2hvdWxkIGFsbG93IHRvIHNldCBtZXRyaWNzJywgKCkgPT4ge1xuICAgICAgY29uc3QgbWV0cmljTG9nZ2VyID0gbmV3IE1ldHJpY0xvZ2dlcjxNeU1ldHJpYz4oZGVmYXVsdE1ldHJpYywgdHJ1ZSwgbG9nZ2VyKTtcblxuICAgICAgY29uc3QgZXhwZWN0ZWRVc2VySWQgPSAnYW5vdGhlci11c2VyLWlkJztcbiAgICAgIGNvbnN0IG5ld0NvdW50ID0gMjA7XG4gICAgICBjb25zdCBleHBlY3RlZFJlc3VsdCA9IHtcbiAgICAgICAgcmVxOiB7IC4uLmRlZmF1bHRNZXRyaWMucmVxLCB1c2VySWQ6IGV4cGVjdGVkVXNlcklkIH0sXG4gICAgICAgIHJlczogeyAuLi5kZWZhdWx0TWV0cmljLnJlcywgY291bnQ6IG5ld0NvdW50IH0sXG4gICAgICB9O1xuICAgICAgbWV0cmljTG9nZ2VyLnNldE1ldHJpYygncmVxLnVzZXJJZCcsIGV4cGVjdGVkVXNlcklkKTtcbiAgICAgIG1ldHJpY0xvZ2dlci5zZXRNZXRyaWMoJ3Jlcy5jb3VudCcsIG5ld0NvdW50KTtcbiAgICAgIGNvbnN0IHJlc3VsdCA9IG1ldHJpY0xvZ2dlci5nZXRNZXRyaWMoKTtcbiAgICAgIGV4cGVjdChyZXN1bHQucmVxLnVzZXJJZCkudG9FcXVhbChleHBlY3RlZFVzZXJJZCk7XG4gICAgICBleHBlY3QocmVzdWx0KS50b0VxdWFsKGV4cGVjdGVkUmVzdWx0KTtcbiAgICB9KTtcblxuICAgIGl0KCdzaG91bGQgYWxsb3cgdG8gc2V0IGN1c3RvbSBtdWx0aS1sYXllciBtZXRyaWNzJywgKCkgPT4ge1xuICAgICAgdHlwZSBNeU1ldHJpY05lc3RlZExheWVyID0gTXlNZXRyaWMgJiB7XG4gICAgICAgIHJlczogTXlSZXNNZXRyaWMgJiB7XG4gICAgICAgICAgY3VzdG9tT2JqZWN0OiB7XG4gICAgICAgICAgICBzb21lS2V5OiBzdHJpbmc7XG4gICAgICAgICAgICBzb21lVmFsdWU6IHN0cmluZztcbiAgICAgICAgICB9O1xuICAgICAgICB9O1xuICAgICAgfTtcbiAgICAgIGNvbnN0IG5lc3RlZERlZmF1bHRNZXRyaWMgPSB7XG4gICAgICAgIC4uLmRlZmF1bHRNZXRyaWMsXG4gICAgICAgIHJlczoge1xuICAgICAgICAgIC4uLmRlZmF1bHRNZXRyaWMucmVzLFxuICAgICAgICAgIGN1c3RvbU9iamVjdDoge1xuICAgICAgICAgICAgc29tZUtleTogJ3NvbWUta2V5JyxcbiAgICAgICAgICAgIHNvbWVWYWx1ZTogJ3NvbWUtdmFsdWUnLFxuICAgICAgICAgIH0sXG4gICAgICAgIH0sXG4gICAgICB9O1xuICAgICAgY29uc3QgbWV0cmljTG9nZ2VyID0gbmV3IE1ldHJpY0xvZ2dlcjxNeU1ldHJpY05lc3RlZExheWVyPihuZXN0ZWREZWZhdWx0TWV0cmljLCB0cnVlLCBsb2dnZXIpO1xuICAgICAgY29uc3QgZXhwZWN0ZWRTb21lS2V5ID0gJ25ldy1rZXknO1xuICAgICAgY29uc3QgZXhwZWN0ZWRTb21lVmFsdWUgPSAnbmV3LXZhbHVlJztcbiAgICAgIGNvbnN0IGV4cGVjdGVkUmVzdWx0ID0ge1xuICAgICAgICAuLi5uZXN0ZWREZWZhdWx0TWV0cmljLFxuICAgICAgICByZXM6IHtcbiAgICAgICAgICAuLi5kZWZhdWx0TWV0cmljLnJlcyxcbiAgICAgICAgICBjdXN0b21PYmplY3Q6IHtcbiAgICAgICAgICAgIHNvbWVLZXk6IGV4cGVjdGVkU29tZUtleSxcbiAgICAgICAgICAgIHNvbWVWYWx1ZTogZXhwZWN0ZWRTb21lVmFsdWUsXG4gICAgICAgICAgfSxcbiAgICAgICAgfSxcbiAgICAgIH07XG4gICAgICBtZXRyaWNMb2dnZXIuc2V0TWV0cmljKCdyZXMuY3VzdG9tT2JqZWN0LnNvbWVLZXknLCBleHBlY3RlZFNvbWVLZXkpO1xuICAgICAgbWV0cmljTG9nZ2VyLnNldE1ldHJpYygncmVzLmN1c3RvbU9iamVjdC5zb21lVmFsdWUnLCBleHBlY3RlZFNvbWVWYWx1ZSk7XG4gICAgICBjb25zdCByZXN1bHQgPSBtZXRyaWNMb2dnZXIuZ2V0TWV0cmljKCk7XG4gICAgICBleHBlY3QocmVzdWx0KS50b0VxdWFsKGV4cGVjdGVkUmVzdWx0KTtcbiAgICB9KTtcbiAgfSk7XG5cbiAgZGVzY3JpYmUoJ3NldE1ldHJpYygpIC0gY3VzdG9tIG1ldHJpYyB0eXBlJywgKCkgPT4ge1xuICAgIGl0KCdzaG91bGQgYmUgYWJsZSB0byBoYW5kbGUgY3VzdG9tIG1ldHJpYycsICgpID0+IHtcbiAgICAgIGNvbnN0IG15RGVmYXVsdE1ldHJpYyA9IHtcbiAgICAgICAgcHJvZHVjdFR5cGU6ICdteVR5cGUnLFxuICAgICAgICBjb3VudDogMTAsXG4gICAgICB9O1xuICAgICAgY29uc3QgbWV0cmljTG9nZ2VyID0gbmV3IE1ldHJpY0xvZ2dlcjxNeUN1c3RvbU1ldHJpYz4obXlEZWZhdWx0TWV0cmljLCB0cnVlLCBsb2dnZXIpO1xuICAgICAgY29uc3QgZXhwZWN0ZWRQcm9kdWN0VHlwZSA9ICdhbm90aGVyVHlwZSc7XG4gICAgICBjb25zdCBleHBlY3RlZENvdW50ID0gMTAwO1xuICAgICAgbWV0cmljTG9nZ2VyLnNldE1ldHJpYygncHJvZHVjdFR5cGUnLCBleHBlY3RlZFByb2R1Y3RUeXBlKTtcbiAgICAgIG1ldHJpY0xvZ2dlci5zZXRNZXRyaWMoJ2NvdW50JywgZXhwZWN0ZWRDb3VudCk7XG4gICAgICBjb25zdCByZXN1bHQgPSBtZXRyaWNMb2dnZXIuZ2V0TWV0cmljKCk7XG4gICAgICBleHBlY3QocmVzdWx0LnByb2R1Y3RUeXBlKS50b0VxdWFsKGV4cGVjdGVkUHJvZHVjdFR5cGUpO1xuICAgICAgZXhwZWN0KHJlc3VsdC5jb3VudCkudG9FcXVhbChleHBlY3RlZENvdW50KTtcbiAgICB9KTtcbiAgfSk7XG5cbiAgZGVzY3JpYmUoJ3N1Y2Nlc3MoKScsICgpID0+IHtcbiAgICBpdCgnc2hvdWxkIHNldCBzdWNjZXNzIHJlc3BvbnNlJywgKCkgPT4ge1xuICAgICAgY29uc3QgbWV0cmljTG9nZ2VyID0gbmV3IE1ldHJpY0xvZ2dlcjxNeU1ldHJpYz4oZGVmYXVsdE1ldHJpYywgdHJ1ZSwgbG9nZ2VyKTtcblxuICAgICAgY29uc3QgZXhwZWN0ZWRVc2VySWQgPSAnYW5vdGhlci11c2VyLWlkJztcbiAgICAgIGNvbnN0IGV4cGVjdGVkUmVzdWx0ID0ge1xuICAgICAgICAuLi5kZWZhdWx0TWV0cmljLFxuICAgICAgICByZXE6IHsgLi4uZGVmYXVsdE1ldHJpYy5yZXEsIHVzZXJJZDogZXhwZWN0ZWRVc2VySWQsIGlzU3VjY2Vzc2Z1bDogdHJ1ZSwgZXJyb3JDb2RlOiAnJyB9LFxuICAgICAgfTtcbiAgICAgIG1ldHJpY0xvZ2dlci5zZXRNZXRyaWMoJ3JlcS51c2VySWQnLCBleHBlY3RlZFVzZXJJZCk7XG4gICAgICBjb25zdCByZXN1bHQgPSBtZXRyaWNMb2dnZXIuZ2V0TWV0cmljKCk7XG4gICAgICBleHBlY3QocmVzdWx0LnJlcS51c2VySWQpLnRvRXF1YWwoZXhwZWN0ZWRVc2VySWQpO1xuICAgICAgZXhwZWN0KHJlc3VsdC5yZXMuaXNTdWNjZXNzZnVsKS50b0VxdWFsKGV4cGVjdGVkUmVzdWx0LnJlcy5pc1N1Y2Nlc3NmdWwpO1xuICAgICAgZXhwZWN0KHJlc3VsdC5yZXMuZXJyb3JDb2RlKS50b0VxdWFsKGV4cGVjdGVkUmVzdWx0LnJlcy5lcnJvckNvZGUpO1xuICAgIH0pO1xuICB9KTtcblxuICBkZXNjcmliZSgnZXJyb3IoKScsICgpID0+IHtcbiAgICBpdCgnc2hvdWxkIHNldCBlcnJvciByZXNwb25zZScsICgpID0+IHtcbiAgICAgIGNvbnN0IG1ldHJpY0xvZ2dlciA9IG5ldyBNZXRyaWNMb2dnZXI8TXlNZXRyaWM+KGRlZmF1bHRNZXRyaWMsIHRydWUsIGxvZ2dlcik7XG5cbiAgICAgIGNvbnN0IGV4cGVjdGVkVXNlcklkID0gJ2Fub3RoZXItdXNlci1pZCc7XG4gICAgICBjb25zdCBleHBlY3RlZFJlc3VsdCA9IHtcbiAgICAgICAgcmVxOiB7IC4uLmRlZmF1bHRNZXRyaWMucmVxLCB1c2VySWQ6IGV4cGVjdGVkVXNlcklkIH0sXG4gICAgICAgIHJlczogeyAuLi5kZWZhdWx0TWV0cmljLnJlcywgaXNTdWNjZXNzZnVsOiBmYWxzZSwgZXJyb3JDb2RlOiAnc29tZS1lcnJvci1jb2RlJyB9LFxuICAgICAgfTtcbiAgICAgIG1ldHJpY0xvZ2dlci5lcnJvcignc29tZS1lcnJvci1jb2RlJyk7XG4gICAgICBtZXRyaWNMb2dnZXIuc2V0TWV0cmljKCdyZXMuaXNTdWNjZXNzZnVsJywgZmFsc2UpO1xuICAgICAgY29uc3QgcmVzdWx0ID0gbWV0cmljTG9nZ2VyLmdldE1ldHJpYygpO1xuICAgICAgZXhwZWN0KHJlc3VsdC5yZXEudXNlcklkKS50b0VxdWFsKGV4cGVjdGVkVXNlcklkKTtcbiAgICAgIGV4cGVjdChyZXN1bHQucmVzLmlzU3VjY2Vzc2Z1bCkudG9FcXVhbChleHBlY3RlZFJlc3VsdC5yZXMuaXNTdWNjZXNzZnVsKTtcbiAgICAgIGV4cGVjdChyZXN1bHQucmVzLmVycm9yQ29kZSkudG9FcXVhbChleHBlY3RlZFJlc3VsdC5yZXMuZXJyb3JDb2RlKTtcbiAgICB9KTtcbiAgfSk7XG59KTtcbiJdLCJuYW1lcyI6WyJqZXN0IiwibW9jayIsImxvZ2dlciIsImluZm8iLCJmbiIsImRlc2NyaWJlIiwiZGVmYXVsdE1ldHJpYyIsInJlcSIsInR5cGUiLCJ1c2VySWQiLCJyZXMiLCJpc1N1Y2Nlc3NmdWwiLCJlcnJvckNvZGUiLCJjb3VudCIsIml0IiwibWV0cmljTG9nZ2VyIiwiTWV0cmljTG9nZ2VyIiwiZXhwZWN0ZWRVc2VySWQiLCJleHBlY3RlZFJlc3VsdCIsInNldE1ldHJpYyIsInJlc3VsdCIsImdldE1ldHJpYyIsImV4cGVjdCIsInRvRXF1YWwiLCJuZXdDb3VudCIsIm5lc3RlZERlZmF1bHRNZXRyaWMiLCJjdXN0b21PYmplY3QiLCJzb21lS2V5Iiwic29tZVZhbHVlIiwiZXhwZWN0ZWRTb21lS2V5IiwiZXhwZWN0ZWRTb21lVmFsdWUiLCJteURlZmF1bHRNZXRyaWMiLCJwcm9kdWN0VHlwZSIsImV4cGVjdGVkUHJvZHVjdFR5cGUiLCJleHBlY3RlZENvdW50IiwiZXJyb3IiXSwibWFwcGluZ3MiOiI7Ozs7cUJBQTZCO3NCQUVOOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUN2QkEsS0FBS0MsSUFBSSxDQUFDLGdCQUFnQjtXQUFPO1FBQy9CQyxRQUFRO1lBQ05DLE1BQU1ILEtBQUtJLEVBQUU7UUFDZjtJQUNGOztBQW9CQUMsU0FBUyxnQkFBZ0IsV0FBTTtJQUM3QixJQUFNQyxnQkFBZ0I7UUFDcEJDLEtBQUs7WUFBRUMsTUFBTTtZQUFVQyxRQUFRO1FBQWE7UUFDNUNDLEtBQUs7WUFBRUMsY0FBYyxJQUFJO1lBQUVDLFdBQVc7WUFBSUMsT0FBTztRQUFHO0lBQ3REO0lBQ0FSLFNBQVMsc0NBQXNDLFdBQU07UUFDbkRTLEdBQUcsOEJBQThCLFdBQU07WUFDckMs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
@@ -0,0 +1,34 @@
1
+ import winston from 'winston';
2
+ export declare class MetricLogger<T> {
3
+ private readonly defaultMetric;
4
+ private _logger;
5
+ private _metric;
6
+ private _isTest;
7
+ constructor(defaultMetric?: T, _isTest?: boolean, suppliedLogger?: winston.Logger);
8
+ getMetric(): T;
9
+ /**
10
+ * Trigger to send log message over the supplied logger object
11
+ * @param metric
12
+ * @param stringifyMetric
13
+ */
14
+ sendMetric(metric: T, stringifyMetric?: boolean): void;
15
+ /**
16
+ * Dynamically set the metric, support the dot notation e.g. `setMetric('res.isSuccess', true)`
17
+ * @param key
18
+ * @param value
19
+ */
20
+ setMetric(key: string, value: unknown): void;
21
+ /**
22
+ * Capture the success
23
+ * @param cachedResponse
24
+ * @returns
25
+ */
26
+ success(): void;
27
+ /**
28
+ * A handy function to capture the error
29
+ * @param errorCode
30
+ * @param errorField
31
+ * @returns
32
+ */
33
+ error(errorCode?: string, errorField?: string): void;
34
+ }
@@ -0,0 +1,88 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ Object.defineProperty(exports, "MetricLogger", {
6
+ enumerable: true,
7
+ get: function() {
8
+ return MetricLogger;
9
+ }
10
+ });
11
+ var _logger = require("../logger");
12
+ function _classCallCheck(instance, Constructor) {
13
+ if (!(instance instanceof Constructor)) {
14
+ throw new TypeError("Cannot call a class as a function");
15
+ }
16
+ }
17
+ var _typeof = function(obj) {
18
+ "@swc/helpers - typeof";
19
+ return obj && typeof Symbol !== "undefined" && obj.constructor === Symbol ? "symbol" : typeof obj;
20
+ };
21
+ var MetricLogger = /*#__PURE__*/ function() {
22
+ "use strict";
23
+ function MetricLogger() {
24
+ var defaultMetric = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : {}, _isTest = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : false, suppliedLogger = arguments.length > 2 ? arguments[2] : void 0;
25
+ _classCallCheck(this, MetricLogger);
26
+ this.defaultMetric = defaultMetric;
27
+ this._metric = defaultMetric;
28
+ this._isTest = _isTest;
29
+ this._logger = suppliedLogger || _logger.logger;
30
+ }
31
+ var _proto = MetricLogger.prototype;
32
+ _proto.getMetric = function getMetric() {
33
+ return this._metric;
34
+ };
35
+ /**
36
+ * Trigger to send log message over the supplied logger object
37
+ * @param metric
38
+ * @param stringifyMetric
39
+ */ _proto.sendMetric = function sendMetric(metric) {
40
+ var stringifyMetric = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : true;
41
+ if (!this._isTest) {
42
+ var metricToSend = stringifyMetric ? JSON.stringify(metric) : metric;
43
+ this._logger.info(metricToSend);
44
+ }
45
+ };
46
+ /**
47
+ * Dynamically set the metric, support the dot notation e.g. `setMetric('res.isSuccess', true)`
48
+ * @param key
49
+ * @param value
50
+ */ _proto.setMetric = function setMetric(key, value) {
51
+ var keys = key.split(".");
52
+ var parentObject = this._metric;
53
+ for(var i = 0; i < keys.length; i++){
54
+ var leafNode = i === keys.length - 1;
55
+ var objectExists = _typeof(parentObject[keys[i]]) !== undefined;
56
+ // If not a leaf node and the object does not exist, set parent object so we can keep traversing through themn
57
+ if (objectExists && !leafNode) {
58
+ parentObject = parentObject[keys[i]];
59
+ }
60
+ if (leafNode) {
61
+ parentObject[keys[i]] = value;
62
+ break;
63
+ }
64
+ }
65
+ };
66
+ /**
67
+ * Capture the success
68
+ * @param cachedResponse
69
+ * @returns
70
+ */ _proto.success = function success() {
71
+ return this.sendMetric(this.getMetric());
72
+ };
73
+ /**
74
+ * A handy function to capture the error
75
+ * @param errorCode
76
+ * @param errorField
77
+ * @returns
78
+ */ _proto.error = function error() {
79
+ var errorCode = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : "", errorField = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : "res.errorCode";
80
+ if (errorField) {
81
+ this.setMetric(errorField, errorCode);
82
+ }
83
+ return this.sendMetric(this.getMetric());
84
+ };
85
+ return MetricLogger;
86
+ }();
87
+
88
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9NZXRyaWNMb2dnZXIvaW5kZXgudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHdpbnN0b24gZnJvbSAnd2luc3Rvbic7XG5pbXBvcnQgeyBsb2dnZXIgfSBmcm9tICcuLi9sb2dnZXInO1xuXG5leHBvcnQgY2xhc3MgTWV0cmljTG9nZ2VyPFQ+IHtcbiAgcHJpdmF0ZSBfbG9nZ2VyOiB3aW5zdG9uLkxvZ2dlcjtcbiAgcHJpdmF0ZSBfbWV0cmljOiBUO1xuICBwcml2YXRlIF9pc1Rlc3Q6IGJvb2xlYW47XG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgcmVhZG9ubHkgZGVmYXVsdE1ldHJpYzogVCA9IHt9IGFzIFQsIF9pc1Rlc3QgPSBmYWxzZSwgc3VwcGxpZWRMb2dnZXI/OiB3aW5zdG9uLkxvZ2dlcikge1xuICAgIHRoaXMuX21ldHJpYyA9IGRlZmF1bHRNZXRyaWM7XG4gICAgdGhpcy5faXNUZXN0ID0gX2lzVGVzdDtcbiAgICB0aGlzLl9sb2dnZXIgPSBzdXBwbGllZExvZ2dlciB8fCBsb2dnZXI7XG4gIH1cblxuICBnZXRNZXRyaWMoKTogVCB7XG4gICAgcmV0dXJuIHRoaXMuX21ldHJpYztcbiAgfVxuXG4gIC8qKlxuICAgKiBUcmlnZ2VyIHRvIHNlbmQgbG9nIG1lc3NhZ2Ugb3ZlciB0aGUgc3VwcGxpZWQgbG9nZ2VyIG9iamVjdFxuICAgKiBAcGFyYW0gbWV0cmljXG4gICAqIEBwYXJhbSBzdHJpbmdpZnlNZXRyaWNcbiAgICovXG4gIHNlbmRNZXRyaWMobWV0cmljOiBULCBzdHJpbmdpZnlNZXRyaWMgPSB0cnVlKTogdm9pZCB7XG4gICAgaWYgKCF0aGlzLl9pc1Rlc3QpIHtcbiAgICAgIGNvbnN0IG1ldHJpY1RvU2VuZCA9IHN0cmluZ2lmeU1ldHJpYyA/IEpTT04uc3RyaW5naWZ5KG1ldHJpYykgOiBtZXRyaWM7XG4gICAgICB0aGlzLl9sb2dnZXIuaW5mbyhtZXRyaWNUb1NlbmQpO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBEeW5hbWljYWxseSBzZXQgdGhlIG1ldHJpYywgc3VwcG9ydCB0aGUgZG90IG5vdGF0aW9uIGUuZy4gYHNldE1ldHJpYygncmVzLmlzU3VjY2VzcycsIHRydWUpYFxuICAgKiBAcGFyYW0ga2V5XG4gICAqIEBwYXJhbSB2YWx1ZVxuICAgKi9cbiAgc2V0TWV0cmljKGtleTogc3RyaW5nLCB2YWx1ZTogdW5rbm93bikge1xuICAgIGNvbnN0IGtleXMgPSBrZXkuc3BsaXQoJy4nKTtcbiAgICBsZXQgcGFyZW50T2JqZWN0ID0gdGhpcy5fbWV0cmljO1xuICAgIGZvciAobGV0IGkgPSAwOyBpIDwga2V5cy5sZW5ndGg7IGkrKykge1xuICAgICAgY29uc3QgbGVhZk5vZGUgPSBpID09PSBrZXlzLmxlbmd0aCAtIDE7XG4gICAgICBjb25zdCBvYmplY3RFeGlzdHMgPSB0eXBlb2YgcGFyZW50T2JqZWN0W2tleXNbaV1dICE9PSB1bmRlZmluZWQ7XG5cbiAgICAgIC8vIElmIG5vdCBhIGxlYWYgbm9kZSBhbmQgdGhlIG9iamVjdCBkb2VzIG5vdCBleGlzdCwgc2V0IHBhcmVudCBvYmplY3Qgc28gd2UgY2FuIGtlZXAgdHJhdmVyc2luZyB0aHJvdWdoIHRoZW1uXG4gICAgICBpZiAob2JqZWN0RXhpc3RzICYmICFsZWFmTm9kZSkge1xuICAgICAgICBwYXJlbnRPYmplY3QgPSBwYXJlbnRPYmplY3Rba2V5c1tpXV07XG4gICAgICB9XG5cbiAgICAgIGlmIChsZWFmTm9kZSkge1xuICAgICAgICBwYXJlbnRPYmplY3Rba2V5c1tpXV0gPSB2YWx1ZTtcbiAgICAgICAgYnJlYWs7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIENhcHR1cmUgdGhlIHN1Y2Nlc3NcbiAgICogQHBhcmFtIGNhY2hlZFJlc3BvbnNlXG4gICAqIEByZXR1cm5zXG4gICAqL1xuICBzdWNjZXNzKCkge1xuICAgIHJldHVybiB0aGlzLnNlbmRNZXRyaWModGhpcy5nZXRNZXRyaWMoKSk7XG4gIH1cblxuICAvKipcbiAgICogQSBoYW5keSBmdW5jdGlvbiB0byBjYXB0dXJlIHRoZSBlcnJvclxuICAgKiBAcGFyYW0gZXJyb3JDb2RlXG4gICAqIEBwYXJhbSBlcnJvckZpZWxkXG4gICAqIEByZXR1cm5zXG4gICAqL1xuICBlcnJvcihlcnJvckNvZGU6IHN0cmluZyA9ICcnLCBlcnJvckZpZWxkOiBzdHJpbmcgPSAncmVzLmVycm9yQ29kZScpIHtcbiAgICBpZiAoZXJyb3JGaWVsZCkge1xuICAgICAgdGhpcy5zZXRNZXRyaWMoZXJyb3JGaWVsZCwgZXJyb3JDb2RlKTtcbiAgICB9XG4gICAgcmV0dXJuIHRoaXMuc2VuZE1ldHJpYyh0aGlzLmdldE1ldHJpYygpKTtcbiAgfVxufVxuIl0sIm5hbWVzIjpbIk1ldHJpY0xvZ2dlciIsImRlZmF1bHRNZXRyaWMiLCJfaXNUZXN0Iiwic3VwcGxpZWRMb2dnZXIiLCJfbWV0cmljIiwiX2xvZ2dlciIsImxvZ2dlciIsImdldE1ldHJpYyIsInNlbmRNZXRyaWMiLCJtZXRyaWMiLCJzdHJpbmdpZnlNZXRyaWMiLCJtZXRyaWNUb1NlbmQiLCJKU09OIiwic3RyaW5naWZ5IiwiaW5mbyIsInNldE1ldHJpYyIsImtleSIsInZhbHVlIiwia2V5cyIsInNwbGl0IiwicGFyZW50T2JqZWN0IiwiaSIsImxlbmd0aCIsImxlYWZOb2RlIiwib2JqZWN0RXhpc3RzIiwidW5kZWZpbmVkIiwic3VjY2VzcyIsImVycm9yIiwiZXJyb3JDb2RlIiwiZXJyb3JGaWVsZCJdLCJtYXBwaW5ncyI6Ijs7OzsrQkFHYUE7OztlQUFBQTs7O3NCQUZVOzs7Ozs7Ozs7O0FBRWhCLElBQUEsQUFBTUEsNkJBSFYsQUFHSTs7YUFBTUE7WUFJa0JDLGlGQUFtQixDQUFDLEdBQVFDLFVBQUFBLGlFQUFVLEtBQUssRUFBRUM7OEJBSi9ESDs2QkFJa0JDO1FBQzNCLElBQUksQ0FBQ0csT0FBTyxHQUFHSDtRQUNmLElBQUksQ0FBQ0MsT0FBTyxHQUFHQTtRQUNmLElBQUksQ0FBQ0csT0FBTyxHQUFHRixrQkFBa0JHLGNBQU07O2lCQVA5Qk47SUFVWE8sT0FBQUEsU0FFQyxHQUZEQSxTQUFBQSxZQUFlO1FBQ2IsT0FBTyxJQUFJLENBQUNILE9BQU87SUFDckI7SUFFQTs7OztHQUlDLEdBQ0RJLE9BQUFBLFVBS0MsR0FMREEsU0FBQUEsV0FBV0MsTUFBUyxFQUFnQztZQUE5QkMsa0JBQUFBLGlFQUFrQixJQUFJO1FBQzFDLElBQUksQ0FBQyxJQUFJLENBQUNSLE9BQU8sRUFBRTtZQUNqQixJQUFNUyxlQUFlRCxrQkFBa0JFLEtBQUtDLFNBQVMsQ0FBQ0osVUFBVUEsTUFBTTtZQUN0RSxJQUFJLENBQUNKLE9BQU8sQ0FBQ1MsSUFBSSxDQUFDSDtRQUNwQixDQUFDO0lBQ0g7SUFFQTs7OztHQUlDLEdBQ0RJLE9BQUFBLFNBaUJDLEdBakJEQSxTQUFBQSxVQUFVQyxHQUFXLEVBQUVDLEtBQWMsRUFBRTtRQUNyQyxJQUFNQyxPQUFPRixJQUFJRyxLQUFLLENBQUM7UUFDdkIsSUFBSUMsZUFBZSxJQUFJLENBQUNoQixPQUFPO1FBQy9CLElBQUssSUFBSWlCLElBQUksR0FBR0EsSUFBSUgsS0FBS0ksTUFBTSxFQUFFRCxJQUFLO1lBQ3BDLElBQU1FLFdBQVdGLE1BQU1ILEtBQUtJLE1BQU0sR0FBRztZQUNyQyxJQUFNRSxlQUFlLFFBQU9KLFlBQVksQ0FBQ0YsSUFBSSxDQUFDRyxFQUFFLENBQUMsTUFBS0k7WUFFdEQsOEdBQThHO1lBQzlHLElBQUlELGdCQUFnQixDQUFDRCxVQUFVO2dCQUM3QkgsZUFBZUEsWUFBWSxDQUFDRixJQUFJLENBQUNHLEVBQUUsQ0FBQztZQUN0QyxDQUFDO1lBRUQsSUFBSUUsVUFBVTtnQkFDWkgsWUFBWSxDQUFDRixJQUFJLENBQUNHLEVBQUUsQ0FBQyxHQUFHSjtnQkFDeEIsS0FBTTtZQUNSLENBQUM7UUFDSDtJQUNGO0lBRUE7Ozs7R0FJQyxHQUNEUyxPQUFBQSxPQUVDLEdBRkRBLFNBQUFBLFVBQVU7UUFDUixPQUFPLElBQUksQ0FBQ2xCLFVBQVUsQ0FBQyxJQUFJLENBQUNELFNBQVM7SUFDdkM7SUFFQTs7Ozs7R0FLQyxHQUNEb0IsT0FBQUEsS0FLQyxHQUxEQSxTQUFBQSxRQUFvRTtZQUE5REMsWUFBQUEsaUVBQW9CLEVBQUUsRUFBRUMsYUFBQUEsaUVBQXFCLGVBQWU7UUFDaEUsSUFBSUEsWUFBWTtZQUNkLElBQUksQ0FBQ2QsU0FBUyxDQUFDYyxZQUFZRDtRQUM3QixDQUFDO1FBQ0QsT0FBTyxJQUFJLENBQUNwQixVQUFVLENBQUMsSUFBSSxDQUFDRCxTQUFTO0lBQ3ZDO1dBdEVXUCJ9
@@ -0,0 +1,12 @@
1
+ export type BasicRecord = Record<string, unknown>;
2
+ export type BasicMetricReq = BasicRecord & {
3
+ type: string;
4
+ };
5
+ export type BasicMetricRes = BasicRecord & {
6
+ isSuccessful: boolean;
7
+ errorCode: string;
8
+ };
9
+ export type BasicMetric = {
10
+ req: BasicMetricReq;
11
+ res: BasicMetricRes;
12
+ };
@@ -0,0 +1,6 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+
6
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiJ9
package/dist/index.d.ts CHANGED
@@ -3,4 +3,5 @@ import { logger } from './logger';
3
3
  import { getLoggerObject } from './logger/util';
4
4
  import { getLogParams } from './params';
5
5
  import { flushAll, ensureFlushAll, ensureFlushAllCallback } from './util';
6
- export { consoleLogger, logger, getLoggerObject, getLogParams, flushAll, ensureFlushAll, ensureFlushAllCallback };
6
+ import { MetricLogger } from './MetricLogger';
7
+ export { consoleLogger, logger, getLoggerObject, getLogParams, flushAll, ensureFlushAll, ensureFlushAllCallback, MetricLogger, };
package/dist/index.js CHANGED
@@ -29,6 +29,9 @@ _export(exports, {
29
29
  },
30
30
  ensureFlushAllCallback: function() {
31
31
  return _util1.ensureFlushAllCallback;
32
+ },
33
+ MetricLogger: function() {
34
+ return _metricLogger.MetricLogger;
32
35
  }
33
36
  });
34
37
  var _console = require("./console");
@@ -36,5 +39,6 @@ var _logger = require("./logger");
36
39
  var _util = require("./logger/util");
37
40
  var _params = require("./params");
38
41
  var _util1 = require("./util");
42
+ var _metricLogger = require("./MetricLogger");
39
43
 
40
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9pbmRleC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBjb25zb2xlTG9nZ2VyIH0gZnJvbSAnLi9jb25zb2xlJztcbmltcG9ydCB7IGxvZ2dlciB9IGZyb20gJy4vbG9nZ2VyJztcbmltcG9ydCB7IGdldExvZ2dlck9iamVjdCB9IGZyb20gJy4vbG9nZ2VyL3V0aWwnO1xuaW1wb3J0IHsgZ2V0TG9nUGFyYW1zIH0gZnJvbSAnLi9wYXJhbXMnO1xuaW1wb3J0IHsgZmx1c2hBbGwsIGVuc3VyZUZsdXNoQWxsLCBlbnN1cmVGbHVzaEFsbENhbGxiYWNrIH0gZnJvbSAnLi91dGlsJztcblxuLy8gRXhwb3J0IGFsbCB0aGUgZnVuY3Rpb25zXG5leHBvcnQgeyBjb25zb2xlTG9nZ2VyLCBsb2dnZXIsIGdldExvZ2dlck9iamVjdCwgZ2V0TG9nUGFyYW1zLCBmbHVzaEFsbCwgZW5zdXJlRmx1c2hBbGwsIGVuc3VyZUZsdXNoQWxsQ2FsbGJhY2sgfTtcbiJdLCJuYW1lcyI6WyJjb25zb2xlTG9nZ2VyIiwibG9nZ2VyIiwiZ2V0TG9nZ2VyT2JqZWN0IiwiZ2V0TG9nUGFyYW1zIiwiZmx1c2hBbGwiLCJlbnN1cmVGbHVzaEFsbCIsImVuc3VyZUZsdXNoQWxsQ2FsbGJhY2siXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7O0lBT1NBLGFBQWE7ZUFBYkEsc0JBQWE7O0lBQUVDLE1BQU07ZUFBTkEsY0FBTTs7SUFBRUMsZUFBZTtlQUFmQSxxQkFBZTs7SUFBRUMsWUFBWTtlQUFaQSxvQkFBWTs7SUFBRUMsUUFBUTtlQUFSQSxlQUFROztJQUFFQyxjQUFjO2VBQWRBLHFCQUFjOztJQUFFQyxzQkFBc0I7ZUFBdEJBLDZCQUFzQjs7O3VCQVBqRjtzQkFDUDtvQkFDUztzQkFDSDtxQkFDb0MifQ==
44
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9pbmRleC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBjb25zb2xlTG9nZ2VyIH0gZnJvbSAnLi9jb25zb2xlJztcbmltcG9ydCB7IGxvZ2dlciB9IGZyb20gJy4vbG9nZ2VyJztcbmltcG9ydCB7IGdldExvZ2dlck9iamVjdCB9IGZyb20gJy4vbG9nZ2VyL3V0aWwnO1xuaW1wb3J0IHsgZ2V0TG9nUGFyYW1zIH0gZnJvbSAnLi9wYXJhbXMnO1xuaW1wb3J0IHsgZmx1c2hBbGwsIGVuc3VyZUZsdXNoQWxsLCBlbnN1cmVGbHVzaEFsbENhbGxiYWNrIH0gZnJvbSAnLi91dGlsJztcbmltcG9ydCB7IE1ldHJpY0xvZ2dlciB9IGZyb20gJy4vTWV0cmljTG9nZ2VyJztcblxuLy8gRXhwb3J0IGFsbCB0aGUgZnVuY3Rpb25zXG5leHBvcnQge1xuICBjb25zb2xlTG9nZ2VyLFxuICBsb2dnZXIsXG4gIGdldExvZ2dlck9iamVjdCxcbiAgZ2V0TG9nUGFyYW1zLFxuICBmbHVzaEFsbCxcbiAgZW5zdXJlRmx1c2hBbGwsXG4gIGVuc3VyZUZsdXNoQWxsQ2FsbGJhY2ssXG4gIE1ldHJpY0xvZ2dlcixcbn07XG4iXSwibmFtZXMiOlsiY29uc29sZUxvZ2dlciIsImxvZ2dlciIsImdldExvZ2dlck9iamVjdCIsImdldExvZ1BhcmFtcyIsImZsdXNoQWxsIiwiZW5zdXJlRmx1c2hBbGwiLCJlbnN1cmVGbHVzaEFsbENhbGxiYWNrIiwiTWV0cmljTG9nZ2VyIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7OztJQVNFQSxhQUFhO2VBQWJBLHNCQUFhOztJQUNiQyxNQUFNO2VBQU5BLGNBQU07O0lBQ05DLGVBQWU7ZUFBZkEscUJBQWU7O0lBQ2ZDLFlBQVk7ZUFBWkEsb0JBQVk7O0lBQ1pDLFFBQVE7ZUFBUkEsZUFBUTs7SUFDUkMsY0FBYztlQUFkQSxxQkFBYzs7SUFDZEMsc0JBQXNCO2VBQXRCQSw2QkFBc0I7O0lBQ3RCQyxZQUFZO2VBQVpBLDBCQUFZOzs7dUJBaEJnQjtzQkFDUDtvQkFDUztzQkFDSDtxQkFDb0M7NEJBQ3BDIn0=
@@ -245,4 +245,4 @@ var LogDNATransport = /*#__PURE__*/ function(Transport) {
245
245
  return LogDNATransport;
246
246
  }(_winstonTransport.default);
247
247
 
248
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy90cmFuc3BvcnRzL2xvZ2RuYVdpbnN0b24udHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFRyYW5zcG9ydCBmcm9tICd3aW5zdG9uLXRyYW5zcG9ydCc7XG5pbXBvcnQgeyBMb2dnZXIsIGNyZWF0ZUxvZ2dlciB9IGZyb20gJ0Bsb2dkbmEvbG9nZ2VyJztcbi8vY29uc3QgcGtnID0gcmVxdWlyZSgnLi9wYWNrYWdlLmpzb24nKTtcblxuLyoqXG4gKiBTdXBwb3J0IGZvciBXaW5zdG9uIFRyYW5zcG9ydFxuICogRnVuY3Rpb25hbGl0eTpcbiAqICBUaGlzIGNvZGUgaXMgdG8gZXh0ZW5kIFdpbnN0b24gb2JqZWN0IGFuZCB0cmFuc3BvcnQgbG9ncyB0byBMb2dETkEgYXV0b21hdGljYWxseS5cbiAqICBXZSBuZWVkIHRvIGJ1aWxkIGEgY3VzdG9tIHRyYW5zcG9ydCBiZWNhdXNlIHRoZSBvcmlnaW5hbCBjb2RlIGRvZXNuJ3Qgc3VwcG9ydCBMYW1iZGEgZW52aXJvbm1lbnQuIFNlZSBiZWxvd1xuICpcbiAqIE5vdGU6XG4gKiAgVGhpcyBjb2RlIGlzIGNsb25lZCBmcm9tIHRoZSBvZmZpY2lhbCBMb2dETkEgV2luc3RvbiB0cmFuc3BvcnQgKGh0dHBzOi8vZ2l0aHViLmNvbS9sb2dkbmEvbG9nZG5hLXdpbnN0b24pXG4gKiAgVGhpcyBtb2R1bGUgaGFzIGxpbWl0ZWQgYW5kIGRvZXNuJ3QgZnVsbHkgc3VwcG9ydCBMYW1iZGEgZW52aXJvbm1lbnQgZHVlIHRvIHRoZSBmYWN0IHRoYXQgdGhlIGxvZ2dlciBvYmplY3QgaXNcbiAqICBjcmVhdGVkIGluc2lkZSBvZiB0aGUgdHJhbnNwb3J0LiBUaGlzIG1lYW5zIHRoYXQgb3VyIGVuc3VyZUZsdXNoQWxsKCkgZG9lc24ndCBoYXZlIGEgY2hhbmNlIHRvIGNsZWFyIGl0cyBidWZmZXJcbiAqXG4gKiAgU29tZW9uZSByZXBvcnRlZCB0aGUgaXNzdWUgaGVyZSAtIGh0dHBzOi8vZ2l0aHViLmNvbS9sb2dkbmEvbG9nZG5hLXdpbnN0b24vaXNzdWVzLzM4XG4gKlxuICogRXhhbXBsZSBvZiB0cmFuc3BvcnQgKGh0dHBzOi8vZ2l0aHViLmNvbS93aW5zdG9uanMvd2luc3Rvbi10cmFuc3BvcnQpXG4gKi9cbmV4cG9ydCBjbGFzcyBMb2dETkFUcmFuc3BvcnQgZXh0ZW5kcyBUcmFuc3BvcnQge1xuICBsb2dnZXI6IExvZ2dlcjtcbiAgY29uc3RydWN0b3Iob3B0aW9uczogYW55LCBzdXBwbGllZExvZ2RuYUNsaWVudD86IExvZ2dlcikge1xuICAgIGNvbnN0IHsgbGV2ZWxzLCBtYXhMZXZlbCwga2V5LCAuLi5vcHRzIH0gPSBvcHRpb25zO1xuICAgIHN1cGVyKHtcbiAgICAgIC4uLm9wdHMsXG4gICAgICBsZXZlbHMsXG4gICAgICBsZXZlbDogbWF4TGV2ZWwsXG4gICAgfSk7XG5cbiAgICBsZXQgY3VzdG9tX2xldmVscyA9IGxldmVscztcbiAgICBpZiAoIWN1c3RvbV9sZXZlbHMpIHtcbiAgICAgIC8vIFBlciB0aGUgd2luc3RvbiBkb2NzLCB0aGVpciAnbnBtJyBsZXZlbHMgd2lsbCBiZSB1c2VkLCBhbmQgdGhvc2UgbXVzdCBiZVxuICAgICAgLy8gc2V0IHVwIGFzIGN1c3RvbSBsZXZlbHMgaW4gTG9nRE5BLlxuICAgICAgLy8gQHNlZSBodHRwczovL2dpdGh1Yi5jb20vd2luc3RvbmpzL3dpbnN0b24jbG9nZ2luZy1sZXZlbHNcbiAgICAgIGN1c3RvbV9sZXZlbHMgPSB7XG4gICAgICAgIGVycm9yOiAwLFxuICAgICAgICB3YXJuOiAxLFxuICAgICAgICBpbmZvOiAyLFxuICAgICAgICBodHRwOiAzLFxuICAgICAgICB2ZXJib3NlOiA0LFxuICAgICAgICBkZWJ1ZzogNSxcbiAgICAgICAgc2lsbHk6IDYsXG4gICAgICB9O1xuICAgIH1cblxuICAgIC8vIFVzaW5nIHRoZSBzdXBwbGllZCBsb2dnZXIgb3IgY3JlYXRlIGFuIGluc3RhbmNlIG9mIEBsb2dkbmEvbG9nZ2VyXG4gICAgdGhpcy5sb2dnZXIgPVxuICAgICAgc3VwcGxpZWRMb2dkbmFDbGllbnQgPz9cbiAgICAgIGNyZWF0ZUxvZ2dlcihrZXksIHtcbiAgICAgICAgLi4ub3B0cyxcbiAgICAgICAgbGV2ZWxzOiBPYmplY3Qua2V5cyhjdXN0b21fbGV2ZWxzKSxcbiAgICAgICAgVXNlckFnZW50OiAnYnliLWxvZ2dlci1hZGFwdGVyJywgLy9gJHtwa2cubmFtZX0vJHtwa2cudmVyc2lvbn1gLFxuICAgICAgfSk7XG4gIH1cblxuICAvKipcbiAgICogV2luc3RvbiBUcmFuc3BvcnQgd2lsbCBjYWxsIHRoaXMgbG9nIGZ1bmN0aW9uXG4gICAqIEBwYXJhbSBpbmZvXG4gICAqIEBwYXJhbSBjYWxsYmFja1xuICAgKiBAcmV0dXJuc1xuICAgKi9cbiAgbG9nKGluZm86IGFueSwgY2FsbGJhY2s6IChhOiBhbnksIGI6IGFueSkgPT4gdm9pZCkge1xuICAgIGNvbnN0IGxldmVsID0gaW5mby5sZXZlbDtcblxuICAgIGlmIChpbmZvLmVycm9yIGluc3RhbmNlb2YgRXJyb3IpIHtcbiAgICAgIGluZm8uZXJyb3IgPSBpbmZvLmVycm9yLnN0YWNrIHx8IGluZm8uZXJyb3IudG9TdHJpbmcoKTtcbiAgICB9XG5cbiAgICBpZiAoIWluZm8ubWVzc2FnZSkge1xuICAgICAgLy8gU2VuZCB0aGUgaW5jb21pbmcgb2JqZWN0IHBheWxvYWQgYXMgdGhlIG1lc3NhZ2VcbiAgICAgIHRoaXMubG9nZ2VyLmxvZyhpbmZvLCBsZXZlbCk7XG4gICAgICBjYWxsYmFjayhudWxsLCB0cnVlKTtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tdW51c2VkLXZhcnNcbiAgICBjb25zdCB7IG1lc3NhZ2UsIGluZGV4TWV0YSwgdGltZXN0YW1wLCAuLi5tZXRhIH0gPSBpbmZvO1xuICAgIGNvbnN0IG9wdHMgPSB7XG4gICAgICBsZXZlbCxcbiAgICAgIGluZGV4TWV0YSxcbiAgICAgIHRpbWVzdGFtcCxcbiAgICAgIG1ldGEsXG4gICAgfTtcblxuICAgIHRoaXMubG9nZ2VyLmxvZyhtZXNzYWdlLCBvcHRzKTtcbiAgICBjYWxsYmFjayhudWxsLCB0cnVlKTtcbiAgfVxufVxuIl0sIm5hbWVzIjpbIkxvZ0ROQVRyYW5zcG9ydCIsIm9wdGlvbnMiLCJzdXBwbGllZExvZ2RuYUNsaWVudCIsImxldmVscyIsIm1heExldmVsIiwia2V5Iiwib3B0cyIsImxldmVsIiwiY3VzdG9tX2xldmVscyIsImVycm9yIiwid2FybiIsImluZm8iLCJodHRwIiwidmVyYm9zZSIsImRlYnVnIiwic2lsbHkiLCJsb2dnZXIiLCJjcmVhdGVMb2dnZXIiLCJPYmplY3QiLCJrZXlzIiwiVXNlckFnZW50IiwibG9nIiwiY2FsbGJhY2siLCJFcnJvciIsInN0YWNrIiwidG9TdHJpbmciLCJtZXNzYWdlIiwiaW5kZXhNZXRhIiwidGltZXN0YW1wIiwibWV0YSIsIlRyYW5zcG9ydCJdLCJtYXBwaW5ncyI6Ijs7OzsrQkFtQmFBOzs7ZUFBQUE7OztxRUFuQlM7c0JBQ2U7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFrQjlCLElBQUEsQUFBTUEsZ0NBbkJWLEFBbUJJOztjQUFNQTs4QkFBQUE7YUFBQUEsZ0JBRUNDLE9BQVksRUFBRUMsb0JBQTZCOzhCQUY1Q0Y7O1FBR1QsSUFBUUcsU0FBbUNGLFFBQW5DRSxRQUFRQyxXQUEyQkgsUUFBM0JHLFVBQVVDLE1BQWlCSixRQUFqQkksS0FBUUMsZ0NBQVNMO1lBQW5DRTtZQUFRQztZQUFVQzs7a0NBQ3BCLHFDQUNEQztZQUNISCxRQUFBQTtZQUNBSSxPQUFPSDs7UUFHVCxJQUFJSSxnQkFBZ0JMO1FBQ3BCLElBQUksQ0FBQ0ssZUFBZTtZQUNsQiwyRUFBMkU7WUFDM0UscUNBQXFDO1lBQ3JDLDJEQUEyRDtZQUMzREEsZ0JBQWdCO2dCQUNkQyxPQUFPO2dCQUNQQyxNQUFNO2dCQUNOQyxNQUFNO2dCQUNOQyxNQUFNO2dCQUNOQyxTQUFTO2dCQUNUQyxPQUFPO2dCQUNQQyxPQUFPO1lBQ1Q7UUFDRixDQUFDO1FBRUQsb0VBQW9FO1FBQ3BFLE1BQUtDLE1BQU0sR0FDVGQsaUNBQUFBLGtDQUFBQSx1QkFDQWUsSUFBQUEsb0JBQVksRUFBQ1osS0FBSyxxQ0FDYkM7WUFDSEgsUUFBUWUsT0FBT0MsSUFBSSxDQUFDWDtZQUNwQlksV0FBVztXQUNYOzs7aUJBakNLcEI7SUFvQ1g7Ozs7O0dBS0MsR0FDRHFCLE9BQUFBLEdBeUJDLEdBekJEQSxTQUFBQSxJQUFJVixJQUFTLEVBQUVXLFFBQWtDLEVBQUU7UUFDakQsSUFBTWYsUUFBUUksS0FBS0osS0FBSztRQUV4QixJQUFJSSxBQUFVLFlBQVZBLEtBQUtGLEtBQUssRUFBWWMsUUFBTztZQUMvQlosS0FBS0YsS0FBSyxHQUFHRSxLQUFLRixLQUFLLENBQUNlLEtBQUssSUFBSWIsS0FBS0YsS0FBSyxDQUFDZ0IsUUFBUTtRQUN0RCxDQUFDO1FBRUQsSUFBSSxDQUFDZCxLQUFLZSxPQUFPLEVBQUU7WUFDakIsa0RBQWtEO1lBQ2xELElBQUksQ0FBQ1YsTUFBTSxDQUFDSyxHQUFHLENBQUNWLE1BQU1KO1lBQ3RCZSxTQUFTLElBQUksRUFBRSxJQUFJO1lBQ25CO1FBQ0YsQ0FBQztRQUVELDBDQUEwQztRQUMxQyxJQUFRSSxVQUEyQ2YsS0FBM0NlLFNBQVNDLFlBQWtDaEIsS0FBbENnQixXQUFXQyxZQUF1QmpCLEtBQXZCaUIsV0FBY0MsZ0NBQVNsQjtZQUEzQ2U7WUFBU0M7WUFBV0M7O1FBQzVCLElBQU10QixPQUFPO1lBQ1hDLE9BQUFBO1lBQ0FvQixXQUFBQTtZQUNBQyxXQUFBQTtZQUNBQyxNQUFBQTtRQUNGO1FBRUEsSUFBSSxDQUFDYixNQUFNLENBQUNLLEdBQUcsQ0FBQ0ssU0FBU3BCO1FBQ3pCZ0IsU0FBUyxJQUFJLEVBQUUsSUFBSTtJQUNyQjtXQW5FV3RCO0VBQXdCOEIseUJBQVMifQ==
248
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy90cmFuc3BvcnRzL2xvZ2RuYVdpbnN0b24udHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFRyYW5zcG9ydCBmcm9tICd3aW5zdG9uLXRyYW5zcG9ydCc7XG5pbXBvcnQgeyBMb2dnZXIsIGNyZWF0ZUxvZ2dlciB9IGZyb20gJ0Bsb2dkbmEvbG9nZ2VyJztcbi8vY29uc3QgcGtnID0gcmVxdWlyZSgnLi9wYWNrYWdlLmpzb24nKTtcblxuLyoqXG4gKiBTdXBwb3J0IGZvciBXaW5zdG9uIFRyYW5zcG9ydFxuICogRnVuY3Rpb25hbGl0eTpcbiAqICBUaGlzIGNvZGUgaXMgdG8gZXh0ZW5kIFdpbnN0b24gb2JqZWN0IGFuZCB0cmFuc3BvcnQgbG9ncyB0byBMb2dETkEgYXV0b21hdGljYWxseS5cbiAqICBXZSBuZWVkIHRvIGJ1aWxkIGEgY3VzdG9tIHRyYW5zcG9ydCBiZWNhdXNlIHRoZSBvcmlnaW5hbCBjb2RlIGRvZXNuJ3Qgc3VwcG9ydCBMYW1iZGEgZW52aXJvbm1lbnQuIFNlZSBiZWxvd1xuICpcbiAqIE5vdGU6XG4gKiAgVGhpcyBjb2RlIGlzIGNsb25lZCBmcm9tIHRoZSBvZmZpY2lhbCBMb2dETkEgV2luc3RvbiB0cmFuc3BvcnQgKGh0dHBzOi8vZ2l0aHViLmNvbS9sb2dkbmEvbG9nZG5hLXdpbnN0b24pXG4gKiAgVGhpcyBtb2R1bGUgaGFzIGxpbWl0ZWQgYW5kIGRvZXNuJ3QgZnVsbHkgc3VwcG9ydCBMYW1iZGEgZW52aXJvbm1lbnQgZHVlIHRvIHRoZSBmYWN0IHRoYXQgdGhlIGxvZ2dlciBvYmplY3QgaXNcbiAqICBjcmVhdGVkIGluc2lkZSBvZiB0aGUgdHJhbnNwb3J0LiBUaGlzIG1lYW5zIHRoYXQgb3VyIGVuc3VyZUZsdXNoQWxsKCkgZG9lc24ndCBoYXZlIGEgY2hhbmNlIHRvIGNsZWFyIGl0cyBidWZmZXJcbiAqXG4gKiAgU29tZW9uZSByZXBvcnRlZCB0aGUgaXNzdWUgaGVyZSAtIGh0dHBzOi8vZ2l0aHViLmNvbS9sb2dkbmEvbG9nZG5hLXdpbnN0b24vaXNzdWVzLzM4XG4gKlxuICogRXhhbXBsZSBvZiB0cmFuc3BvcnQgKGh0dHBzOi8vZ2l0aHViLmNvbS93aW5zdG9uanMvd2luc3Rvbi10cmFuc3BvcnQpXG4gKi9cbmV4cG9ydCBjbGFzcyBMb2dETkFUcmFuc3BvcnQgZXh0ZW5kcyBUcmFuc3BvcnQge1xuICBsb2dnZXI6IExvZ2dlcjtcbiAgY29uc3RydWN0b3Iob3B0aW9uczogYW55LCBzdXBwbGllZExvZ2RuYUNsaWVudD86IExvZ2dlcikge1xuICAgIGNvbnN0IHsgbGV2ZWxzLCBtYXhMZXZlbCwga2V5LCAuLi5vcHRzIH0gPSBvcHRpb25zO1xuICAgIHN1cGVyKHtcbiAgICAgIC4uLm9wdHMsXG4gICAgICBsZXZlbHMsXG4gICAgICBsZXZlbDogbWF4TGV2ZWwsXG4gICAgfSk7XG5cbiAgICBsZXQgY3VzdG9tX2xldmVscyA9IGxldmVscztcbiAgICBpZiAoIWN1c3RvbV9sZXZlbHMpIHtcbiAgICAgIC8vIFBlciB0aGUgd2luc3RvbiBkb2NzLCB0aGVpciAnbnBtJyBsZXZlbHMgd2lsbCBiZSB1c2VkLCBhbmQgdGhvc2UgbXVzdCBiZVxuICAgICAgLy8gc2V0IHVwIGFzIGN1c3RvbSBsZXZlbHMgaW4gTG9nRE5BLlxuICAgICAgLy8gQHNlZSBodHRwczovL2dpdGh1Yi5jb20vd2luc3RvbmpzL3dpbnN0b24jbG9nZ2luZy1sZXZlbHNcbiAgICAgIGN1c3RvbV9sZXZlbHMgPSB7XG4gICAgICAgIGVycm9yOiAwLFxuICAgICAgICB3YXJuOiAxLFxuICAgICAgICBpbmZvOiAyLFxuICAgICAgICBodHRwOiAzLFxuICAgICAgICB2ZXJib3NlOiA0LFxuICAgICAgICBkZWJ1ZzogNSxcbiAgICAgICAgc2lsbHk6IDYsXG4gICAgICB9O1xuICAgIH1cblxuICAgIC8vIFVzaW5nIHRoZSBzdXBwbGllZCBsb2dnZXIgb3IgY3JlYXRlIGFuIGluc3RhbmNlIG9mIEBsb2dkbmEvbG9nZ2VyXG4gICAgdGhpcy5sb2dnZXIgPVxuICAgICAgc3VwcGxpZWRMb2dkbmFDbGllbnQgPz9cbiAgICAgIGNyZWF0ZUxvZ2dlcihrZXksIHtcbiAgICAgICAgLi4ub3B0cyxcbiAgICAgICAgbGV2ZWxzOiBPYmplY3Qua2V5cyhjdXN0b21fbGV2ZWxzKSxcbiAgICAgICAgVXNlckFnZW50OiAnYnliLWxvZ2dlci1hZGFwdGVyJywgLy9gJHtwa2cubmFtZX0vJHtwa2cudmVyc2lvbn1gLFxuICAgICAgfSk7XG4gIH1cblxuICAvKipcbiAgICogV2luc3RvbiBUcmFuc3BvcnQgd2lsbCBjYWxsIHRoaXMgbG9nIGZ1bmN0aW9uXG4gICAqIEBwYXJhbSBpbmZvXG4gICAqIEBwYXJhbSBjYWxsYmFja1xuICAgKiBAcmV0dXJuc1xuICAgKi9cbiAgbG9nKGluZm86IGFueSwgY2FsbGJhY2s6IChhOiBhbnksIGI6IGFueSkgPT4gdm9pZCkge1xuICAgIGNvbnN0IGxldmVsID0gaW5mby5sZXZlbDtcblxuICAgIGlmIChpbmZvLmVycm9yIGluc3RhbmNlb2YgRXJyb3IpIHtcbiAgICAgIGluZm8uZXJyb3IgPSBpbmZvLmVycm9yLnN0YWNrIHx8IGluZm8uZXJyb3IudG9TdHJpbmcoKTtcbiAgICB9XG5cbiAgICBpZiAoIWluZm8ubWVzc2FnZSkge1xuICAgICAgLy8gU2VuZCB0aGUgaW5jb21pbmcgb2JqZWN0IHBheWxvYWQgYXMgdGhlIG1lc3NhZ2VcbiAgICAgIHRoaXMubG9nZ2VyLmxvZyhpbmZvLCBsZXZlbCk7XG4gICAgICBjYWxsYmFjayhudWxsLCB0cnVlKTtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tdW51c2VkLXZhcnNcbiAgICBjb25zdCB7IG1lc3NhZ2UsIGluZGV4TWV0YSwgdGltZXN0YW1wLCAuLi5tZXRhIH0gPSBpbmZvO1xuICAgIGNvbnN0IG9wdHMgPSB7XG4gICAgICBsZXZlbCxcbiAgICAgIGluZGV4TWV0YSxcbiAgICAgIHRpbWVzdGFtcCxcbiAgICAgIG1ldGEsXG4gICAgfTtcblxuICAgIHRoaXMubG9nZ2VyLmxvZyhtZXNzYWdlLCBvcHRzKTtcbiAgICBjYWxsYmFjayhudWxsLCB0cnVlKTtcbiAgfVxufVxuIl0sIm5hbWVzIjpbIkxvZ0ROQVRyYW5zcG9ydCIsIm9wdGlvbnMiLCJzdXBwbGllZExvZ2RuYUNsaWVudCIsImxldmVscyIsIm1heExldmVsIiwia2V5Iiwib3B0cyIsImxldmVsIiwiY3VzdG9tX2xldmVscyIsImVycm9yIiwid2FybiIsImluZm8iLCJodHRwIiwidmVyYm9zZSIsImRlYnVnIiwic2lsbHkiLCJsb2dnZXIiLCJjcmVhdGVMb2dnZXIiLCJPYmplY3QiLCJrZXlzIiwiVXNlckFnZW50IiwibG9nIiwiY2FsbGJhY2siLCJFcnJvciIsInN0YWNrIiwidG9TdHJpbmciLCJtZXNzYWdlIiwiaW5kZXhNZXRhIiwidGltZXN0YW1wIiwibWV0YSIsIlRyYW5zcG9ydCJdLCJtYXBwaW5ncyI6Ijs7OzsrQkFtQmFBOzs7ZUFBQUE7OztxRUFuQlM7c0JBQ2U7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFrQjlCLElBQUEsQUFBTUEsZ0NBQU47O2NBQU1BOzhCQUFBQTthQUFBQSxnQkFFQ0MsT0FBWSxFQUFFQyxvQkFBNkI7OEJBRjVDRjs7UUFHVCxJQUFRRyxTQUFtQ0YsUUFBbkNFLFFBQVFDLFdBQTJCSCxRQUEzQkcsVUFBVUMsTUFBaUJKLFFBQWpCSSxLQUFRQyxnQ0FBU0w7WUFBbkNFO1lBQVFDO1lBQVVDOztrQ0FDcEIscUNBQ0RDO1lBQ0hILFFBQUFBO1lBQ0FJLE9BQU9IOztRQUdULElBQUlJLGdCQUFnQkw7UUFDcEIsSUFBSSxDQUFDSyxlQUFlO1lBQ2xCLDJFQUEyRTtZQUMzRSxxQ0FBcUM7WUFDckMsMkRBQTJEO1lBQzNEQSxnQkFBZ0I7Z0JBQ2RDLE9BQU87Z0JBQ1BDLE1BQU07Z0JBQ05DLE1BQU07Z0JBQ05DLE1BQU07Z0JBQ05DLFNBQVM7Z0JBQ1RDLE9BQU87Z0JBQ1BDLE9BQU87WUFDVDtRQUNGLENBQUM7UUFFRCxvRUFBb0U7UUFDcEUsTUFBS0MsTUFBTSxHQUNUZCxpQ0FBQUEsa0NBQUFBLHVCQUNBZSxJQUFBQSxvQkFBWSxFQUFDWixLQUFLLHFDQUNiQztZQUNISCxRQUFRZSxPQUFPQyxJQUFJLENBQUNYO1lBQ3BCWSxXQUFXO1dBQ1g7OztpQkFqQ0twQjtJQW9DWDs7Ozs7R0FLQyxHQUNEcUIsT0FBQUEsR0F5QkMsR0F6QkRBLFNBQUFBLElBQUlWLElBQVMsRUFBRVcsUUFBa0MsRUFBRTtRQUNqRCxJQUFNZixRQUFRSSxLQUFLSixLQUFLO1FBRXhCLElBQUlJLEFBQVUsWUFBVkEsS0FBS0YsS0FBSyxFQUFZYyxRQUFPO1lBQy9CWixLQUFLRixLQUFLLEdBQUdFLEtBQUtGLEtBQUssQ0FBQ2UsS0FBSyxJQUFJYixLQUFLRixLQUFLLENBQUNnQixRQUFRO1FBQ3RELENBQUM7UUFFRCxJQUFJLENBQUNkLEtBQUtlLE9BQU8sRUFBRTtZQUNqQixrREFBa0Q7WUFDbEQsSUFBSSxDQUFDVixNQUFNLENBQUNLLEdBQUcsQ0FBQ1YsTUFBTUo7WUFDdEJlLFNBQVMsSUFBSSxFQUFFLElBQUk7WUFDbkI7UUFDRixDQUFDO1FBRUQsMENBQTBDO1FBQzFDLElBQVFJLFVBQTJDZixLQUEzQ2UsU0FBU0MsWUFBa0NoQixLQUFsQ2dCLFdBQVdDLFlBQXVCakIsS0FBdkJpQixXQUFjQyxnQ0FBU2xCO1lBQTNDZTtZQUFTQztZQUFXQzs7UUFDNUIsSUFBTXRCLE9BQU87WUFDWEMsT0FBQUE7WUFDQW9CLFdBQUFBO1lBQ0FDLFdBQUFBO1lBQ0FDLE1BQUFBO1FBQ0Y7UUFFQSxJQUFJLENBQUNiLE1BQU0sQ0FBQ0ssR0FBRyxDQUFDSyxTQUFTcEI7UUFDekJnQixTQUFTLElBQUksRUFBRSxJQUFJO0lBQ3JCO1dBbkVXdEI7RUFBd0I4Qix5QkFBUyJ9
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@beforeyoubid/logger-adapter",
3
- "version": "2.0.2",
3
+ "version": "2.0.3",
4
4
  "description": "A platform logger module to send the log messages to Mezmo (formerly LogDNA).",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",