zeddemore-logger 1.0.0 → 1.0.2

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.
@@ -118,10 +118,10 @@ class ZeddemoreLogger {
118
118
 
119
119
  /**
120
120
  * Create a Winston Logger
121
- * @param options
121
+ * @param [options] {Object}
122
122
  * @returns {Logger}
123
123
  */
124
- #createLogger = (options = { }) => {
124
+ createLogger = (options) => {
125
125
  options = options || { };
126
126
  return createWinstonLogger({
127
127
  format: this.#buildWinstonFormat(options, options.formats),
@@ -129,6 +129,25 @@ class ZeddemoreLogger {
129
129
  });
130
130
  }
131
131
 
132
+ createRequestLogger = (requestId = null, ipAddress = null) => {
133
+ requestId = requestId || this.#generateUuid();
134
+ const loggerOptions = { id: requestId };
135
+ if (ipAddress) loggerOptions.ip = ipAddress;
136
+ return this.createLogger(loggerOptions);
137
+ }
138
+
139
+ createUserLogger = (requestId = null, username = null, logLevel = this.defaultUserLogLevel, ipAddress = null) => {
140
+ requestId = requestId || this.#generateUuid();
141
+ logLevel = logLevel || this.defaultUserLogLevel;
142
+ const loggerOptions = { id: requestId, level: logLevel, user: username };
143
+ if (ipAddress) loggerOptions.ip = ipAddress;
144
+ return this.createLogger(loggerOptions);
145
+ }
146
+
147
+ #generateUuid() {
148
+ return uuid(null, null, null);
149
+ }
150
+
132
151
  #getRequestId = (req) => {
133
152
  if (!req) return null;
134
153
  return req[ this.requestIdAttribute ];
@@ -153,31 +172,12 @@ class ZeddemoreLogger {
153
172
  morgan.token('status-colored', (req, res) => { return buildStatusColoredToken(res); });
154
173
  }
155
174
 
156
- #createRequestLogger = (requestId = null, ipAddress = null) => {
157
- requestId = requestId || this.#generateUuid();
158
- const loggerOptions = { id: requestId };
159
- if (ipAddress) loggerOptions.ip = ipAddress;
160
- return this.#createLogger(loggerOptions);
161
- }
162
-
163
- #createUserLogger = (requestId = null, username = null, logLevel = this.defaultUserLogLevel, ipAddress = null) => {
164
- requestId = requestId || this.#generateUuid();
165
- logLevel = logLevel || this.defaultUserLogLevel;
166
- const loggerOptions = { id: requestId, level: logLevel, user: username };
167
- if (ipAddress) loggerOptions.ip = ipAddress;
168
- return this.#createLogger(loggerOptions);
169
- }
170
-
171
- #generateUuid() {
172
- return uuid(null, null, null);
173
- }
174
-
175
175
  static log(options) {
176
176
  options = options || { };
177
177
  const logger = options.logger || (options.user ? options.user.logger : null) || ((app && app.locals) ? app.locals.logger : null);
178
178
  if (logger) return logger;
179
179
  const zeddemoreLogger = new ZeddemoreLogger();
180
- return zeddemoreLogger.#createLogger(options);
180
+ return zeddemoreLogger.createLogger(options);
181
181
  }
182
182
 
183
183
  morganMiddleware = (options) => {
@@ -210,7 +210,7 @@ class ZeddemoreLogger {
210
210
  res.header(rqh.REQUEST_ID, requestId);
211
211
  const ipAddress = requestValues.ipAddress;
212
212
  res.locals.user = res.locals.user || { };
213
- res.locals.user.logger = this.#createRequestLogger(requestId, ipAddress);
213
+ res.locals.user.logger = this.createRequestLogger(requestId, ipAddress);
214
214
  return next();
215
215
  }
216
216
 
@@ -232,7 +232,7 @@ class ZeddemoreLogger {
232
232
  if (userLogLevel < 0) userLogLevel = this.logLevel;
233
233
  const level = this.forceLogLevel ? this.logLevel : userLogLevel;
234
234
  res.locals.user = res.locals.user || user;
235
- res.locals.user.logger = this.#createUserLogger(requestId, username, level, ipAddress);
235
+ res.locals.user.logger = this.createUserLogger(requestId, username, level, ipAddress);
236
236
  return next();
237
237
  }
238
238
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "zeddemore-logger",
3
- "version": "1.0.0",
3
+ "version": "1.0.2",
4
4
  "description": "Node.js Express logger using Morgan and Winston for thread and caller info tracking",
5
5
  "repository": {
6
6
  "type": "git",