@oino-ts/common 0.15.1 → 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,12 +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 + "||" + method] ||
60
- log_levels[domain + "|" + channel + "|"] ||
61
- log_levels["|" + channel + "|"] ||
62
- log_levels[domain + "||"] ||
63
- 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["|||"];
64
63
  // console.log("_log: level=" + level + ", min_level=" + min_level + ", levelStr=" + levelStr + ", message=" + message, data)
65
64
  if (level >= min_level) {
66
65
  OINOLog._instance?._writeLog(levelStr, domain, channel, method, message, data);
@@ -84,19 +83,19 @@ class OINOLog {
84
83
  * Multiple settings can be combined to set different logging accuracy specifically
85
84
  *
86
85
  * For example:
87
- * logLevel: warning, domain: *, channel: *, method: * will only output error events.
88
- * 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.
89
88
  * logLevel: info, domain: d1, channel: c1, method: m1 will supress debug events for method m1.
90
89
  *
91
90
  * @param logLevel log level to use
92
- * @param domain domain of the log event (default: "*" for all)
93
- * @param channel channel of the log event (default: "*" for all)
94
- * @param method method of the log event (default: "*" for all)
95
- *
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)
96
95
  */
97
- static setLogLevel(logLevel, domain = "", channel = "", method = "") {
96
+ static setLogLevel(logLevel, domain = "", channel = "", method = "", message = "") {
98
97
  if (OINOLog._instance) {
99
- OINOLog._instance._logLevels[domain + "|" + channel + "|" + method] = logLevel;
98
+ OINOLog._instance._logLevels[domain + "|" + channel + "|" + method + "|" + message] = logLevel;
100
99
  }
101
100
  }
102
101
  /**
@@ -177,9 +176,10 @@ class OINOLog {
177
176
  if (level) {
178
177
  const parts = key.split("|");
179
178
  result.push({
180
- domain: parts[0],
181
- channel: parts[1],
182
- method: parts[2],
179
+ domain: parts[0] || "",
180
+ channel: parts[1] || "",
181
+ method: parts[2] || "",
182
+ message: parts[3] || "",
183
183
  level: level
184
184
  });
185
185
  }
@@ -199,9 +199,10 @@ class OINOLog {
199
199
  const domain = logLevel.domain || "";
200
200
  const channel = logLevel.channel || "";
201
201
  const method = logLevel.method || "";
202
+ const message = logLevel.message || "";
202
203
  const level = logLevel.level;
203
204
  if (level && OINOLogLevel[level]) {
204
- OINOLog._instance._logLevels[domain + "|" + channel + "|" + method] = level;
205
+ OINOLog._instance._logLevels[domain + "|" + channel + "|" + method + "|" + message] = level;
205
206
  }
206
207
  }
207
208
  }
@@ -214,7 +215,7 @@ class OINOLog {
214
215
  */
215
216
  static importLogLevels(logLevels) {
216
217
  if (OINOLog._instance) {
217
- OINOLog._instance._logLevels = { "||": OINOLog._instance._defaultLogLevel }; // reset to default log level
218
+ OINOLog._instance._logLevels = { "|||": OINOLog._instance._defaultLogLevel }; // reset to default log level
218
219
  this.setLogLevels(logLevels);
219
220
  }
220
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,12 +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 + "||" + method] ||
57
- log_levels[domain + "|" + channel + "|"] ||
58
- log_levels["|" + channel + "|"] ||
59
- log_levels[domain + "||"] ||
60
- 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["|||"];
61
60
  // console.log("_log: level=" + level + ", min_level=" + min_level + ", levelStr=" + levelStr + ", message=" + message, data)
62
61
  if (level >= min_level) {
63
62
  OINOLog._instance?._writeLog(levelStr, domain, channel, method, message, data);
@@ -81,19 +80,19 @@ export class OINOLog {
81
80
  * Multiple settings can be combined to set different logging accuracy specifically
82
81
  *
83
82
  * For example:
84
- * logLevel: warning, domain: *, channel: *, method: * will only output error events.
85
- * 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.
86
85
  * logLevel: info, domain: d1, channel: c1, method: m1 will supress debug events for method m1.
87
86
  *
88
87
  * @param logLevel log level to use
89
- * @param domain domain of the log event (default: "*" for all)
90
- * @param channel channel of the log event (default: "*" for all)
91
- * @param method method of the log event (default: "*" for all)
92
- *
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)
93
92
  */
94
- static setLogLevel(logLevel, domain = "", channel = "", method = "") {
93
+ static setLogLevel(logLevel, domain = "", channel = "", method = "", message = "") {
95
94
  if (OINOLog._instance) {
96
- OINOLog._instance._logLevels[domain + "|" + channel + "|" + method] = logLevel;
95
+ OINOLog._instance._logLevels[domain + "|" + channel + "|" + method + "|" + message] = logLevel;
97
96
  }
98
97
  }
99
98
  /**
@@ -174,9 +173,10 @@ export class OINOLog {
174
173
  if (level) {
175
174
  const parts = key.split("|");
176
175
  result.push({
177
- domain: parts[0],
178
- channel: parts[1],
179
- method: parts[2],
176
+ domain: parts[0] || "",
177
+ channel: parts[1] || "",
178
+ method: parts[2] || "",
179
+ message: parts[3] || "",
180
180
  level: level
181
181
  });
182
182
  }
@@ -196,9 +196,10 @@ export class OINOLog {
196
196
  const domain = logLevel.domain || "";
197
197
  const channel = logLevel.channel || "";
198
198
  const method = logLevel.method || "";
199
+ const message = logLevel.message || "";
199
200
  const level = logLevel.level;
200
201
  if (level && OINOLogLevel[level]) {
201
- OINOLog._instance._logLevels[domain + "|" + channel + "|" + method] = level;
202
+ OINOLog._instance._logLevels[domain + "|" + channel + "|" + method + "|" + message] = level;
202
203
  }
203
204
  }
204
205
  }
@@ -211,7 +212,7 @@ export class OINOLog {
211
212
  */
212
213
  static importLogLevels(logLevels) {
213
214
  if (OINOLog._instance) {
214
- OINOLog._instance._logLevels = { "||": OINOLog._instance._defaultLogLevel }; // reset to default log level
215
+ OINOLog._instance._logLevels = { "|||": OINOLog._instance._defaultLogLevel }; // reset to default log level
215
216
  this.setLogLevels(logLevels);
216
217
  }
217
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.1",
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.1",
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
 
@@ -72,12 +72,12 @@ export abstract class OINOLog {
72
72
  if (OINOLog._instance) {
73
73
  const log_levels = OINOLog._instance._logLevels
74
74
  // console.log(log_levels)
75
- const min_level = log_levels[domain + "|" + channel + "|" + method] ||
76
- log_levels[domain + "||" + method] ||
77
- log_levels[domain + "|" + channel + "|"] ||
78
- log_levels["|" + channel + "|"] ||
79
- log_levels[domain + "||"] ||
80
- log_levels["||"]
75
+ const min_level =
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["|||"]
81
81
  // console.log("_log: level=" + level + ", min_level=" + min_level + ", levelStr=" + levelStr + ", message=" + message, data)
82
82
  if (level >= min_level) {
83
83
  OINOLog._instance?._writeLog(levelStr, domain, channel, method, message, data)
@@ -94,7 +94,7 @@ export abstract class OINOLog {
94
94
  static setInstance(instance: OINOLog) {
95
95
  // console.log("setLogger: " + log)
96
96
  if (instance) {
97
- OINOLog._instance = instance
97
+ OINOLog._instance = instance
98
98
  }
99
99
  }
100
100
 
@@ -103,19 +103,19 @@ export abstract class OINOLog {
103
103
  * Multiple settings can be combined to set different logging accuracy specifically
104
104
  *
105
105
  * For example:
106
- * logLevel: warning, domain: *, channel: *, method: * will only output error events.
107
- * 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.
108
108
  * logLevel: info, domain: d1, channel: c1, method: m1 will supress debug events for method m1.
109
109
  *
110
110
  * @param logLevel log level to use
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
- *
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)
115
115
  */
116
- static setLogLevel(logLevel:OINOLogLevel, domain:string = "", channel:string = "", method:string = "") {
116
+ static setLogLevel(logLevel:OINOLogLevel, domain:string = "", channel:string = "", method:string = "", message:string = "") {
117
117
  if (OINOLog._instance) {
118
- OINOLog._instance._logLevels[domain + "|" + channel + "|" + method] = logLevel
118
+ OINOLog._instance._logLevels[domain + "|" + channel + "|" + method + "|" + message] = logLevel
119
119
  }
120
120
  }
121
121
 
@@ -202,9 +202,10 @@ export abstract class OINOLog {
202
202
  if (level) {
203
203
  const parts = key.split("|")
204
204
  result.push({
205
- domain: parts[0],
206
- channel: parts[1],
207
- method: parts[2],
205
+ domain: parts[0] || "",
206
+ channel: parts[1] || "",
207
+ method: parts[2] || "",
208
+ message: parts[3] || "",
208
209
  level: level
209
210
  })
210
211
  }
@@ -226,9 +227,10 @@ export abstract class OINOLog {
226
227
  const domain = logLevel.domain || ""
227
228
  const channel = logLevel.channel || ""
228
229
  const method = logLevel.method || ""
230
+ const message = logLevel.message || ""
229
231
  const level = logLevel.level
230
232
  if (level && OINOLogLevel[level]) {
231
- OINOLog._instance._logLevels[domain + "|" + channel + "|" + method] = level
233
+ OINOLog._instance._logLevels[domain + "|" + channel + "|" + method + "|" + message] = level
232
234
  }
233
235
  }
234
236
  }
@@ -242,7 +244,7 @@ export abstract class OINOLog {
242
244
  */
243
245
  static importLogLevels(logLevels:any[]):void {
244
246
  if (OINOLog._instance) {
245
- OINOLog._instance._logLevels = {"||": OINOLog._instance._defaultLogLevel} // reset to default log level
247
+ OINOLog._instance._logLevels = {"|||": OINOLog._instance._defaultLogLevel} // reset to default log level
246
248
  this.setLogLevels(logLevels)
247
249
  }
248
250
  }