@oino-ts/common 0.15.2 → 0.16.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.
@@ -29,7 +29,7 @@ var OINOLogLevel;
29
29
  */
30
30
  class OINOLog {
31
31
  static _instance;
32
- _logLevels = { "||": OINOLogLevel.warning };
32
+ _logLevels = { "|||": OINOLogLevel.warning };
33
33
  _defaultLogLevel = OINOLogLevel.warning;
34
34
  /**
35
35
  * Abstract logging method to implement the actual logging operation.
@@ -39,7 +39,7 @@ class OINOLog {
39
39
  */
40
40
  constructor(logLevel = OINOLogLevel.warning) {
41
41
  // console.log("OINOLog.constructor: logLevel=" + logLevel)
42
- this._logLevels["||"] = logLevel;
42
+ this._logLevels["|||"] = logLevel;
43
43
  this._defaultLogLevel = logLevel;
44
44
  }
45
45
  /**
@@ -55,10 +55,11 @@ class OINOLog {
55
55
  if (OINOLog._instance) {
56
56
  const log_levels = OINOLog._instance._logLevels;
57
57
  // console.log(log_levels)
58
- const min_level = log_levels[domain + "|" + channel + "|" + method] ||
59
- log_levels[domain + "|" + channel + "|"] ||
60
- log_levels[domain + "||"] ||
61
- log_levels["||"];
58
+ const min_level = log_levels[domain + "|" + channel + "|" + method + "|" + message] ||
59
+ log_levels[domain + "|" + channel + "|" + method + "|"] ||
60
+ log_levels[domain + "|" + channel + "||"] ||
61
+ log_levels[domain + "|||"] ||
62
+ log_levels["|||"];
62
63
  // console.log("_log: level=" + level + ", min_level=" + min_level + ", levelStr=" + levelStr + ", message=" + message, data)
63
64
  if (level >= min_level) {
64
65
  OINOLog._instance?._writeLog(levelStr, domain, channel, method, message, data);
@@ -82,19 +83,19 @@ class OINOLog {
82
83
  * Multiple settings can be combined to set different logging accuracy specifically
83
84
  *
84
85
  * For example:
85
- * logLevel: warning, domain: *, channel: *, method: * will only output error events.
86
- * logLevel: debug, domain: d1, channel: c1, method: "*" will enable debug events for channel c1 of domain d1.
86
+ * logLevel: warning, domain: "", channel: "", method: "" will only output warning and higher events.
87
+ * logLevel: debug, domain: d1, channel: c1, method: "" will enable debug events for channel c1 of domain d1.
87
88
  * logLevel: info, domain: d1, channel: c1, method: m1 will supress debug events for method m1.
88
89
  *
89
90
  * @param logLevel log level to use
90
- * @param domain domain of the log event (default: "*" for all)
91
- * @param channel channel of the log event (default: "*" for all)
92
- * @param method method of the log event (default: "*" for all)
93
- *
91
+ * @param domain domain of the log event (default: "" for all)
92
+ * @param channel channel of the log event (default: "" for all)
93
+ * @param method method of the log event (default: "" for all)
94
+ * @param message message of the log event (default: "" for all)
94
95
  */
95
- static setLogLevel(logLevel, domain = "", channel = "", method = "") {
96
+ static setLogLevel(logLevel, domain = "", channel = "", method = "", message = "") {
96
97
  if (OINOLog._instance) {
97
- OINOLog._instance._logLevels[domain + "|" + channel + "|" + method] = logLevel;
98
+ OINOLog._instance._logLevels[domain + "|" + channel + "|" + method + "|" + message] = logLevel;
98
99
  }
99
100
  }
100
101
  /**
@@ -175,9 +176,10 @@ class OINOLog {
175
176
  if (level) {
176
177
  const parts = key.split("|");
177
178
  result.push({
178
- domain: parts[0],
179
- channel: parts[1],
180
- method: parts[2],
179
+ domain: parts[0] || "",
180
+ channel: parts[1] || "",
181
+ method: parts[2] || "",
182
+ message: parts[3] || "",
181
183
  level: level
182
184
  });
183
185
  }
@@ -197,9 +199,10 @@ class OINOLog {
197
199
  const domain = logLevel.domain || "";
198
200
  const channel = logLevel.channel || "";
199
201
  const method = logLevel.method || "";
202
+ const message = logLevel.message || "";
200
203
  const level = logLevel.level;
201
204
  if (level && OINOLogLevel[level]) {
202
- OINOLog._instance._logLevels[domain + "|" + channel + "|" + method] = level;
205
+ OINOLog._instance._logLevels[domain + "|" + channel + "|" + method + "|" + message] = level;
203
206
  }
204
207
  }
205
208
  }
@@ -212,7 +215,7 @@ class OINOLog {
212
215
  */
213
216
  static importLogLevels(logLevels) {
214
217
  if (OINOLog._instance) {
215
- OINOLog._instance._logLevels = { "||": OINOLog._instance._defaultLogLevel }; // reset to default log level
218
+ OINOLog._instance._logLevels = { "|||": OINOLog._instance._defaultLogLevel }; // reset to default log level
216
219
  this.setLogLevels(logLevels);
217
220
  }
218
221
  }
@@ -26,7 +26,7 @@ export var OINOLogLevel;
26
26
  */
27
27
  export class OINOLog {
28
28
  static _instance;
29
- _logLevels = { "||": OINOLogLevel.warning };
29
+ _logLevels = { "|||": OINOLogLevel.warning };
30
30
  _defaultLogLevel = OINOLogLevel.warning;
31
31
  /**
32
32
  * Abstract logging method to implement the actual logging operation.
@@ -36,7 +36,7 @@ export class OINOLog {
36
36
  */
37
37
  constructor(logLevel = OINOLogLevel.warning) {
38
38
  // console.log("OINOLog.constructor: logLevel=" + logLevel)
39
- this._logLevels["||"] = logLevel;
39
+ this._logLevels["|||"] = logLevel;
40
40
  this._defaultLogLevel = logLevel;
41
41
  }
42
42
  /**
@@ -52,10 +52,11 @@ export class OINOLog {
52
52
  if (OINOLog._instance) {
53
53
  const log_levels = OINOLog._instance._logLevels;
54
54
  // console.log(log_levels)
55
- const min_level = log_levels[domain + "|" + channel + "|" + method] ||
56
- log_levels[domain + "|" + channel + "|"] ||
57
- log_levels[domain + "||"] ||
58
- log_levels["||"];
55
+ const min_level = log_levels[domain + "|" + channel + "|" + method + "|" + message] ||
56
+ log_levels[domain + "|" + channel + "|" + method + "|"] ||
57
+ log_levels[domain + "|" + channel + "||"] ||
58
+ log_levels[domain + "|||"] ||
59
+ log_levels["|||"];
59
60
  // console.log("_log: level=" + level + ", min_level=" + min_level + ", levelStr=" + levelStr + ", message=" + message, data)
60
61
  if (level >= min_level) {
61
62
  OINOLog._instance?._writeLog(levelStr, domain, channel, method, message, data);
@@ -79,19 +80,19 @@ export class OINOLog {
79
80
  * Multiple settings can be combined to set different logging accuracy specifically
80
81
  *
81
82
  * For example:
82
- * logLevel: warning, domain: *, channel: *, method: * will only output error events.
83
- * logLevel: debug, domain: d1, channel: c1, method: "*" will enable debug events for channel c1 of domain d1.
83
+ * logLevel: warning, domain: "", channel: "", method: "" will only output warning and higher events.
84
+ * logLevel: debug, domain: d1, channel: c1, method: "" will enable debug events for channel c1 of domain d1.
84
85
  * logLevel: info, domain: d1, channel: c1, method: m1 will supress debug events for method m1.
85
86
  *
86
87
  * @param logLevel log level to use
87
- * @param domain domain of the log event (default: "*" for all)
88
- * @param channel channel of the log event (default: "*" for all)
89
- * @param method method of the log event (default: "*" for all)
90
- *
88
+ * @param domain domain of the log event (default: "" for all)
89
+ * @param channel channel of the log event (default: "" for all)
90
+ * @param method method of the log event (default: "" for all)
91
+ * @param message message of the log event (default: "" for all)
91
92
  */
92
- static setLogLevel(logLevel, domain = "", channel = "", method = "") {
93
+ static setLogLevel(logLevel, domain = "", channel = "", method = "", message = "") {
93
94
  if (OINOLog._instance) {
94
- OINOLog._instance._logLevels[domain + "|" + channel + "|" + method] = logLevel;
95
+ OINOLog._instance._logLevels[domain + "|" + channel + "|" + method + "|" + message] = logLevel;
95
96
  }
96
97
  }
97
98
  /**
@@ -172,9 +173,10 @@ export class OINOLog {
172
173
  if (level) {
173
174
  const parts = key.split("|");
174
175
  result.push({
175
- domain: parts[0],
176
- channel: parts[1],
177
- method: parts[2],
176
+ domain: parts[0] || "",
177
+ channel: parts[1] || "",
178
+ method: parts[2] || "",
179
+ message: parts[3] || "",
178
180
  level: level
179
181
  });
180
182
  }
@@ -194,9 +196,10 @@ export class OINOLog {
194
196
  const domain = logLevel.domain || "";
195
197
  const channel = logLevel.channel || "";
196
198
  const method = logLevel.method || "";
199
+ const message = logLevel.message || "";
197
200
  const level = logLevel.level;
198
201
  if (level && OINOLogLevel[level]) {
199
- OINOLog._instance._logLevels[domain + "|" + channel + "|" + method] = level;
202
+ OINOLog._instance._logLevels[domain + "|" + channel + "|" + method + "|" + message] = level;
200
203
  }
201
204
  }
202
205
  }
@@ -209,7 +212,7 @@ export class OINOLog {
209
212
  */
210
213
  static importLogLevels(logLevels) {
211
214
  if (OINOLog._instance) {
212
- OINOLog._instance._logLevels = { "||": OINOLog._instance._defaultLogLevel }; // reset to default log level
215
+ OINOLog._instance._logLevels = { "|||": OINOLog._instance._defaultLogLevel }; // reset to default log level
213
216
  this.setLogLevels(logLevels);
214
217
  }
215
218
  }
@@ -62,17 +62,17 @@ export declare abstract class OINOLog {
62
62
  * Multiple settings can be combined to set different logging accuracy specifically
63
63
  *
64
64
  * For example:
65
- * logLevel: warning, domain: *, channel: *, method: * will only output error events.
66
- * logLevel: debug, domain: d1, channel: c1, method: "*" will enable debug events for channel c1 of domain d1.
65
+ * logLevel: warning, domain: "", channel: "", method: "" will only output warning and higher events.
66
+ * logLevel: debug, domain: d1, channel: c1, method: "" will enable debug events for channel c1 of domain d1.
67
67
  * logLevel: info, domain: d1, channel: c1, method: m1 will supress debug events for method m1.
68
68
  *
69
69
  * @param logLevel log level to use
70
- * @param domain domain of the log event (default: "*" for all)
71
- * @param channel channel of the log event (default: "*" for all)
72
- * @param method method of the log event (default: "*" for all)
73
- *
70
+ * @param domain domain of the log event (default: "" for all)
71
+ * @param channel channel of the log event (default: "" for all)
72
+ * @param method method of the log event (default: "" for all)
73
+ * @param message message of the log event (default: "" for all)
74
74
  */
75
- static setLogLevel(logLevel: OINOLogLevel, domain?: string, channel?: string, method?: string): void;
75
+ static setLogLevel(logLevel: OINOLogLevel, domain?: string, channel?: string, method?: string, message?: string): void;
76
76
  /**
77
77
  * Log exception event. Exception events are prettyprinted and preserve newlines so that stack traces are readable.
78
78
  *
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@oino-ts/common",
3
- "version": "0.15.2",
3
+ "version": "0.16.0",
4
4
  "description": "OINO TS package for common classes.",
5
5
  "author": "Matias Kiviniemi (pragmatta)",
6
6
  "license": "MPL-2.0",
@@ -19,7 +19,7 @@
19
19
  "dependencies": {
20
20
  },
21
21
  "devDependencies": {
22
- "@oino-ts/types": "0.15.2",
22
+ "@oino-ts/types": "0.16.0",
23
23
  "@types/node": "^22.0.0",
24
24
  "typescript": "~5.9.0"
25
25
  },
package/src/OINOLog.ts CHANGED
@@ -30,7 +30,7 @@ export enum OINOLogLevel {
30
30
  export abstract class OINOLog {
31
31
  protected static _instance:OINOLog
32
32
 
33
- protected _logLevels:Record<string, OINOLogLevel> = { "||": OINOLogLevel.warning }
33
+ protected _logLevels:Record<string, OINOLogLevel> = { "|||": OINOLogLevel.warning }
34
34
  protected _defaultLogLevel:OINOLogLevel = OINOLogLevel.warning
35
35
 
36
36
  /**
@@ -41,7 +41,7 @@ export abstract class OINOLog {
41
41
  */
42
42
  constructor (logLevel:OINOLogLevel = OINOLogLevel.warning) {
43
43
  // console.log("OINOLog.constructor: logLevel=" + logLevel)
44
- this._logLevels["||"] = logLevel
44
+ this._logLevels["|||"] = logLevel
45
45
  this._defaultLogLevel = logLevel
46
46
  }
47
47
 
@@ -73,10 +73,11 @@ export abstract class OINOLog {
73
73
  const log_levels = OINOLog._instance._logLevels
74
74
  // console.log(log_levels)
75
75
  const min_level =
76
- log_levels[domain + "|" + channel + "|" + method] ||
77
- log_levels[domain + "|" + channel + "|"] ||
78
- log_levels[domain + "||"] ||
79
- log_levels["||"]
76
+ log_levels[domain + "|" + channel + "|" + method + "|" + message] ||
77
+ log_levels[domain + "|" + channel + "|" + method + "|"] ||
78
+ log_levels[domain + "|" + channel + "||"] ||
79
+ log_levels[domain + "|||"] ||
80
+ log_levels["|||"]
80
81
  // console.log("_log: level=" + level + ", min_level=" + min_level + ", levelStr=" + levelStr + ", message=" + message, data)
81
82
  if (level >= min_level) {
82
83
  OINOLog._instance?._writeLog(levelStr, domain, channel, method, message, data)
@@ -102,19 +103,19 @@ export abstract class OINOLog {
102
103
  * Multiple settings can be combined to set different logging accuracy specifically
103
104
  *
104
105
  * For example:
105
- * logLevel: warning, domain: *, channel: *, method: * will only output error events.
106
- * logLevel: debug, domain: d1, channel: c1, method: "*" will enable debug events for channel c1 of domain d1.
106
+ * logLevel: warning, domain: "", channel: "", method: "" will only output warning and higher events.
107
+ * logLevel: debug, domain: d1, channel: c1, method: "" will enable debug events for channel c1 of domain d1.
107
108
  * logLevel: info, domain: d1, channel: c1, method: m1 will supress debug events for method m1.
108
109
  *
109
110
  * @param logLevel log level to use
110
- * @param domain domain of the log event (default: "*" for all)
111
- * @param channel channel of the log event (default: "*" for all)
112
- * @param method method of the log event (default: "*" for all)
113
- *
111
+ * @param domain domain of the log event (default: "" for all)
112
+ * @param channel channel of the log event (default: "" for all)
113
+ * @param method method of the log event (default: "" for all)
114
+ * @param message message of the log event (default: "" for all)
114
115
  */
115
- static setLogLevel(logLevel:OINOLogLevel, domain:string = "", channel:string = "", method:string = "") {
116
+ static setLogLevel(logLevel:OINOLogLevel, domain:string = "", channel:string = "", method:string = "", message:string = "") {
116
117
  if (OINOLog._instance) {
117
- OINOLog._instance._logLevels[domain + "|" + channel + "|" + method] = logLevel
118
+ OINOLog._instance._logLevels[domain + "|" + channel + "|" + method + "|" + message] = logLevel
118
119
  }
119
120
  }
120
121
 
@@ -201,9 +202,10 @@ export abstract class OINOLog {
201
202
  if (level) {
202
203
  const parts = key.split("|")
203
204
  result.push({
204
- domain: parts[0],
205
- channel: parts[1],
206
- method: parts[2],
205
+ domain: parts[0] || "",
206
+ channel: parts[1] || "",
207
+ method: parts[2] || "",
208
+ message: parts[3] || "",
207
209
  level: level
208
210
  })
209
211
  }
@@ -225,9 +227,10 @@ export abstract class OINOLog {
225
227
  const domain = logLevel.domain || ""
226
228
  const channel = logLevel.channel || ""
227
229
  const method = logLevel.method || ""
230
+ const message = logLevel.message || ""
228
231
  const level = logLevel.level
229
232
  if (level && OINOLogLevel[level]) {
230
- OINOLog._instance._logLevels[domain + "|" + channel + "|" + method] = level
233
+ OINOLog._instance._logLevels[domain + "|" + channel + "|" + method + "|" + message] = level
231
234
  }
232
235
  }
233
236
  }
@@ -241,7 +244,7 @@ export abstract class OINOLog {
241
244
  */
242
245
  static importLogLevels(logLevels:any[]):void {
243
246
  if (OINOLog._instance) {
244
- OINOLog._instance._logLevels = {"||": OINOLog._instance._defaultLogLevel} // reset to default log level
247
+ OINOLog._instance._logLevels = {"|||": OINOLog._instance._defaultLogLevel} // reset to default log level
245
248
  this.setLogLevels(logLevels)
246
249
  }
247
250
  }