@appinventiv/logger 1.0.0
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 +212 -0
- package/dist/index.d.ts +1 -0
- package/dist/index.js +18 -0
- package/dist/index.js.map +1 -0
- package/dist/logger.d.ts +50 -0
- package/dist/logger.js +76 -0
- package/dist/logger.js.map +1 -0
- package/dist/tsconfig.tsbuildinfo +1 -0
- package/dist/winston.logger.d.ts +22 -0
- package/dist/winston.logger.js +45 -0
- package/dist/winston.logger.js.map +1 -0
- package/package.json +21 -0
- package/src/index.ts +1 -0
- package/src/logger.ts +81 -0
- package/src/winston.logger.ts +61 -0
- package/tsconfig.json +21 -0
package/README.md
ADDED
|
@@ -0,0 +1,212 @@
|
|
|
1
|
+
# @developer-at/logger
|
|
2
|
+
|
|
3
|
+
A reusable Winston logger package with context support for Node.js services. Provides structured logging with trace ID, user ID, and request source tracking.
|
|
4
|
+
|
|
5
|
+
## Installation
|
|
6
|
+
|
|
7
|
+
```bash
|
|
8
|
+
npm install @developer-at/logger
|
|
9
|
+
```
|
|
10
|
+
|
|
11
|
+
## Features
|
|
12
|
+
|
|
13
|
+
- Winston-based logging with console transport
|
|
14
|
+
- Context-aware logging (trace ID, user ID, request source)
|
|
15
|
+
- Structured log output with timestamps
|
|
16
|
+
- Service name labeling
|
|
17
|
+
- TypeScript support
|
|
18
|
+
|
|
19
|
+
## Usage
|
|
20
|
+
|
|
21
|
+
### Basic Setup
|
|
22
|
+
|
|
23
|
+
```typescript
|
|
24
|
+
import { logger } from '@developer-at/logger';
|
|
25
|
+
|
|
26
|
+
// Set environment variable for service name (optional)
|
|
27
|
+
process.env.SERVICE_NAME = 'my-service';
|
|
28
|
+
|
|
29
|
+
// Basic logging
|
|
30
|
+
logger.info('Application started');
|
|
31
|
+
logger.warn('This is a warning');
|
|
32
|
+
logger.error('An error occurred');
|
|
33
|
+
```
|
|
34
|
+
|
|
35
|
+
### With Context Information
|
|
36
|
+
|
|
37
|
+
```typescript
|
|
38
|
+
import { logger } from '@developer-at/logger';
|
|
39
|
+
|
|
40
|
+
// Set context information
|
|
41
|
+
logger.setTraceId('trace-123-456');
|
|
42
|
+
logger.setUserId('user-789');
|
|
43
|
+
logger.setRequestFrom('API');
|
|
44
|
+
|
|
45
|
+
// Log with context
|
|
46
|
+
logger.info('User logged in', { userId: 'user-789' });
|
|
47
|
+
logger.error('Failed to process request', { error: 'Database connection failed' });
|
|
48
|
+
```
|
|
49
|
+
|
|
50
|
+
### Express.js Integration Example
|
|
51
|
+
|
|
52
|
+
```typescript
|
|
53
|
+
import express from 'express';
|
|
54
|
+
import { logger } from '@developer-at/logger';
|
|
55
|
+
|
|
56
|
+
const app = express();
|
|
57
|
+
|
|
58
|
+
// Middleware to set trace context
|
|
59
|
+
app.use((req, res, next) => {
|
|
60
|
+
const traceId = req.headers['x-trace-id'] as string || `trace-${Date.now()}`;
|
|
61
|
+
const userId = req.headers['x-user-id'] as string;
|
|
62
|
+
|
|
63
|
+
logger.setTraceId(traceId);
|
|
64
|
+
if (userId) logger.setUserId(userId);
|
|
65
|
+
logger.setRequestFrom('API');
|
|
66
|
+
|
|
67
|
+
next();
|
|
68
|
+
});
|
|
69
|
+
|
|
70
|
+
app.get('/users', (req, res) => {
|
|
71
|
+
logger.info('Fetching users');
|
|
72
|
+
// ... your logic
|
|
73
|
+
logger.info('Users fetched successfully');
|
|
74
|
+
res.json({ users: [] });
|
|
75
|
+
});
|
|
76
|
+
```
|
|
77
|
+
|
|
78
|
+
### Using LoggerUtils Class Directly
|
|
79
|
+
|
|
80
|
+
```typescript
|
|
81
|
+
import { LoggerUtils } from '@developer-at/logger';
|
|
82
|
+
|
|
83
|
+
// Create a custom logger instance
|
|
84
|
+
const customLogger = new LoggerUtils();
|
|
85
|
+
customLogger.setTraceId('custom-trace');
|
|
86
|
+
customLogger.setUserId('custom-user');
|
|
87
|
+
customLogger.setRequestFrom('Worker');
|
|
88
|
+
|
|
89
|
+
customLogger.info('Processing job');
|
|
90
|
+
customLogger.error('Job failed', { error: 'Timeout' });
|
|
91
|
+
```
|
|
92
|
+
|
|
93
|
+
## API Reference
|
|
94
|
+
|
|
95
|
+
### `logger` (Singleton Instance)
|
|
96
|
+
|
|
97
|
+
Pre-configured logger instance ready to use.
|
|
98
|
+
|
|
99
|
+
### `LoggerUtils` Class
|
|
100
|
+
|
|
101
|
+
Main logger utility class.
|
|
102
|
+
|
|
103
|
+
#### `constructor()`
|
|
104
|
+
|
|
105
|
+
Initializes a new LoggerUtils instance with Winston logger.
|
|
106
|
+
|
|
107
|
+
#### `setTraceId(traceId: string)`
|
|
108
|
+
|
|
109
|
+
Sets the trace ID for request tracking.
|
|
110
|
+
|
|
111
|
+
**Parameters:**
|
|
112
|
+
- `traceId` (string): Unique trace identifier
|
|
113
|
+
|
|
114
|
+
#### `setUserId(userId: string)`
|
|
115
|
+
|
|
116
|
+
Sets the user ID for logging context.
|
|
117
|
+
|
|
118
|
+
**Parameters:**
|
|
119
|
+
- `userId` (string): User identifier
|
|
120
|
+
|
|
121
|
+
#### `setRequestFrom(requestFrom: string)`
|
|
122
|
+
|
|
123
|
+
Sets the request source for logging context.
|
|
124
|
+
|
|
125
|
+
**Parameters:**
|
|
126
|
+
- `requestFrom` (string): Source of the request (e.g., 'API', 'Worker', 'Cron')
|
|
127
|
+
|
|
128
|
+
#### `info(...logs: any[])`
|
|
129
|
+
|
|
130
|
+
Logs an informational message.
|
|
131
|
+
|
|
132
|
+
**Parameters:**
|
|
133
|
+
- `...logs` (any[]): One or more log messages or objects
|
|
134
|
+
|
|
135
|
+
**Example:**
|
|
136
|
+
```typescript
|
|
137
|
+
logger.info('User created', { userId: '123', email: 'user@example.com' });
|
|
138
|
+
```
|
|
139
|
+
|
|
140
|
+
#### `warn(...logs: any[])`
|
|
141
|
+
|
|
142
|
+
Logs a warning message.
|
|
143
|
+
|
|
144
|
+
**Parameters:**
|
|
145
|
+
- `...logs` (any[]): One or more log messages or objects
|
|
146
|
+
|
|
147
|
+
**Example:**
|
|
148
|
+
```typescript
|
|
149
|
+
logger.warn('Rate limit approaching', { current: 90, limit: 100 });
|
|
150
|
+
```
|
|
151
|
+
|
|
152
|
+
#### `error(...logs: any[])`
|
|
153
|
+
|
|
154
|
+
Logs an error message.
|
|
155
|
+
|
|
156
|
+
**Parameters:**
|
|
157
|
+
- `...logs` (any[]): One or more log messages or objects
|
|
158
|
+
|
|
159
|
+
**Example:**
|
|
160
|
+
```typescript
|
|
161
|
+
logger.error('Database connection failed', { error: error.message, stack: error.stack });
|
|
162
|
+
```
|
|
163
|
+
|
|
164
|
+
## Configuration
|
|
165
|
+
|
|
166
|
+
### Environment Variables
|
|
167
|
+
|
|
168
|
+
- `SERVICE_NAME`: Service name to include in log labels (optional, defaults to empty string)
|
|
169
|
+
|
|
170
|
+
### Log Format
|
|
171
|
+
|
|
172
|
+
Logs are output in the following format:
|
|
173
|
+
- **Label**: Service name (from `SERVICE_NAME` env var)
|
|
174
|
+
- **Timestamp**: `MMM-DD-YYYY HH:mm:ss` format
|
|
175
|
+
- **Level**: Log level (info, warn, error)
|
|
176
|
+
- **Trace**: Object containing traceId, userId, and requestFrom
|
|
177
|
+
- **Logs**: Array of log messages/objects
|
|
178
|
+
|
|
179
|
+
### Example Log Output
|
|
180
|
+
|
|
181
|
+
```json
|
|
182
|
+
{
|
|
183
|
+
"level": "info",
|
|
184
|
+
"message": "",
|
|
185
|
+
"label": "my-service",
|
|
186
|
+
"timestamp": "Jan-15-2024 10:30:45",
|
|
187
|
+
"trace": {
|
|
188
|
+
"traceId": "trace-123-456",
|
|
189
|
+
"userId": "user-789",
|
|
190
|
+
"requestFrom": "API"
|
|
191
|
+
},
|
|
192
|
+
"logs": [
|
|
193
|
+
"User logged in",
|
|
194
|
+
{
|
|
195
|
+
"userId": "user-789",
|
|
196
|
+
"action": "login"
|
|
197
|
+
}
|
|
198
|
+
]
|
|
199
|
+
}
|
|
200
|
+
```
|
|
201
|
+
|
|
202
|
+
## TypeScript Support
|
|
203
|
+
|
|
204
|
+
The package includes full TypeScript definitions and is written in TypeScript.
|
|
205
|
+
|
|
206
|
+
## Dependencies
|
|
207
|
+
|
|
208
|
+
- `winston`: ^3.19.0
|
|
209
|
+
|
|
210
|
+
## License
|
|
211
|
+
|
|
212
|
+
ISC
|
package/dist/index.d.ts
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './logger';
|
package/dist/index.js
ADDED
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
+
};
|
|
16
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
__exportStar(require("./logger"), exports);
|
|
18
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,2CAAyB"}
|
package/dist/logger.d.ts
ADDED
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @description Logger utility class for structured logging with trace context
|
|
3
|
+
* Provides methods to log messages with trace ID, user ID, and request source information
|
|
4
|
+
*/
|
|
5
|
+
export declare class LoggerUtils {
|
|
6
|
+
private traceId?;
|
|
7
|
+
private userId?;
|
|
8
|
+
private requestFrom?;
|
|
9
|
+
private WL;
|
|
10
|
+
/**
|
|
11
|
+
* @description Initialize LoggerUtils with Winston logger instance
|
|
12
|
+
*/
|
|
13
|
+
constructor();
|
|
14
|
+
/**
|
|
15
|
+
* @description Set trace ID for request tracking
|
|
16
|
+
* @param {string} traceId - Unique trace identifier for the request
|
|
17
|
+
*/
|
|
18
|
+
setTraceId(traceId: string): void;
|
|
19
|
+
/**
|
|
20
|
+
* @description Set user ID for logging context
|
|
21
|
+
* @param {string} userId - User identifier
|
|
22
|
+
*/
|
|
23
|
+
setUserId(userId: string): void;
|
|
24
|
+
/**
|
|
25
|
+
* @description Set request source for logging context
|
|
26
|
+
* @param {string} requestFrom - Source of the request (e.g., 'API', 'Worker', 'Cron')
|
|
27
|
+
*/
|
|
28
|
+
setRequestFrom(requestFrom: string): void;
|
|
29
|
+
/**
|
|
30
|
+
* @description Get trace information object
|
|
31
|
+
* @returns {Object} Object containing traceId, userId, and requestFrom
|
|
32
|
+
*/
|
|
33
|
+
private traceInfo;
|
|
34
|
+
/**
|
|
35
|
+
* @description Log informational message
|
|
36
|
+
* @param {...any} logs - One or more log messages or objects to log
|
|
37
|
+
*/
|
|
38
|
+
info(...logs: any[]): void;
|
|
39
|
+
/**
|
|
40
|
+
* @description Log warning message
|
|
41
|
+
* @param {...any} logs - One or more log messages or objects to log
|
|
42
|
+
*/
|
|
43
|
+
warn(...logs: any[]): void;
|
|
44
|
+
/**
|
|
45
|
+
* @description Log error message
|
|
46
|
+
* @param {...any} logs - One or more log messages or objects to log
|
|
47
|
+
*/
|
|
48
|
+
error(...logs: any[]): void;
|
|
49
|
+
}
|
|
50
|
+
export declare const logger: LoggerUtils;
|
package/dist/logger.js
ADDED
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.logger = exports.LoggerUtils = void 0;
|
|
4
|
+
const winston_logger_1 = require("./winston.logger");
|
|
5
|
+
/**
|
|
6
|
+
* @description Logger utility class for structured logging with trace context
|
|
7
|
+
* Provides methods to log messages with trace ID, user ID, and request source information
|
|
8
|
+
*/
|
|
9
|
+
class LoggerUtils {
|
|
10
|
+
traceId;
|
|
11
|
+
userId;
|
|
12
|
+
requestFrom;
|
|
13
|
+
WL;
|
|
14
|
+
/**
|
|
15
|
+
* @description Initialize LoggerUtils with Winston logger instance
|
|
16
|
+
*/
|
|
17
|
+
constructor() {
|
|
18
|
+
this.WL = new winston_logger_1.WinstonLogger();
|
|
19
|
+
}
|
|
20
|
+
/**
|
|
21
|
+
* @description Set trace ID for request tracking
|
|
22
|
+
* @param {string} traceId - Unique trace identifier for the request
|
|
23
|
+
*/
|
|
24
|
+
setTraceId(traceId) {
|
|
25
|
+
this.traceId = traceId;
|
|
26
|
+
}
|
|
27
|
+
/**
|
|
28
|
+
* @description Set user ID for logging context
|
|
29
|
+
* @param {string} userId - User identifier
|
|
30
|
+
*/
|
|
31
|
+
setUserId(userId) {
|
|
32
|
+
this.userId = userId;
|
|
33
|
+
}
|
|
34
|
+
/**
|
|
35
|
+
* @description Set request source for logging context
|
|
36
|
+
* @param {string} requestFrom - Source of the request (e.g., 'API', 'Worker', 'Cron')
|
|
37
|
+
*/
|
|
38
|
+
setRequestFrom(requestFrom) {
|
|
39
|
+
this.requestFrom = requestFrom;
|
|
40
|
+
}
|
|
41
|
+
/**
|
|
42
|
+
* @description Get trace information object
|
|
43
|
+
* @returns {Object} Object containing traceId, userId, and requestFrom
|
|
44
|
+
*/
|
|
45
|
+
traceInfo() {
|
|
46
|
+
return {
|
|
47
|
+
traceId: this.traceId || "N/A",
|
|
48
|
+
userId: this.userId || "N/A",
|
|
49
|
+
requestFrom: this.requestFrom || "N/A"
|
|
50
|
+
};
|
|
51
|
+
}
|
|
52
|
+
/**
|
|
53
|
+
* @description Log informational message
|
|
54
|
+
* @param {...any} logs - One or more log messages or objects to log
|
|
55
|
+
*/
|
|
56
|
+
info(...logs) {
|
|
57
|
+
this.WL.logger.info({ trace: this.traceInfo(), logs });
|
|
58
|
+
}
|
|
59
|
+
/**
|
|
60
|
+
* @description Log warning message
|
|
61
|
+
* @param {...any} logs - One or more log messages or objects to log
|
|
62
|
+
*/
|
|
63
|
+
warn(...logs) {
|
|
64
|
+
this.WL.logger.warn({ trace: this.traceInfo(), logs });
|
|
65
|
+
}
|
|
66
|
+
/**
|
|
67
|
+
* @description Log error message
|
|
68
|
+
* @param {...any} logs - One or more log messages or objects to log
|
|
69
|
+
*/
|
|
70
|
+
error(...logs) {
|
|
71
|
+
this.WL.logger.error({ trace: this.traceInfo(), logs });
|
|
72
|
+
}
|
|
73
|
+
}
|
|
74
|
+
exports.LoggerUtils = LoggerUtils;
|
|
75
|
+
exports.logger = new LoggerUtils();
|
|
76
|
+
//# sourceMappingURL=logger.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"logger.js","sourceRoot":"","sources":["../src/logger.ts"],"names":[],"mappings":";;;AAAA,qDAAiD;AAEjD;;;GAGG;AACH,MAAa,WAAW;IACd,OAAO,CAAU;IACjB,MAAM,CAAU;IAChB,WAAW,CAAU;IACrB,EAAE,CAAgB;IAE1B;;OAEG;IACH;QACE,IAAI,CAAC,EAAE,GAAG,IAAI,8BAAa,EAAE,CAAC;IAChC,CAAC;IAED;;;OAGG;IACH,UAAU,CAAC,OAAe;QACxB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;IACzB,CAAC;IAED;;;OAGG;IACH,SAAS,CAAC,MAAc;QACtB,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;IACvB,CAAC;IAED;;;OAGG;IACH,cAAc,CAAC,WAAmB;QAChC,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;IACjC,CAAC;IAED;;;OAGG;IACK,SAAS;QACf,OAAO;YACL,OAAO,EAAE,IAAI,CAAC,OAAO,IAAI,KAAK;YAC9B,MAAM,EAAE,IAAI,CAAC,MAAM,IAAI,KAAK;YAC5B,WAAW,EAAE,IAAI,CAAC,WAAW,IAAI,KAAK;SACvC,CAAC;IACJ,CAAC;IAED;;;OAGG;IACH,IAAI,CAAC,GAAG,IAAW;QACjB,IAAI,CAAC,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,SAAS,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC;IACzD,CAAC;IAED;;;OAGG;IACH,IAAI,CAAC,GAAG,IAAW;QACjB,IAAI,CAAC,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,SAAS,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC;IACzD,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,GAAG,IAAW;QAClB,IAAI,CAAC,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,SAAS,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC;IAC1D,CAAC;CACF;AAxED,kCAwEC;AAEY,QAAA,MAAM,GAAG,IAAI,WAAW,EAAE,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"fileNames":["../node_modules/typescript/lib/lib.es5.d.ts","../node_modules/typescript/lib/lib.es2015.d.ts","../node_modules/typescript/lib/lib.es2016.d.ts","../node_modules/typescript/lib/lib.es2017.d.ts","../node_modules/typescript/lib/lib.es2018.d.ts","../node_modules/typescript/lib/lib.es2019.d.ts","../node_modules/typescript/lib/lib.es2020.d.ts","../node_modules/typescript/lib/lib.es2021.d.ts","../node_modules/typescript/lib/lib.es2022.d.ts","../node_modules/typescript/lib/lib.dom.d.ts","../node_modules/typescript/lib/lib.dom.iterable.d.ts","../node_modules/typescript/lib/lib.dom.asynciterable.d.ts","../node_modules/typescript/lib/lib.webworker.importscripts.d.ts","../node_modules/typescript/lib/lib.scripthost.d.ts","../node_modules/typescript/lib/lib.es2015.core.d.ts","../node_modules/typescript/lib/lib.es2015.collection.d.ts","../node_modules/typescript/lib/lib.es2015.generator.d.ts","../node_modules/typescript/lib/lib.es2015.iterable.d.ts","../node_modules/typescript/lib/lib.es2015.promise.d.ts","../node_modules/typescript/lib/lib.es2015.proxy.d.ts","../node_modules/typescript/lib/lib.es2015.reflect.d.ts","../node_modules/typescript/lib/lib.es2015.symbol.d.ts","../node_modules/typescript/lib/lib.es2015.symbol.wellknown.d.ts","../node_modules/typescript/lib/lib.es2016.array.include.d.ts","../node_modules/typescript/lib/lib.es2016.intl.d.ts","../node_modules/typescript/lib/lib.es2017.arraybuffer.d.ts","../node_modules/typescript/lib/lib.es2017.date.d.ts","../node_modules/typescript/lib/lib.es2017.object.d.ts","../node_modules/typescript/lib/lib.es2017.sharedmemory.d.ts","../node_modules/typescript/lib/lib.es2017.string.d.ts","../node_modules/typescript/lib/lib.es2017.intl.d.ts","../node_modules/typescript/lib/lib.es2017.typedarrays.d.ts","../node_modules/typescript/lib/lib.es2018.asyncgenerator.d.ts","../node_modules/typescript/lib/lib.es2018.asynciterable.d.ts","../node_modules/typescript/lib/lib.es2018.intl.d.ts","../node_modules/typescript/lib/lib.es2018.promise.d.ts","../node_modules/typescript/lib/lib.es2018.regexp.d.ts","../node_modules/typescript/lib/lib.es2019.array.d.ts","../node_modules/typescript/lib/lib.es2019.object.d.ts","../node_modules/typescript/lib/lib.es2019.string.d.ts","../node_modules/typescript/lib/lib.es2019.symbol.d.ts","../node_modules/typescript/lib/lib.es2019.intl.d.ts","../node_modules/typescript/lib/lib.es2020.bigint.d.ts","../node_modules/typescript/lib/lib.es2020.date.d.ts","../node_modules/typescript/lib/lib.es2020.promise.d.ts","../node_modules/typescript/lib/lib.es2020.sharedmemory.d.ts","../node_modules/typescript/lib/lib.es2020.string.d.ts","../node_modules/typescript/lib/lib.es2020.symbol.wellknown.d.ts","../node_modules/typescript/lib/lib.es2020.intl.d.ts","../node_modules/typescript/lib/lib.es2020.number.d.ts","../node_modules/typescript/lib/lib.es2021.promise.d.ts","../node_modules/typescript/lib/lib.es2021.string.d.ts","../node_modules/typescript/lib/lib.es2021.weakref.d.ts","../node_modules/typescript/lib/lib.es2021.intl.d.ts","../node_modules/typescript/lib/lib.es2022.array.d.ts","../node_modules/typescript/lib/lib.es2022.error.d.ts","../node_modules/typescript/lib/lib.es2022.intl.d.ts","../node_modules/typescript/lib/lib.es2022.object.d.ts","../node_modules/typescript/lib/lib.es2022.string.d.ts","../node_modules/typescript/lib/lib.es2022.regexp.d.ts","../node_modules/typescript/lib/lib.esnext.disposable.d.ts","../node_modules/typescript/lib/lib.esnext.float16.d.ts","../node_modules/typescript/lib/lib.decorators.d.ts","../node_modules/typescript/lib/lib.decorators.legacy.d.ts","../node_modules/typescript/lib/lib.es2022.full.d.ts","../node_modules/@types/node/compatibility/iterators.d.ts","../node_modules/@types/node/globals.typedarray.d.ts","../node_modules/@types/node/buffer.buffer.d.ts","../node_modules/@types/node/globals.d.ts","../node_modules/@types/node/web-globals/abortcontroller.d.ts","../node_modules/@types/node/web-globals/blob.d.ts","../node_modules/@types/node/web-globals/console.d.ts","../node_modules/@types/node/web-globals/crypto.d.ts","../node_modules/@types/node/web-globals/domexception.d.ts","../node_modules/@types/node/web-globals/encoding.d.ts","../node_modules/@types/node/web-globals/events.d.ts","../node_modules/undici-types/utility.d.ts","../node_modules/undici-types/header.d.ts","../node_modules/undici-types/readable.d.ts","../node_modules/undici-types/fetch.d.ts","../node_modules/undici-types/formdata.d.ts","../node_modules/undici-types/connector.d.ts","../node_modules/undici-types/client-stats.d.ts","../node_modules/undici-types/client.d.ts","../node_modules/undici-types/errors.d.ts","../node_modules/undici-types/dispatcher.d.ts","../node_modules/undici-types/global-dispatcher.d.ts","../node_modules/undici-types/global-origin.d.ts","../node_modules/undici-types/pool-stats.d.ts","../node_modules/undici-types/pool.d.ts","../node_modules/undici-types/handlers.d.ts","../node_modules/undici-types/balanced-pool.d.ts","../node_modules/undici-types/h2c-client.d.ts","../node_modules/undici-types/agent.d.ts","../node_modules/undici-types/mock-interceptor.d.ts","../node_modules/undici-types/mock-call-history.d.ts","../node_modules/undici-types/mock-agent.d.ts","../node_modules/undici-types/mock-client.d.ts","../node_modules/undici-types/mock-pool.d.ts","../node_modules/undici-types/snapshot-agent.d.ts","../node_modules/undici-types/mock-errors.d.ts","../node_modules/undici-types/proxy-agent.d.ts","../node_modules/undici-types/env-http-proxy-agent.d.ts","../node_modules/undici-types/retry-handler.d.ts","../node_modules/undici-types/retry-agent.d.ts","../node_modules/undici-types/api.d.ts","../node_modules/undici-types/cache-interceptor.d.ts","../node_modules/undici-types/interceptors.d.ts","../node_modules/undici-types/util.d.ts","../node_modules/undici-types/cookies.d.ts","../node_modules/undici-types/patch.d.ts","../node_modules/undici-types/websocket.d.ts","../node_modules/undici-types/eventsource.d.ts","../node_modules/undici-types/diagnostics-channel.d.ts","../node_modules/undici-types/content-type.d.ts","../node_modules/undici-types/cache.d.ts","../node_modules/undici-types/index.d.ts","../node_modules/@types/node/web-globals/fetch.d.ts","../node_modules/@types/node/web-globals/importmeta.d.ts","../node_modules/@types/node/web-globals/messaging.d.ts","../node_modules/@types/node/web-globals/navigator.d.ts","../node_modules/@types/node/web-globals/performance.d.ts","../node_modules/@types/node/web-globals/storage.d.ts","../node_modules/@types/node/web-globals/streams.d.ts","../node_modules/@types/node/web-globals/timers.d.ts","../node_modules/@types/node/web-globals/url.d.ts","../node_modules/@types/node/assert.d.ts","../node_modules/@types/node/assert/strict.d.ts","../node_modules/@types/node/async_hooks.d.ts","../node_modules/@types/node/buffer.d.ts","../node_modules/@types/node/child_process.d.ts","../node_modules/@types/node/cluster.d.ts","../node_modules/@types/node/console.d.ts","../node_modules/@types/node/constants.d.ts","../node_modules/@types/node/crypto.d.ts","../node_modules/@types/node/dgram.d.ts","../node_modules/@types/node/diagnostics_channel.d.ts","../node_modules/@types/node/dns.d.ts","../node_modules/@types/node/dns/promises.d.ts","../node_modules/@types/node/domain.d.ts","../node_modules/@types/node/events.d.ts","../node_modules/@types/node/fs.d.ts","../node_modules/@types/node/fs/promises.d.ts","../node_modules/@types/node/http.d.ts","../node_modules/@types/node/http2.d.ts","../node_modules/@types/node/https.d.ts","../node_modules/@types/node/inspector.d.ts","../node_modules/@types/node/inspector.generated.d.ts","../node_modules/@types/node/inspector/promises.d.ts","../node_modules/@types/node/module.d.ts","../node_modules/@types/node/net.d.ts","../node_modules/@types/node/os.d.ts","../node_modules/@types/node/path.d.ts","../node_modules/@types/node/path/posix.d.ts","../node_modules/@types/node/path/win32.d.ts","../node_modules/@types/node/perf_hooks.d.ts","../node_modules/@types/node/process.d.ts","../node_modules/@types/node/punycode.d.ts","../node_modules/@types/node/querystring.d.ts","../node_modules/@types/node/quic.d.ts","../node_modules/@types/node/readline.d.ts","../node_modules/@types/node/readline/promises.d.ts","../node_modules/@types/node/repl.d.ts","../node_modules/@types/node/sea.d.ts","../node_modules/@types/node/sqlite.d.ts","../node_modules/@types/node/stream.d.ts","../node_modules/@types/node/stream/consumers.d.ts","../node_modules/@types/node/stream/promises.d.ts","../node_modules/@types/node/stream/web.d.ts","../node_modules/@types/node/string_decoder.d.ts","../node_modules/@types/node/test.d.ts","../node_modules/@types/node/test/reporters.d.ts","../node_modules/@types/node/timers.d.ts","../node_modules/@types/node/timers/promises.d.ts","../node_modules/@types/node/tls.d.ts","../node_modules/@types/node/trace_events.d.ts","../node_modules/@types/node/tty.d.ts","../node_modules/@types/node/url.d.ts","../node_modules/@types/node/util.d.ts","../node_modules/@types/node/util/types.d.ts","../node_modules/@types/node/v8.d.ts","../node_modules/@types/node/vm.d.ts","../node_modules/@types/node/wasi.d.ts","../node_modules/@types/node/worker_threads.d.ts","../node_modules/@types/node/zlib.d.ts","../node_modules/@types/node/index.d.ts","../node_modules/@types/triple-beam/index.d.ts","../node_modules/logform/index.d.ts","../node_modules/winston-transport/index.d.ts","../node_modules/winston/lib/winston/config/index.d.ts","../node_modules/winston/lib/winston/transports/index.d.ts","../node_modules/winston/index.d.ts","../src/winston.logger.ts","../src/logger.ts","../src/index.ts"],"fileIdsList":[[68,127,128,130,138,142,145,147,148,149,161],[68,129,130,138,142,145,147,148,149,161],[130,138,142,145,147,148,149,161],[68,130,138,142,145,147,148,149,161,169],[68,130,131,136,138,141,142,145,147,148,149,151,161,166,178],[68,130,131,132,138,141,142,145,147,148,149,161],[68,130,138,142,145,147,148,149,161],[68,130,133,138,142,145,147,148,149,161,179],[68,130,134,135,138,142,145,147,148,149,152,161],[68,130,135,138,142,145,147,148,149,161,166,175],[68,130,136,138,141,142,145,147,148,149,151,161],[68,129,130,137,138,142,145,147,148,149,161],[68,130,138,139,142,145,147,148,149,161],[68,130,138,140,141,142,145,147,148,149,161],[68,129,130,138,141,142,145,147,148,149,161],[68,130,138,141,142,143,145,147,148,149,161,166,178],[68,130,138,141,142,143,145,147,148,149,161,166,169],[68,117,130,138,141,142,144,145,147,148,149,151,161,166,178],[68,130,138,141,142,144,145,147,148,149,151,161,166,175,178],[68,130,138,142,144,145,146,147,148,149,161,166,175,178],[66,67,68,69,70,71,72,73,74,75,76,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185],[68,130,138,141,142,145,147,148,149,161],[68,130,138,142,145,147,149,161],[68,130,138,142,145,147,148,149,150,161,178],[68,130,138,141,142,145,147,148,149,151,161,166],[68,130,138,142,145,147,148,149,152,161],[68,130,138,142,145,147,148,149,153,161],[68,130,138,141,142,145,147,148,149,156,161],[68,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185],[68,130,138,142,145,147,148,149,158,161],[68,130,138,142,145,147,148,149,159,161],[68,130,135,138,142,145,147,148,149,151,161,169],[68,130,138,141,142,145,147,148,149,161,162],[68,130,138,142,145,147,148,149,161,163,179,182],[68,130,138,141,142,145,147,148,149,161,166,168,169],[68,130,138,142,145,147,148,149,161,167,169],[68,130,138,142,145,147,148,149,161,169,179],[68,130,138,142,145,147,148,149,161,170],[68,127,130,138,142,145,147,148,149,161,166,172],[68,130,138,142,145,147,148,149,161,166,171],[68,130,138,141,142,145,147,148,149,161,173,174],[68,130,138,142,145,147,148,149,161,173,174],[68,130,135,138,142,145,147,148,149,151,161,166,175],[68,130,138,142,145,147,148,149,161,176],[68,130,138,142,145,147,148,149,151,161,177],[68,130,138,142,144,145,147,148,149,159,161,178],[68,130,138,142,145,147,148,149,161,179,180],[68,130,135,138,142,145,147,148,149,161,180],[68,130,138,142,145,147,148,149,161,166,181],[68,130,138,142,145,147,148,149,150,161,182],[68,130,138,142,145,147,148,149,161,183],[68,130,133,138,142,145,147,148,149,161],[68,130,135,138,142,145,147,148,149,161],[68,130,138,142,145,147,148,149,161,179],[68,117,130,138,142,145,147,148,149,161],[68,130,138,142,145,147,148,149,161,178],[68,130,138,142,145,147,148,149,161,184],[68,130,138,142,145,147,148,149,156,161],[68,130,138,142,145,147,148,149,161,174],[68,117,130,138,141,142,143,145,147,148,149,156,161,166,169,178,181,182,184],[68,130,138,142,145,147,148,149,161,166,185],[68,130,138,142,145,147,148,149,161,187],[68,83,86,89,90,130,138,142,145,147,148,149,161,178],[68,86,130,138,142,145,147,148,149,161,166,178],[68,86,90,130,138,142,145,147,148,149,161,178],[68,130,138,142,145,147,148,149,161,166],[68,80,130,138,142,145,147,148,149,161],[68,84,130,138,142,145,147,148,149,161],[68,82,83,86,130,138,142,145,147,148,149,161,178],[68,130,138,142,145,147,148,149,151,161,175],[68,130,138,142,145,147,148,149,161,186],[68,80,130,138,142,145,147,148,149,161,186],[68,82,86,130,138,142,145,147,148,149,151,161,178],[68,77,78,79,81,85,130,138,141,142,145,147,148,149,161,166,178],[68,86,94,102,130,138,142,145,147,148,149,161],[68,78,84,130,138,142,145,147,148,149,161],[68,86,111,112,130,138,142,145,147,148,149,161],[68,78,81,86,130,138,142,145,147,148,149,161,169,178,186],[68,86,130,138,142,145,147,148,149,161],[68,82,86,130,138,142,145,147,148,149,161,178],[68,77,130,138,142,145,147,148,149,161],[68,80,81,82,84,85,86,87,88,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,112,113,114,115,116,130,138,142,145,147,148,149,161],[68,86,104,107,130,138,142,145,147,148,149,161],[68,86,94,95,96,130,138,142,145,147,148,149,161],[68,84,86,95,97,130,138,142,145,147,148,149,161],[68,85,130,138,142,145,147,148,149,161],[68,78,80,86,130,138,142,145,147,148,149,161],[68,86,90,95,97,130,138,142,145,147,148,149,161],[68,90,130,138,142,145,147,148,149,161],[68,84,86,89,130,138,142,145,147,148,149,161,178],[68,78,82,86,94,130,138,142,145,147,148,149,161],[68,86,104,130,138,142,145,147,148,149,161],[68,97,130,138,142,145,147,148,149,161],[68,80,86,111,130,138,142,145,147,148,149,161,169,184,186],[68,130,138,142,145,147,148,149,161,166,186,188],[68,130,138,142,145,147,148,149,161,166,186,188,189,190,191],[68,130,138,142,144,145,147,148,149,161,186,189],[68,130,138,142,145,147,148,149,161,194],[68,130,138,142,145,147,148,149,161,193],[68,130,138,142,145,147,148,149,161,192]],"fileInfos":[{"version":"c430d44666289dae81f30fa7b2edebf186ecc91a2d4c71266ea6ae76388792e1","affectsGlobalScope":true,"impliedFormat":1},{"version":"45b7ab580deca34ae9729e97c13cfd999df04416a79116c3bfb483804f85ded4","impliedFormat":1},{"version":"3facaf05f0c5fc569c5649dd359892c98a85557e3e0c847964caeb67076f4d75","impliedFormat":1},{"version":"e44bb8bbac7f10ecc786703fe0a6a4b952189f908707980ba8f3c8975a760962","impliedFormat":1},{"version":"5e1c4c362065a6b95ff952c0eab010f04dcd2c3494e813b493ecfd4fcb9fc0d8","impliedFormat":1},{"version":"68d73b4a11549f9c0b7d352d10e91e5dca8faa3322bfb77b661839c42b1ddec7","impliedFormat":1},{"version":"5efce4fc3c29ea84e8928f97adec086e3dc876365e0982cc8479a07954a3efd4","impliedFormat":1},{"version":"feecb1be483ed332fad555aff858affd90a48ab19ba7272ee084704eb7167569","impliedFormat":1},{"version":"ee7bad0c15b58988daa84371e0b89d313b762ab83cb5b31b8a2d1162e8eb41c2","impliedFormat":1},{"version":"080941d9f9ff9307f7e27a83bcd888b7c8270716c39af943532438932ec1d0b9","affectsGlobalScope":true,"impliedFormat":1},{"version":"2e80ee7a49e8ac312cc11b77f1475804bee36b3b2bc896bead8b6e1266befb43","affectsGlobalScope":true,"impliedFormat":1},{"version":"d7a3c8b952931daebdfc7a2897c53c0a1c73624593fa070e46bd537e64dcd20a","affectsGlobalScope":true,"impliedFormat":1},{"version":"80e18897e5884b6723488d4f5652167e7bb5024f946743134ecc4aa4ee731f89","affectsGlobalScope":true,"impliedFormat":1},{"version":"cd034f499c6cdca722b60c04b5b1b78e058487a7085a8e0d6fb50809947ee573","affectsGlobalScope":true,"impliedFormat":1},{"version":"c57796738e7f83dbc4b8e65132f11a377649c00dd3eee333f672b8f0a6bea671","affectsGlobalScope":true,"impliedFormat":1},{"version":"dc2df20b1bcdc8c2d34af4926e2c3ab15ffe1160a63e58b7e09833f616efff44","affectsGlobalScope":true,"impliedFormat":1},{"version":"515d0b7b9bea2e31ea4ec968e9edd2c39d3eebf4a2d5cbd04e88639819ae3b71","affectsGlobalScope":true,"impliedFormat":1},{"version":"0559b1f683ac7505ae451f9a96ce4c3c92bdc71411651ca6ddb0e88baaaad6a3","affectsGlobalScope":true,"impliedFormat":1},{"version":"0dc1e7ceda9b8b9b455c3a2d67b0412feab00bd2f66656cd8850e8831b08b537","affectsGlobalScope":true,"impliedFormat":1},{"version":"ce691fb9e5c64efb9547083e4a34091bcbe5bdb41027e310ebba8f7d96a98671","affectsGlobalScope":true,"impliedFormat":1},{"version":"8d697a2a929a5fcb38b7a65594020fcef05ec1630804a33748829c5ff53640d0","affectsGlobalScope":true,"impliedFormat":1},{"version":"4ff2a353abf8a80ee399af572debb8faab2d33ad38c4b4474cff7f26e7653b8d","affectsGlobalScope":true,"impliedFormat":1},{"version":"fb0f136d372979348d59b3f5020b4cdb81b5504192b1cacff5d1fbba29378aa1","affectsGlobalScope":true,"impliedFormat":1},{"version":"d15bea3d62cbbdb9797079416b8ac375ae99162a7fba5de2c6c505446486ac0a","affectsGlobalScope":true,"impliedFormat":1},{"version":"68d18b664c9d32a7336a70235958b8997ebc1c3b8505f4f1ae2b7e7753b87618","affectsGlobalScope":true,"impliedFormat":1},{"version":"eb3d66c8327153d8fa7dd03f9c58d351107fe824c79e9b56b462935176cdf12a","affectsGlobalScope":true,"impliedFormat":1},{"version":"38f0219c9e23c915ef9790ab1d680440d95419ad264816fa15009a8851e79119","affectsGlobalScope":true,"impliedFormat":1},{"version":"69ab18c3b76cd9b1be3d188eaf8bba06112ebbe2f47f6c322b5105a6fbc45a2e","affectsGlobalScope":true,"impliedFormat":1},{"version":"a680117f487a4d2f30ea46f1b4b7f58bef1480456e18ba53ee85c2746eeca012","affectsGlobalScope":true,"impliedFormat":1},{"version":"2f11ff796926e0832f9ae148008138ad583bd181899ab7dd768a2666700b1893","affectsGlobalScope":true,"impliedFormat":1},{"version":"4de680d5bb41c17f7f68e0419412ca23c98d5749dcaaea1896172f06435891fc","affectsGlobalScope":true,"impliedFormat":1},{"version":"954296b30da6d508a104a3a0b5d96b76495c709785c1d11610908e63481ee667","affectsGlobalScope":true,"impliedFormat":1},{"version":"ac9538681b19688c8eae65811b329d3744af679e0bdfa5d842d0e32524c73e1c","affectsGlobalScope":true,"impliedFormat":1},{"version":"0a969edff4bd52585473d24995c5ef223f6652d6ef46193309b3921d65dd4376","affectsGlobalScope":true,"impliedFormat":1},{"version":"9e9fbd7030c440b33d021da145d3232984c8bb7916f277e8ffd3dc2e3eae2bdb","affectsGlobalScope":true,"impliedFormat":1},{"version":"811ec78f7fefcabbda4bfa93b3eb67d9ae166ef95f9bff989d964061cbf81a0c","affectsGlobalScope":true,"impliedFormat":1},{"version":"717937616a17072082152a2ef351cb51f98802fb4b2fdabd32399843875974ca","affectsGlobalScope":true,"impliedFormat":1},{"version":"d7e7d9b7b50e5f22c915b525acc5a49a7a6584cf8f62d0569e557c5cfc4b2ac2","affectsGlobalScope":true,"impliedFormat":1},{"version":"71c37f4c9543f31dfced6c7840e068c5a5aacb7b89111a4364b1d5276b852557","affectsGlobalScope":true,"impliedFormat":1},{"version":"576711e016cf4f1804676043e6a0a5414252560eb57de9faceee34d79798c850","affectsGlobalScope":true,"impliedFormat":1},{"version":"89c1b1281ba7b8a96efc676b11b264de7a8374c5ea1e6617f11880a13fc56dc6","affectsGlobalScope":true,"impliedFormat":1},{"version":"74f7fa2d027d5b33eb0471c8e82a6c87216223181ec31247c357a3e8e2fddc5b","affectsGlobalScope":true,"impliedFormat":1},{"version":"d6d7ae4d1f1f3772e2a3cde568ed08991a8ae34a080ff1151af28b7f798e22ca","affectsGlobalScope":true,"impliedFormat":1},{"version":"063600664504610fe3e99b717a1223f8b1900087fab0b4cad1496a114744f8df","affectsGlobalScope":true,"impliedFormat":1},{"version":"934019d7e3c81950f9a8426d093458b65d5aff2c7c1511233c0fd5b941e608ab","affectsGlobalScope":true,"impliedFormat":1},{"version":"52ada8e0b6e0482b728070b7639ee42e83a9b1c22d205992756fe020fd9f4a47","affectsGlobalScope":true,"impliedFormat":1},{"version":"3bdefe1bfd4d6dee0e26f928f93ccc128f1b64d5d501ff4a8cf3c6371200e5e6","affectsGlobalScope":true,"impliedFormat":1},{"version":"59fb2c069260b4ba00b5643b907ef5d5341b167e7d1dbf58dfd895658bda2867","affectsGlobalScope":true,"impliedFormat":1},{"version":"639e512c0dfc3fad96a84caad71b8834d66329a1f28dc95e3946c9b58176c73a","affectsGlobalScope":true,"impliedFormat":1},{"version":"368af93f74c9c932edd84c58883e736c9e3d53cec1fe24c0b0ff451f529ceab1","affectsGlobalScope":true,"impliedFormat":1},{"version":"af3dd424cf267428f30ccfc376f47a2c0114546b55c44d8c0f1d57d841e28d74","affectsGlobalScope":true,"impliedFormat":1},{"version":"995c005ab91a498455ea8dfb63aa9f83fa2ea793c3d8aa344be4a1678d06d399","affectsGlobalScope":true,"impliedFormat":1},{"version":"959d36cddf5e7d572a65045b876f2956c973a586da58e5d26cde519184fd9b8a","affectsGlobalScope":true,"impliedFormat":1},{"version":"965f36eae237dd74e6cca203a43e9ca801ce38824ead814728a2807b1910117d","affectsGlobalScope":true,"impliedFormat":1},{"version":"3925a6c820dcb1a06506c90b1577db1fdbf7705d65b62b99dce4be75c637e26b","affectsGlobalScope":true,"impliedFormat":1},{"version":"0a3d63ef2b853447ec4f749d3f368ce642264246e02911fcb1590d8c161b8005","affectsGlobalScope":true,"impliedFormat":1},{"version":"8cdf8847677ac7d20486e54dd3fcf09eda95812ac8ace44b4418da1bbbab6eb8","affectsGlobalScope":true,"impliedFormat":1},{"version":"8444af78980e3b20b49324f4a16ba35024fef3ee069a0eb67616ea6ca821c47a","affectsGlobalScope":true,"impliedFormat":1},{"version":"3287d9d085fbd618c3971944b65b4be57859f5415f495b33a6adc994edd2f004","affectsGlobalScope":true,"impliedFormat":1},{"version":"b4b67b1a91182421f5df999988c690f14d813b9850b40acd06ed44691f6727ad","affectsGlobalScope":true,"impliedFormat":1},{"version":"51ad4c928303041605b4d7ae32e0c1ee387d43a24cd6f1ebf4a2699e1076d4fa","affectsGlobalScope":true,"impliedFormat":1},{"version":"196cb558a13d4533a5163286f30b0509ce0210e4b316c56c38d4c0fd2fb38405","affectsGlobalScope":true,"impliedFormat":1},{"version":"8e7f8264d0fb4c5339605a15daadb037bf238c10b654bb3eee14208f860a32ea","affectsGlobalScope":true,"impliedFormat":1},{"version":"782dec38049b92d4e85c1585fbea5474a219c6984a35b004963b00beb1aab538","affectsGlobalScope":true,"impliedFormat":1},{"version":"3cbad9a1ba4453443026ed38e4b8be018abb26565fa7c944376463ad9df07c41","impliedFormat":1},{"version":"d153a11543fd884b596587ccd97aebbeed950b26933ee000f94009f1ab142848","affectsGlobalScope":true,"impliedFormat":1},{"version":"0ccdaa19852d25ecd84eec365c3bfa16e7859cadecf6e9ca6d0dbbbee439743f","affectsGlobalScope":true,"impliedFormat":1},{"version":"438b41419b1df9f1fbe33b5e1b18f5853432be205991d1b19f5b7f351675541e","affectsGlobalScope":true,"impliedFormat":1},{"version":"096116f8fedc1765d5bd6ef360c257b4a9048e5415054b3bf3c41b07f8951b0b","affectsGlobalScope":true,"impliedFormat":1},{"version":"e5e01375c9e124a83b52ee4b3244ed1a4d214a6cfb54ac73e164a823a4a7860a","affectsGlobalScope":true,"impliedFormat":1},{"version":"f90ae2bbce1505e67f2f6502392e318f5714bae82d2d969185c4a6cecc8af2fc","affectsGlobalScope":true,"impliedFormat":1},{"version":"4b58e207b93a8f1c88bbf2a95ddc686ac83962b13830fe8ad3f404ffc7051fb4","affectsGlobalScope":true,"impliedFormat":1},{"version":"1fefabcb2b06736a66d2904074d56268753654805e829989a46a0161cd8412c5","affectsGlobalScope":true,"impliedFormat":1},{"version":"9798340ffb0d067d69b1ae5b32faa17ab31b82466a3fc00d8f2f2df0c8554aaa","affectsGlobalScope":true,"impliedFormat":1},{"version":"c18a99f01eb788d849ad032b31cafd49de0b19e083fe775370834c5675d7df8e","affectsGlobalScope":true,"impliedFormat":1},{"version":"5247874c2a23b9a62d178ae84f2db6a1d54e6c9a2e7e057e178cc5eea13757fc","affectsGlobalScope":true,"impliedFormat":1},{"version":"cdcf9ea426ad970f96ac930cd176d5c69c6c24eebd9fc580e1572d6c6a88f62c","impliedFormat":1},{"version":"23cd712e2ce083d68afe69224587438e5914b457b8acf87073c22494d706a3d0","impliedFormat":1},{"version":"487b694c3de27ddf4ad107d4007ad304d29effccf9800c8ae23c2093638d906a","impliedFormat":1},{"version":"3a80bc85f38526ca3b08007ee80712e7bb0601df178b23fbf0bf87036fce40ce","impliedFormat":1},{"version":"ccf4552357ce3c159ef75f0f0114e80401702228f1898bdc9402214c9499e8c0","impliedFormat":1},{"version":"c6fd2c5a395f2432786c9cb8deb870b9b0e8ff7e22c029954fabdd692bff6195","impliedFormat":1},{"version":"68834d631c8838c715f225509cfc3927913b9cc7a4870460b5b60c8dbdb99baf","impliedFormat":1},{"version":"2931540c47ee0ff8a62860e61782eb17b155615db61e36986e54645ec67f67c2","impliedFormat":1},{"version":"ccab02f3920fc75c01174c47fcf67882a11daf16baf9e81701d0a94636e94556","impliedFormat":1},{"version":"f6faf5f74e4c4cc309a6c6a6c4da02dbb840be5d3e92905a23dcd7b2b0bd1986","impliedFormat":1},{"version":"ea6bc8de8b59f90a7a3960005fd01988f98fd0784e14bc6922dde2e93305ec7d","impliedFormat":1},{"version":"36107995674b29284a115e21a0618c4c2751b32a8766dd4cb3ba740308b16d59","impliedFormat":1},{"version":"914a0ae30d96d71915fc519ccb4efbf2b62c0ddfb3a3fc6129151076bc01dc60","impliedFormat":1},{"version":"33e981bf6376e939f99bd7f89abec757c64897d33c005036b9a10d9587d80187","impliedFormat":1},{"version":"7fd1b31fd35876b0aa650811c25ec2c97a3c6387e5473eb18004bed86cdd76b6","impliedFormat":1},{"version":"b41767d372275c154c7ea6c9d5449d9a741b8ce080f640155cc88ba1763e35b3","impliedFormat":1},{"version":"3bacf516d686d08682751a3bd2519ea3b8041a164bfb4f1d35728993e70a2426","impliedFormat":1},{"version":"7fb266686238369442bd1719bc0d7edd0199da4fb8540354e1ff7f16669b4323","impliedFormat":1},{"version":"0a60a292b89ca7218b8616f78e5bbd1c96b87e048849469cccb4355e98af959a","impliedFormat":1},{"version":"0b6e25234b4eec6ed96ab138d96eb70b135690d7dd01f3dd8a8ab291c35a683a","impliedFormat":1},{"version":"9666f2f84b985b62400d2e5ab0adae9ff44de9b2a34803c2c5bd3c8325b17dc0","impliedFormat":1},{"version":"40cd35c95e9cf22cfa5bd84e96408b6fcbca55295f4ff822390abb11afbc3dca","impliedFormat":1},{"version":"b1616b8959bf557feb16369c6124a97a0e74ed6f49d1df73bb4b9ddf68acf3f3","impliedFormat":1},{"version":"5b03a034c72146b61573aab280f295b015b9168470f2df05f6080a2122f9b4df","impliedFormat":1},{"version":"40b463c6766ca1b689bfcc46d26b5e295954f32ad43e37ee6953c0a677e4ae2b","impliedFormat":1},{"version":"249b9cab7f5d628b71308c7d9bb0a808b50b091e640ba3ed6e2d0516f4a8d91d","impliedFormat":1},{"version":"80aae6afc67faa5ac0b32b5b8bc8cc9f7fa299cff15cf09cc2e11fd28c6ae29e","impliedFormat":1},{"version":"f473cd2288991ff3221165dcf73cd5d24da30391f87e85b3dd4d0450c787a391","impliedFormat":1},{"version":"499e5b055a5aba1e1998f7311a6c441a369831c70905cc565ceac93c28083d53","impliedFormat":1},{"version":"54c3e2371e3d016469ad959697fd257e5621e16296fa67082c2575d0bf8eced0","impliedFormat":1},{"version":"beb8233b2c220cfa0feea31fbe9218d89fa02faa81ef744be8dce5acb89bb1fd","impliedFormat":1},{"version":"c183b931b68ad184bc8e8372bf663f3d33304772fb482f29fb91b3c391031f3e","impliedFormat":1},{"version":"5d0375ca7310efb77e3ef18d068d53784faf62705e0ad04569597ae0e755c401","impliedFormat":1},{"version":"59af37caec41ecf7b2e76059c9672a49e682c1a2aa6f9d7dc78878f53aa284d6","impliedFormat":1},{"version":"addf417b9eb3f938fddf8d81e96393a165e4be0d4a8b6402292f9c634b1cb00d","impliedFormat":1},{"version":"48cc3ec153b50985fb95153258a710782b25975b10dd4ac8a4f3920632d10790","impliedFormat":1},{"version":"adf27937dba6af9f08a68c5b1d3fce0ca7d4b960c57e6d6c844e7d1a8e53adae","impliedFormat":1},{"version":"e1528ca65ac90f6fa0e4a247eb656b4263c470bb22d9033e466463e13395e599","impliedFormat":1},{"version":"2e85db9e6fd73cfa3d7f28e0ab6b55417ea18931423bd47b409a96e4a169e8e6","impliedFormat":1},{"version":"c46e079fe54c76f95c67fb89081b3e399da2c7d109e7dca8e4b58d83e332e605","impliedFormat":1},{"version":"866078923a56d026e39243b4392e282c1c63159723996fa89243140e1388a98d","impliedFormat":1},{"version":"dd0109710de4cd93e245121ab86d8c66d20f3ead80074b68e9c3e349c4f53342","affectsGlobalScope":true,"impliedFormat":1},{"version":"b3275d55fac10b799c9546804126239baf020d220136163f763b55a74e50e750","affectsGlobalScope":true,"impliedFormat":1},{"version":"fa68a0a3b7cb32c00e39ee3cd31f8f15b80cac97dce51b6ee7fc14a1e8deb30b","affectsGlobalScope":true,"impliedFormat":1},{"version":"1cf059eaf468efcc649f8cf6075d3cb98e9a35a0fe9c44419ec3d2f5428d7123","affectsGlobalScope":true,"impliedFormat":1},{"version":"6c36e755bced82df7fb6ce8169265d0a7bb046ab4e2cb6d0da0cb72b22033e89","affectsGlobalScope":true,"impliedFormat":1},{"version":"e7721c4f69f93c91360c26a0a84ee885997d748237ef78ef665b153e622b36c1","affectsGlobalScope":true,"impliedFormat":1},{"version":"7a93de4ff8a63bafe62ba86b89af1df0ccb5e40bb85b0c67d6bbcfdcf96bf3d4","affectsGlobalScope":true,"impliedFormat":1},{"version":"90e85f9bc549dfe2b5749b45fe734144e96cd5d04b38eae244028794e142a77e","affectsGlobalScope":true,"impliedFormat":1},{"version":"e0a5deeb610b2a50a6350bd23df6490036a1773a8a71d70f2f9549ab009e67ee","affectsGlobalScope":true,"impliedFormat":1},{"version":"435b3711465425770ed2ee2f1cf00ce071835265e0851a7dc4600ab4b007550e","impliedFormat":1},{"version":"7e49f52a159435fc8df4de9dc377ef5860732ca2dc9efec1640531d3cf5da7a3","impliedFormat":1},{"version":"dd4bde4bdc2e5394aed6855e98cf135dfdf5dd6468cad842e03116d31bbcc9bc","impliedFormat":1},{"version":"4d4e879009a84a47c05350b8dca823036ba3a29a3038efed1be76c9f81e45edf","affectsGlobalScope":true,"impliedFormat":1},{"version":"cf83d90d5faf27b994c2e79af02e32b555dbfe42cd9bd1571445f2168d1f4e2d","impliedFormat":1},{"version":"9ba13b47cb450a438e3076c4a3f6afb9dc85e17eae50f26d4b2d72c0688c9251","impliedFormat":1},{"version":"b64cd4401633ea4ecadfd700ddc8323a13b63b106ac7127c1d2726f32424622c","impliedFormat":1},{"version":"37c6e5fe5715814412b43cc9b50b24c67a63c4e04e753e0d1305970d65417a60","impliedFormat":1},{"version":"0e28335ac43f4d94dd2fe6d9e6fa6813570640839addd10d309d7985f33a6308","impliedFormat":1},{"version":"ee0e4946247f842c6dd483cbb60a5e6b484fee07996e3a7bc7343dfb68a04c5d","impliedFormat":1},{"version":"ef051f42b7e0ef5ca04552f54c4552eac84099d64b6c5ad0ef4033574b6035b8","impliedFormat":1},{"version":"853a43154f1d01b0173d9cbd74063507ece57170bad7a3b68f3fa1229ad0a92f","impliedFormat":1},{"version":"56231e3c39a031bfb0afb797690b20ed4537670c93c0318b72d5180833d98b72","impliedFormat":1},{"version":"5cc7c39031bfd8b00ad58f32143d59eb6ffc24f5d41a20931269011dccd36c5e","impliedFormat":1},{"version":"b0b69c61b0f0ec8ca15db4c8c41f6e77f4cacb784d42bca948f42dea33e8757e","affectsGlobalScope":true,"impliedFormat":1},{"version":"f96a48183254c00d24575401f1a761b4ce4927d927407e7862a83e06ce5d6964","impliedFormat":1},{"version":"cc25940cfb27aa538e60d465f98bb5068d4d7d33131861ace43f04fe6947d68f","impliedFormat":1},{"version":"ac86245c2f31335bfd52cbe7fc760f9fc4f165387875869a478a6d9616a95e72","impliedFormat":1},{"version":"01ff95aa1443e3f7248974e5a771f513cb2ac158c8898f470a1792f817bee497","impliedFormat":1},{"version":"9d96a7ce809392ff2cb99691acf7c62e632fe56897356ba013b689277aca3619","impliedFormat":1},{"version":"42a05d8f239f74587d4926aba8cc54792eed8e8a442c7adc9b38b516642aadfe","impliedFormat":1},{"version":"5d21b58d60383cc6ab9ad3d3e265d7d25af24a2c9b506247e0e50b0a884920be","impliedFormat":1},{"version":"101f482fd48cb4c7c0468dcc6d62c843d842977aea6235644b1edd05e81fbf22","impliedFormat":1},{"version":"ae6757460f37078884b1571a3de3ebaf724d827d7e1d53626c02b3c2a408ac63","affectsGlobalScope":true,"impliedFormat":1},{"version":"27c0a08e343c6a0ae17bd13ba6d44a9758236dc904cd5e4b43456996cd51f520","impliedFormat":1},{"version":"3ef397f12387eff17f550bc484ea7c27d21d43816bbe609d495107f44b97e933","impliedFormat":1},{"version":"1023282e2ba810bc07905d3668349fbd37a26411f0c8f94a70ef3c05fe523fcf","impliedFormat":1},{"version":"b214ebcf76c51b115453f69729ee8aa7b7f8eccdae2a922b568a45c2d7ff52f7","impliedFormat":1},{"version":"429c9cdfa7d126255779efd7e6d9057ced2d69c81859bbab32073bad52e9ba76","impliedFormat":1},{"version":"6f80e51ba310608cd71bcdc09a171d7bbfb3b316048601c9ec215ce16a8dcfbc","impliedFormat":1},{"version":"63054ef6518309c85b11e00537eef47a2b8609c6c20630b1a1daaecf86ea0d28","affectsGlobalScope":true,"impliedFormat":1},{"version":"7f2c62938251b45715fd2a9887060ec4fbc8724727029d1cbce373747252bdd7","impliedFormat":1},{"version":"e3ace08b6bbd84655d41e244677b474fd995923ffef7149ddb68af8848b60b05","impliedFormat":1},{"version":"132580b0e86c48fab152bab850fc57a4b74fe915c8958d2ccb052b809a44b61c","impliedFormat":1},{"version":"af4ab0aa8908fc9a655bb833d3bc28e117c4f0e1038c5a891546158beb25accb","impliedFormat":1},{"version":"69c9a5a9392e8564bd81116e1ed93b13205201fb44cb35a7fde8c9f9e21c4b23","impliedFormat":1},{"version":"5f8fc37f8434691ffac1bfd8fc2634647da2c0e84253ab5d2dd19a7718915b35","impliedFormat":1},{"version":"5981c2340fd8b076cae8efbae818d42c11ffc615994cb060b1cd390795f1be2b","impliedFormat":1},{"version":"2ca2bca6845a7234eff5c3d192727a068fca72ac565f3c819c6b04ccc83dadc0","impliedFormat":1},{"version":"ed4f674fc8c0c993cc7e145069ac44129e03519b910c62be206a0cc777bdc60b","affectsGlobalScope":true,"impliedFormat":1},{"version":"0250da3eb85c99624f974e77ef355cdf86f43980251bc371475c2b397ba55bcd","impliedFormat":1},{"version":"f1c93e046fb3d9b7f8249629f4b63dc068dd839b824dd0aa39a5e68476dc9420","impliedFormat":1},{"version":"3d3a5f27ffbc06c885dd4d5f9ee20de61faf877fe2c3a7051c4825903d9a7fdc","impliedFormat":1},{"version":"12806f9f085598ef930edaf2467a5fa1789a878fba077cd27e85dc5851e11834","impliedFormat":1},{"version":"17d06eb5709839c7ce719f0c38ada6f308fb433f2cd6d8c87b35856e07400950","impliedFormat":1},{"version":"a43fe41c33d0a192a0ecaf9b92e87bef3709c9972e6d53c42c49251ccb962d69","impliedFormat":1},{"version":"a177959203c017fad3ecc4f3d96c8757a840957a4959a3ae00dab9d35961ca6c","affectsGlobalScope":true,"impliedFormat":1},{"version":"6fc727ccf9b36e257ff982ea0badeffbfc2c151802f741bddff00c6af3b784cf","impliedFormat":1},{"version":"2a00d005e3af99cd1cfa75220e60c61b04bfb6be7ca7453bfe2ef6cca37cc03c","impliedFormat":1},{"version":"4844a4c9b4b1e812b257676ed8a80b3f3be0e29bf05e742cc2ea9c3c6865e6c6","impliedFormat":1},{"version":"064878a60367e0407c42fb7ba02a2ea4d83257357dc20088e549bd4d89433e9c","impliedFormat":1},{"version":"14d4bd22d1b05824971b98f7e91b2484c90f1a684805c330476641417c3d9735","impliedFormat":1},{"version":"586eaf66bace2e731cee0ddfbfac326ad74a83c1acfeac4afb2db85ad23226c7","impliedFormat":1},{"version":"b484ec11ba00e3a2235562a41898d55372ccabe607986c6fa4f4aba72093749f","impliedFormat":1},{"version":"d1a14d87cedcf4f0b8173720d6eb29cc02878bf2b6dabf9c9d9cee742f275368","impliedFormat":1},{"version":"e60efae9fe48a2955f66bf4cbf0f082516185b877daf50d9c5e2a009660a7714","impliedFormat":1},{"version":"041a7781b9127ab568d2cdcce62c58fdea7c7407f40b8c50045d7866a2727130","impliedFormat":1},{"version":"b37f83e7deea729aa9ce5593f78905afb45b7532fdff63041d374f60059e7852","impliedFormat":1},{"version":"e1cb68f3ef3a8dd7b2a9dfb3de482ed6c0f1586ba0db4e7d73c1d2147b6ffc51","impliedFormat":1},{"version":"55cdbeebe76a1fa18bbd7e7bf73350a2173926bd3085bb050cf5a5397025ee4e","impliedFormat":1},{"version":"908217c4f2244ec402b73533ebfcc46d6dcd34fc1c807ff403d7f98702abb3bc","impliedFormat":1},{"version":"1bc5991c91bf4be8b59db501ed284a34945d95abe9b7451d02ea001f7c5621a9","impliedFormat":1},{"version":"d8b8a5a6bf623239d5374ad4a7ff6f3b195ab5ee61293f59f1957e90d2a22809","impliedFormat":1},{"version":"35d283eca7dc0a0c7b099f5fbbf0678b87f3d837572cd5e539ba297ad9837e68","impliedFormat":1},{"version":"1c8384a195a2d931cf6e2b8f656acf558ca649a3f74922d86b95889f49a7f7c5","impliedFormat":1},{"version":"cd11655f57a3558dfcee05a6e78c026f9dfd30535eaf124439c5e88a5617359b","impliedFormat":1},{"version":"174c377b913aedc01fe228a22800fb659f3e9a8d325dfca14dcc4c775496de68","signature":"0d751e90e43705e660da64fffdeed54411f9fa63e9bda6f56187cf19f656814b"},{"version":"328d409bf58eeb6bba2ed1eabc8b8bf6039fdf8478742fbad848751f6ec55639","signature":"f491deeecd7b1ca6c90c0948eb4dd74182cd897aaf02ee06a2420f818f7b9942"},{"version":"1549f66698bc15748ff3136a558ea0b9e0c5a020b3fdf0c52dedd2c7408c4cbc","signature":"04a2d18c11897d47e4db1ca2ca9f36b08855af9639f6c07b455e322586aa3874"}],"root":[[193,195]],"options":{"declaration":true,"emitDecoratorMetadata":true,"esModuleInterop":true,"experimentalDecorators":true,"module":1,"outDir":"./","skipLibCheck":true,"sourceMap":true,"strict":true,"strictPropertyInitialization":false,"target":9},"referencedMap":[[127,1],[128,1],[129,2],[68,3],[130,4],[131,5],[132,6],[66,7],[133,8],[134,9],[135,10],[136,11],[137,12],[138,13],[139,13],[140,14],[141,15],[142,16],[143,17],[69,7],[67,7],[144,18],[145,19],[146,20],[186,21],[147,22],[148,23],[149,22],[150,24],[151,25],[152,26],[153,27],[154,27],[155,27],[156,28],[157,29],[158,30],[159,31],[160,32],[161,33],[162,33],[163,34],[164,7],[165,7],[166,35],[167,36],[168,35],[169,37],[170,38],[171,39],[172,40],[173,41],[174,42],[175,43],[176,44],[177,45],[178,46],[179,47],[180,48],[181,49],[182,50],[183,51],[70,22],[71,7],[72,52],[73,53],[74,7],[75,54],[76,7],[118,55],[119,56],[120,57],[121,57],[122,58],[123,7],[124,4],[125,59],[126,56],[184,60],[185,61],[187,7],[188,62],[63,7],[64,7],[12,7],[10,7],[11,7],[16,7],[15,7],[2,7],[17,7],[18,7],[19,7],[20,7],[21,7],[22,7],[23,7],[24,7],[3,7],[25,7],[26,7],[4,7],[27,7],[31,7],[28,7],[29,7],[30,7],[32,7],[33,7],[34,7],[5,7],[35,7],[36,7],[37,7],[38,7],[6,7],[42,7],[39,7],[40,7],[41,7],[43,7],[7,7],[44,7],[49,7],[50,7],[45,7],[46,7],[47,7],[48,7],[8,7],[54,7],[51,7],[52,7],[53,7],[55,7],[9,7],[56,7],[65,7],[57,7],[58,7],[60,7],[59,7],[1,7],[61,7],[62,7],[14,7],[13,7],[94,63],[106,64],[92,65],[107,66],[116,67],[83,68],[84,69],[82,70],[115,71],[110,72],[114,73],[86,74],[103,75],[85,76],[113,77],[80,78],[81,72],[87,79],[88,7],[93,80],[91,79],[78,81],[117,82],[108,83],[97,84],[96,79],[98,85],[101,86],[95,87],[99,88],[111,71],[89,89],[90,90],[102,91],[79,66],[105,92],[104,79],[100,93],[109,7],[77,7],[112,94],[189,95],[192,96],[190,71],[191,97],[195,98],[194,99],[193,100]],"version":"5.9.3"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { Logger } from 'winston';
|
|
2
|
+
/**
|
|
3
|
+
* @description Winston logger wrapper class for structured logging
|
|
4
|
+
* Configures and initializes Winston logger with console transport and formatted output
|
|
5
|
+
*/
|
|
6
|
+
export declare class WinstonLogger {
|
|
7
|
+
logger: Logger;
|
|
8
|
+
private serviceName;
|
|
9
|
+
/**
|
|
10
|
+
* @description Initialize Winston logger instance
|
|
11
|
+
*/
|
|
12
|
+
constructor();
|
|
13
|
+
/**
|
|
14
|
+
* @description Initialize and configure Winston logger
|
|
15
|
+
*/
|
|
16
|
+
initiateLogger(): void;
|
|
17
|
+
/**
|
|
18
|
+
* @description Fetch Configuration for Logger
|
|
19
|
+
* @returns {LoggerOptions}
|
|
20
|
+
*/
|
|
21
|
+
private getConfiguration;
|
|
22
|
+
}
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.WinstonLogger = void 0;
|
|
4
|
+
const winston_1 = require("winston");
|
|
5
|
+
/**
|
|
6
|
+
* @description Winston logger wrapper class for structured logging
|
|
7
|
+
* Configures and initializes Winston logger with console transport and formatted output
|
|
8
|
+
*/
|
|
9
|
+
class WinstonLogger {
|
|
10
|
+
logger;
|
|
11
|
+
serviceName = process.env.SERVICE_NAME || '';
|
|
12
|
+
/**
|
|
13
|
+
* @description Initialize Winston logger instance
|
|
14
|
+
*/
|
|
15
|
+
constructor() {
|
|
16
|
+
this.initiateLogger();
|
|
17
|
+
}
|
|
18
|
+
/**
|
|
19
|
+
* @description Initialize and configure Winston logger
|
|
20
|
+
*/
|
|
21
|
+
initiateLogger() {
|
|
22
|
+
this.logger = (0, winston_1.createLogger)(this.getConfiguration());
|
|
23
|
+
}
|
|
24
|
+
/**
|
|
25
|
+
* @description Fetch Configuration for Logger
|
|
26
|
+
* @returns {LoggerOptions}
|
|
27
|
+
*/
|
|
28
|
+
getConfiguration() {
|
|
29
|
+
const winstonConfig = {
|
|
30
|
+
transports: [new winston_1.transports.Console()],
|
|
31
|
+
format: winston_1.format.combine(winston_1.format.label({
|
|
32
|
+
label: this.serviceName
|
|
33
|
+
}), winston_1.format.timestamp({
|
|
34
|
+
format: 'MMM-DD-YYYY HH:mm:ss'
|
|
35
|
+
}), winston_1.format.prettyPrint()),
|
|
36
|
+
defaultMeta: {
|
|
37
|
+
service: this.serviceName
|
|
38
|
+
},
|
|
39
|
+
silent: false
|
|
40
|
+
};
|
|
41
|
+
return winstonConfig;
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
exports.WinstonLogger = WinstonLogger;
|
|
45
|
+
//# sourceMappingURL=winston.logger.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"winston.logger.js","sourceRoot":"","sources":["../src/winston.logger.ts"],"names":[],"mappings":";;;AAAA,qCAAkF;AAElF;;;GAGG;AACH,MAAa,aAAa;IACf,MAAM,CAAS;IACd,WAAW,GAAW,OAAO,CAAC,GAAG,CAAC,YAAY,IAAI,EAAE,CAAC;IAE7D;;OAEG;IACH;QACI,IAAI,CAAC,cAAc,EAAE,CAAC;IAC1B,CAAC;IAED;;OAEG;IACH,cAAc;QACV,IAAI,CAAC,MAAM,GAAG,IAAA,sBAAY,EAAC,IAAI,CAAC,gBAAgB,EAAE,CAAC,CAAC;IACxD,CAAC;IAED;;;OAGG;IACK,gBAAgB;QACpB,MAAM,aAAa,GAAkB;YACjC,UAAU,EAAE,CAAC,IAAI,oBAAU,CAAC,OAAO,EAAE,CAAC;YACtC,MAAM,EAAE,gBAAM,CAAC,OAAO,CAClB,gBAAM,CAAC,KAAK,CAAC;gBACT,KAAK,EAAE,IAAI,CAAC,WAAW;aAC1B,CAAC,EACF,gBAAM,CAAC,SAAS,CAAC;gBACb,MAAM,EAAE,sBAAsB;aACjC,CAAC,EACF,gBAAM,CAAC,WAAW,EAAE,CAcvB;YACD,WAAW,EAAE;gBACT,OAAO,EAAE,IAAI,CAAC,WAAW;aAC5B;YACD,MAAM,EAAE,KAAK;SAChB,CAAC;QACF,OAAO,aAAa,CAAC;IACzB,CAAC;CACJ;AAtDD,sCAsDC"}
|
package/package.json
ADDED
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "@appinventiv/logger",
|
|
3
|
+
"version": "1.0.0",
|
|
4
|
+
"description": "Reusable Winston logger with context for Node.js services",
|
|
5
|
+
"main": "dist/index.js",
|
|
6
|
+
"types": "dist/index.d.ts",
|
|
7
|
+
"scripts": {
|
|
8
|
+
"build": "tsc",
|
|
9
|
+
"test": "echo \"Error: no test specified\" && exit 1"
|
|
10
|
+
},
|
|
11
|
+
"keywords": [],
|
|
12
|
+
"author": "",
|
|
13
|
+
"license": "ISC",
|
|
14
|
+
"dependencies": {
|
|
15
|
+
"winston": "^3.19.0"
|
|
16
|
+
},
|
|
17
|
+
"devDependencies": {
|
|
18
|
+
"@types/node": "^25.0.9",
|
|
19
|
+
"typescript": "^5.9.3"
|
|
20
|
+
}
|
|
21
|
+
}
|
package/src/index.ts
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './logger';
|
package/src/logger.ts
ADDED
|
@@ -0,0 +1,81 @@
|
|
|
1
|
+
import { WinstonLogger } from "./winston.logger";
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* @description Logger utility class for structured logging with trace context
|
|
5
|
+
* Provides methods to log messages with trace ID, user ID, and request source information
|
|
6
|
+
*/
|
|
7
|
+
export class LoggerUtils {
|
|
8
|
+
private traceId?: string;
|
|
9
|
+
private userId?: string;
|
|
10
|
+
private requestFrom?: string;
|
|
11
|
+
private WL: WinstonLogger;
|
|
12
|
+
|
|
13
|
+
/**
|
|
14
|
+
* @description Initialize LoggerUtils with Winston logger instance
|
|
15
|
+
*/
|
|
16
|
+
constructor() {
|
|
17
|
+
this.WL = new WinstonLogger();
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
/**
|
|
21
|
+
* @description Set trace ID for request tracking
|
|
22
|
+
* @param {string} traceId - Unique trace identifier for the request
|
|
23
|
+
*/
|
|
24
|
+
setTraceId(traceId: string) {
|
|
25
|
+
this.traceId = traceId;
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
/**
|
|
29
|
+
* @description Set user ID for logging context
|
|
30
|
+
* @param {string} userId - User identifier
|
|
31
|
+
*/
|
|
32
|
+
setUserId(userId: string) {
|
|
33
|
+
this.userId = userId;
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
/**
|
|
37
|
+
* @description Set request source for logging context
|
|
38
|
+
* @param {string} requestFrom - Source of the request (e.g., 'API', 'Worker', 'Cron')
|
|
39
|
+
*/
|
|
40
|
+
setRequestFrom(requestFrom: string) {
|
|
41
|
+
this.requestFrom = requestFrom;
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
/**
|
|
45
|
+
* @description Get trace information object
|
|
46
|
+
* @returns {Object} Object containing traceId, userId, and requestFrom
|
|
47
|
+
*/
|
|
48
|
+
private traceInfo() {
|
|
49
|
+
return {
|
|
50
|
+
traceId: this.traceId || "N/A",
|
|
51
|
+
userId: this.userId || "N/A",
|
|
52
|
+
requestFrom: this.requestFrom || "N/A"
|
|
53
|
+
};
|
|
54
|
+
}
|
|
55
|
+
|
|
56
|
+
/**
|
|
57
|
+
* @description Log informational message
|
|
58
|
+
* @param {...any} logs - One or more log messages or objects to log
|
|
59
|
+
*/
|
|
60
|
+
info(...logs: any[]) {
|
|
61
|
+
this.WL.logger.info({ trace: this.traceInfo(), logs });
|
|
62
|
+
}
|
|
63
|
+
|
|
64
|
+
/**
|
|
65
|
+
* @description Log warning message
|
|
66
|
+
* @param {...any} logs - One or more log messages or objects to log
|
|
67
|
+
*/
|
|
68
|
+
warn(...logs: any[]) {
|
|
69
|
+
this.WL.logger.warn({ trace: this.traceInfo(), logs });
|
|
70
|
+
}
|
|
71
|
+
|
|
72
|
+
/**
|
|
73
|
+
* @description Log error message
|
|
74
|
+
* @param {...any} logs - One or more log messages or objects to log
|
|
75
|
+
*/
|
|
76
|
+
error(...logs: any[]) {
|
|
77
|
+
this.WL.logger.error({ trace: this.traceInfo(), logs });
|
|
78
|
+
}
|
|
79
|
+
}
|
|
80
|
+
|
|
81
|
+
export const logger = new LoggerUtils();
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
import { LoggerOptions, transports, Logger, createLogger, format } from 'winston';
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* @description Winston logger wrapper class for structured logging
|
|
5
|
+
* Configures and initializes Winston logger with console transport and formatted output
|
|
6
|
+
*/
|
|
7
|
+
export class WinstonLogger {
|
|
8
|
+
public logger: Logger;
|
|
9
|
+
private serviceName: string = process.env.SERVICE_NAME || '';
|
|
10
|
+
|
|
11
|
+
/**
|
|
12
|
+
* @description Initialize Winston logger instance
|
|
13
|
+
*/
|
|
14
|
+
constructor() {
|
|
15
|
+
this.initiateLogger();
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
/**
|
|
19
|
+
* @description Initialize and configure Winston logger
|
|
20
|
+
*/
|
|
21
|
+
initiateLogger() {
|
|
22
|
+
this.logger = createLogger(this.getConfiguration());
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
/**
|
|
26
|
+
* @description Fetch Configuration for Logger
|
|
27
|
+
* @returns {LoggerOptions}
|
|
28
|
+
*/
|
|
29
|
+
private getConfiguration(): LoggerOptions {
|
|
30
|
+
const winstonConfig: LoggerOptions = {
|
|
31
|
+
transports: [new transports.Console()],
|
|
32
|
+
format: format.combine(
|
|
33
|
+
format.label({
|
|
34
|
+
label: this.serviceName
|
|
35
|
+
}),
|
|
36
|
+
format.timestamp({
|
|
37
|
+
format: 'MMM-DD-YYYY HH:mm:ss'
|
|
38
|
+
}),
|
|
39
|
+
format.prettyPrint(),
|
|
40
|
+
// format.printf(({ level, message, label, timestamp }) => {
|
|
41
|
+
// let logMessage: any = `${label} ${timestamp} ${level} `;
|
|
42
|
+
// try {
|
|
43
|
+
// logMessage += `${message || ''}`;
|
|
44
|
+
// if (typeof message === 'object') {
|
|
45
|
+
// logMessage += ` ${JSON.stringify(message)}`;
|
|
46
|
+
// }
|
|
47
|
+
// return logMessage;
|
|
48
|
+
// } catch (error) {
|
|
49
|
+
// logMessage += `Invalid Log Message`;
|
|
50
|
+
// return logMessage;
|
|
51
|
+
// }
|
|
52
|
+
// })
|
|
53
|
+
),
|
|
54
|
+
defaultMeta: {
|
|
55
|
+
service: this.serviceName
|
|
56
|
+
},
|
|
57
|
+
silent: false
|
|
58
|
+
};
|
|
59
|
+
return winstonConfig;
|
|
60
|
+
}
|
|
61
|
+
}
|
package/tsconfig.json
ADDED
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
{
|
|
2
|
+
"compilerOptions": {
|
|
3
|
+
"declaration": true,
|
|
4
|
+
"target": "es2022", /* Set the JavaScript language version for emitted JavaScript and include compatible library declarations. */
|
|
5
|
+
"module": "commonjs",
|
|
6
|
+
"incremental": true,
|
|
7
|
+
"noEmit": false, /* Specify what module code is generated. */
|
|
8
|
+
"outDir": "./dist", /* Specify an output folder for all emitted files. */
|
|
9
|
+
"esModuleInterop": true, /* Emit additional JavaScript to ease support for importing CommonJS modules. This enables 'allowSyntheticDefaultImports' for type compatibility. */
|
|
10
|
+
"forceConsistentCasingInFileNames": true, /* Ensure that casing is correct in imports. */
|
|
11
|
+
"strict": true, /* Enable all strict type-checking options. */
|
|
12
|
+
"skipLibCheck": true, /* Skip type checking all .d.ts files. */
|
|
13
|
+
"strictPropertyInitialization": false, /* Check for class properties that are declared but not set in the constructor. */
|
|
14
|
+
"sourceMap": true, /* Create source map files for emitted JavaScript files. */
|
|
15
|
+
"resolveJsonModule": true,
|
|
16
|
+
"experimentalDecorators": true,
|
|
17
|
+
"emitDecoratorMetadata": true,
|
|
18
|
+
"baseUrl": ".",
|
|
19
|
+
}
|
|
20
|
+
}
|
|
21
|
+
|