@subsquid/logger 1.5.0-portal-api.b241d7 → 1.6.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/lib/index.d.ts CHANGED
@@ -16,4 +16,16 @@ export declare function setLogLevelCallback(cb?: (ns: string) => LogLevel | unde
16
16
  */
17
17
  export declare function setRootSink(sink: Sink): void;
18
18
  export declare function createLogger(ns: string, attributes?: object): Logger;
19
+ export interface PinoLikeLogger {
20
+ trace(obj: unknown, msg?: string): void;
21
+ debug(obj: unknown, msg?: string): void;
22
+ info(obj: unknown, msg?: string): void;
23
+ warn(obj: unknown, msg?: string): void;
24
+ error(obj: unknown, msg?: string): void;
25
+ fatal(obj: unknown, msg?: string): void;
26
+ }
27
+ /**
28
+ * Creates Pino logger sink that can be later used in setRootSink
29
+ */
30
+ export declare function createPinoSink(pinoLogger: PinoLikeLogger): Sink;
19
31
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAS,QAAQ,EAAC,MAAM,SAAS,CAAA;AACxC,OAAO,EAAC,MAAM,EAAE,IAAI,EAAC,MAAM,UAAU,CAAA;AAKrC,OAAO,EAAC,QAAQ,EAAC,MAAM,SAAS,CAAA;AAChC,cAAc,UAAU,CAAA;AAGxB;;;;;;;GAOG;AACH,wBAAgB,mBAAmB,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,QAAQ,GAAG,SAAS,GAAG,IAAI,CAEnF;AAWD;;GAEG;AACH,wBAAgB,WAAW,CAAC,IAAI,EAAE,IAAI,GAAG,IAAI,CAE5C;AASD,wBAAgB,YAAY,CAAC,EAAE,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,MAAM,GAAG,MAAM,CAEpE"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAS,QAAQ,EAAC,MAAM,SAAS,CAAA;AACxC,OAAO,EAAC,MAAM,EAAa,IAAI,EAAC,MAAM,UAAU,CAAA;AAKhD,OAAO,EAAC,QAAQ,EAAC,MAAM,SAAS,CAAA;AAChC,cAAc,UAAU,CAAA;AAGxB;;;;;;;GAOG;AACH,wBAAgB,mBAAmB,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,QAAQ,GAAG,SAAS,GAAG,IAAI,CAEnF;AAWD;;GAEG;AACH,wBAAgB,WAAW,CAAC,IAAI,EAAE,IAAI,GAAG,IAAI,CAE5C;AASD,wBAAgB,YAAY,CAAC,EAAE,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,MAAM,GAAG,MAAM,CAEpE;AAID,MAAM,WAAW,cAAc;IAC3B,KAAK,CAAC,GAAG,EAAE,OAAO,EAAE,GAAG,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IACvC,KAAK,CAAC,GAAG,EAAE,OAAO,EAAE,GAAG,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IACvC,IAAI,CAAC,GAAG,EAAE,OAAO,EAAE,GAAG,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IACtC,IAAI,CAAC,GAAG,EAAE,OAAO,EAAE,GAAG,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IACtC,KAAK,CAAC,GAAG,EAAE,OAAO,EAAE,GAAG,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IACvC,KAAK,CAAC,GAAG,EAAE,OAAO,EAAE,GAAG,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;CAC1C;AAWD;;GAEG;AACH,wBAAgB,cAAc,CAAC,UAAU,EAAE,cAAc,GAAG,IAAI,CAO/D"}
package/lib/index.js CHANGED
@@ -18,6 +18,7 @@ exports.LogLevel = void 0;
18
18
  exports.setLogLevelCallback = setLogLevelCallback;
19
19
  exports.setRootSink = setRootSink;
20
20
  exports.createLogger = createLogger;
21
+ exports.createPinoSink = createPinoSink;
21
22
  const level_1 = require("./level");
22
23
  const logger_1 = require("./logger");
23
24
  const json_1 = require("./sinks/json");
@@ -50,4 +51,22 @@ const ROOT = new logger_1.Logger(rec => ROOT_SINK(rec), '');
50
51
  function createLogger(ns, attributes) {
51
52
  return ROOT.child(ns, attributes);
52
53
  }
54
+ const LEVEL_MAP = {
55
+ [level_1.LogLevel.TRACE]: 'trace',
56
+ [level_1.LogLevel.DEBUG]: 'debug',
57
+ [level_1.LogLevel.INFO]: 'info',
58
+ [level_1.LogLevel.WARN]: 'warn',
59
+ [level_1.LogLevel.ERROR]: 'error',
60
+ [level_1.LogLevel.FATAL]: 'fatal',
61
+ };
62
+ /**
63
+ * Creates Pino logger sink that can be later used in setRootSink
64
+ */
65
+ function createPinoSink(pinoLogger) {
66
+ return (rec) => {
67
+ const { level, msg, ...rest } = rec;
68
+ const method = LEVEL_MAP[level] ?? 'info';
69
+ pinoLogger[method](rest, msg);
70
+ };
71
+ }
53
72
  //# sourceMappingURL=index.js.map
package/lib/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAkBA,kDAEC;AAcD,kCAEC;AASD,oCAEC;AA/CD,mCAAwC;AACxC,qCAAqC;AACrC,uCAAgD;AAChD,2CAA+C;AAG/C,iCAAgC;AAAxB,iGAAA,QAAQ,OAAA;AAChB,2CAAwB;AAGxB;;;;;;;GAOG;AACH,SAAgB,mBAAmB,CAAC,EAAyC;IACzE,cAAM,CAAC,gBAAgB,CAAC,EAAE,CAAC,CAAA;AAC/B,CAAC;AAGD,MAAM,aAAa,GAAG,OAAO,CAAC,GAAG,CAAC,mBAAmB,CAAC,CAAC;IACnD,OAAO,CAAC,GAAG,CAAC,mBAAmB,KAAK,GAAG,CAAC,CAAC;IACzC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAA;AAGxB,IAAI,SAAS,GAAG,aAAa,CAAC,CAAC,CAAC,yBAAgB,CAAC,CAAC,CAAC,0BAAmB,CAAA;AAGtE;;GAEG;AACH,SAAgB,WAAW,CAAC,IAAU;IAClC,SAAS,GAAG,IAAI,CAAA;AACpB,CAAC;AAGD,MAAM,IAAI,GAAG,IAAI,eAAM,CACnB,GAAG,CAAC,EAAE,CAAC,SAAS,CAAC,GAAG,CAAC,EACrB,EAAE,CACL,CAAA;AAGD,SAAgB,YAAY,CAAC,EAAU,EAAE,UAAmB;IACxD,OAAO,IAAI,CAAC,KAAK,CAAC,EAAE,EAAE,UAAU,CAAC,CAAA;AACrC,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAkBA,kDAEC;AAcD,kCAEC;AASD,oCAEC;AAyBD,wCAOC;AA/ED,mCAAwC;AACxC,qCAAgD;AAChD,uCAAgD;AAChD,2CAA+C;AAG/C,iCAAgC;AAAxB,iGAAA,QAAQ,OAAA;AAChB,2CAAwB;AAGxB;;;;;;;GAOG;AACH,SAAgB,mBAAmB,CAAC,EAAyC;IACzE,cAAM,CAAC,gBAAgB,CAAC,EAAE,CAAC,CAAA;AAC/B,CAAC;AAGD,MAAM,aAAa,GAAG,OAAO,CAAC,GAAG,CAAC,mBAAmB,CAAC,CAAC;IACnD,OAAO,CAAC,GAAG,CAAC,mBAAmB,KAAK,GAAG,CAAC,CAAC;IACzC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAA;AAGxB,IAAI,SAAS,GAAG,aAAa,CAAC,CAAC,CAAC,yBAAgB,CAAC,CAAC,CAAC,0BAAmB,CAAA;AAGtE;;GAEG;AACH,SAAgB,WAAW,CAAC,IAAU;IAClC,SAAS,GAAG,IAAI,CAAA;AACpB,CAAC;AAGD,MAAM,IAAI,GAAG,IAAI,eAAM,CACnB,GAAG,CAAC,EAAE,CAAC,SAAS,CAAC,GAAG,CAAC,EACrB,EAAE,CACL,CAAA;AAGD,SAAgB,YAAY,CAAC,EAAU,EAAE,UAAmB;IACxD,OAAO,IAAI,CAAC,KAAK,CAAC,EAAE,EAAE,UAAU,CAAC,CAAA;AACrC,CAAC;AAaD,MAAM,SAAS,GAAgC;IAC3C,CAAC,gBAAQ,CAAC,KAAK,CAAC,EAAE,OAAO;IACzB,CAAC,gBAAQ,CAAC,KAAK,CAAC,EAAE,OAAO;IACzB,CAAC,gBAAQ,CAAC,IAAI,CAAC,EAAE,MAAM;IACvB,CAAC,gBAAQ,CAAC,IAAI,CAAC,EAAE,MAAM;IACvB,CAAC,gBAAQ,CAAC,KAAK,CAAC,EAAE,OAAO;IACzB,CAAC,gBAAQ,CAAC,KAAK,CAAC,EAAE,OAAO;CAC5B,CAAA;AAED;;GAEG;AACH,SAAgB,cAAc,CAAC,UAA0B;IACrD,OAAO,CAAC,GAAc,EAAE,EAAE;QACtB,MAAM,EAAC,KAAK,EAAE,GAAG,EAAE,GAAG,IAAI,EAAC,GAAG,GAAG,CAAA;QACjC,MAAM,MAAM,GAAc,SAAS,CAAC,KAAK,CAAC,IAAI,MAAM,CAAA;QAEpD,UAAU,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,GAAG,CAAC,CAAA;IACjC,CAAC,CAAA;AACL,CAAC"}
package/lib/level.test.js CHANGED
@@ -4,22 +4,23 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  const assert_1 = __importDefault(require("assert"));
7
+ const vitest_1 = require("vitest");
7
8
  const level_1 = require("./level");
8
9
  function suite(config, tests) {
9
10
  let name = config.map(([level, pattern]) => level_1.LogLevel[level] + '=' + pattern).join('; ');
10
- describe(name ? 'with ' + name : 'by default', function () {
11
+ (0, vitest_1.describe)(name ? 'with ' + name : 'by default', function () {
11
12
  let levels = new level_1.Levels();
12
13
  config.forEach(([level, pattern]) => {
13
14
  levels.configure(level, pattern);
14
15
  });
15
16
  tests.forEach(([ns, level]) => {
16
- it(ns + '=' + level_1.LogLevel[level], () => {
17
+ (0, vitest_1.it)(ns + '=' + level_1.LogLevel[level], () => {
17
18
  assert_1.default.strictEqual(levels.get(ns), level);
18
19
  });
19
20
  });
20
21
  });
21
22
  }
22
- describe("levels", function () {
23
+ (0, vitest_1.describe)("levels", function () {
23
24
  suite([], [
24
25
  ['foo', level_1.LogLevel.INFO]
25
26
  ]);
@@ -1 +1 @@
1
- {"version":3,"file":"level.test.js","sourceRoot":"","sources":["../src/level.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"level.test.js","sourceRoot":"","sources":["../src/level.test.ts"],"names":[],"mappings":";;;;;AAAA,oDAA2B;AAC3B,mCAAqC;AACrC,mCAA0C;AAG1C,SAAS,KAAK,CACV,MAA4C,EAC5C,KAAsC;IAEtC,IAAI,IAAI,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,EAAE,OAAO,CAAC,EAAE,EAAE,CAAC,gBAAQ,CAAC,KAAK,CAAC,GAAG,GAAG,GAAG,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;IACvF,IAAA,iBAAQ,EAAC,IAAI,CAAC,CAAC,CAAC,OAAO,GAAG,IAAI,CAAC,CAAC,CAAC,YAAY,EAAE;QAC3C,IAAI,MAAM,GAAG,IAAI,cAAM,EAAE,CAAA;QACzB,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,EAAE,OAAO,CAAC,EAAE,EAAE;YAChC,MAAM,CAAC,SAAS,CAAC,KAAK,EAAE,OAAO,CAAC,CAAA;QACpC,CAAC,CAAC,CAAA;QACF,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,KAAK,CAAC,EAAE,EAAE;YAC1B,IAAA,WAAE,EAAC,EAAE,GAAG,GAAG,GAAG,gBAAQ,CAAC,KAAK,CAAC,EAAE,GAAG,EAAE;gBAChC,gBAAM,CAAC,WAAW,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,KAAK,CAAC,CAAA;YAC7C,CAAC,CAAC,CAAA;QACN,CAAC,CAAC,CAAA;IACN,CAAC,CAAC,CAAA;AACN,CAAC;AAGD,IAAA,iBAAQ,EAAC,QAAQ,EAAE;IACf,KAAK,CAAC,EAAE,EAAE;QACN,CAAC,KAAK,EAAE,gBAAQ,CAAC,IAAI,CAAC;KACzB,CAAC,CAAA;IAEF,KAAK,CAAC;QACF,CAAC,gBAAQ,CAAC,KAAK,EAAE,GAAG,CAAC;KACxB,EAAE;QACC,CAAC,KAAK,EAAE,gBAAQ,CAAC,KAAK,CAAC;QACvB,CAAC,KAAK,EAAE,gBAAQ,CAAC,KAAK,CAAC;KAC1B,CAAC,CAAA;IAEF,KAAK,CAAC;QACF,CAAC,gBAAQ,CAAC,KAAK,EAAE,KAAK,CAAC;KAC1B,EAAE;QACC,CAAC,KAAK,EAAE,gBAAQ,CAAC,KAAK,CAAC;QACvB,CAAC,SAAS,EAAE,gBAAQ,CAAC,KAAK,CAAC;QAC3B,CAAC,QAAQ,EAAE,gBAAQ,CAAC,IAAI,CAAC;KAC5B,CAAC,CAAA;IAEF,KAAK,CAAC;QACF,CAAC,gBAAQ,CAAC,KAAK,EAAE,OAAO,CAAC;KAC5B,EAAE;QACC,CAAC,KAAK,EAAE,gBAAQ,CAAC,IAAI,CAAC;QACtB,CAAC,SAAS,EAAE,gBAAQ,CAAC,KAAK,CAAC;QAC3B,CAAC,QAAQ,EAAE,gBAAQ,CAAC,IAAI,CAAC;KAC5B,CAAC,CAAA;IAEF,KAAK,CAAC;QACF,CAAC,gBAAQ,CAAC,KAAK,EAAE,SAAS,CAAC;KAC9B,EAAE;QACC,CAAC,QAAQ,EAAE,gBAAQ,CAAC,KAAK,CAAC;QAC1B,CAAC,SAAS,EAAE,gBAAQ,CAAC,KAAK,CAAC;QAC3B,CAAC,iBAAiB,EAAE,gBAAQ,CAAC,KAAK,CAAC;QACnC,CAAC,QAAQ,EAAE,gBAAQ,CAAC,IAAI,CAAC;KAC5B,CAAC,CAAA;IAEF,KAAK,CAAC;QACF,CAAC,gBAAQ,CAAC,KAAK,EAAE,GAAG,CAAC;QACrB,CAAC,gBAAQ,CAAC,IAAI,EAAE,KAAK,CAAC;QACtB,CAAC,gBAAQ,CAAC,KAAK,EAAE,WAAW,CAAC;KAChC,EAAE;QACC,CAAC,KAAK,EAAE,gBAAQ,CAAC,KAAK,CAAC;QACvB,CAAC,KAAK,EAAE,gBAAQ,CAAC,IAAI,CAAC;QACtB,CAAC,SAAS,EAAE,gBAAQ,CAAC,IAAI,CAAC;QAC1B,CAAC,aAAa,EAAE,gBAAQ,CAAC,KAAK,CAAC;KAClC,CAAC,CAAA;IAEF,KAAK,CAAC;QACF,CAAC,gBAAQ,CAAC,KAAK,EAAE,gBAAgB,CAAC;QAClC,CAAC,gBAAQ,CAAC,IAAI,EAAE,OAAO,CAAC;KAC3B,EAAE;QACC,CAAC,KAAK,EAAE,gBAAQ,CAAC,KAAK,CAAC;QACvB,CAAC,aAAa,EAAE,gBAAQ,CAAC,KAAK,CAAC;QAC/B,CAAC,SAAS,EAAE,gBAAQ,CAAC,IAAI,CAAC;KAC7B,CAAC,CAAA;AACN,CAAC,CAAC,CAAA"}
package/package.json CHANGED
@@ -1,9 +1,9 @@
1
1
  {
2
2
  "name": "@subsquid/logger",
3
- "version": "1.5.0-portal-api.b241d7",
3
+ "version": "1.6.0",
4
4
  "description": "Lightweight library for structured logging",
5
5
  "license": "GPL-3.0-or-later",
6
- "repository": "git@github.com:subsquid/squid.git",
6
+ "repository": "git@github.com:subsquid/squid-sdk.git",
7
7
  "publishConfig": {
8
8
  "access": "public"
9
9
  },
@@ -13,20 +13,18 @@
13
13
  ],
14
14
  "main": "lib/index.js",
15
15
  "dependencies": {
16
- "@subsquid/util-internal-hex": "^1.2.2",
16
+ "@subsquid/util-internal-hex": "^1.2.3",
17
17
  "@subsquid/util-internal-json": "^1.2.3",
18
18
  "supports-color": "^8.1.1"
19
19
  },
20
20
  "devDependencies": {
21
- "@types/mocha": "^10.0.7",
22
- "@types/node": "^18.18.14",
21
+ "@types/node": "^24.0.0",
23
22
  "@types/supports-color": "^8.1.3",
24
- "expect": "^29.7.0",
25
- "mocha": "^10.7.0",
26
- "typescript": "5.5.4"
23
+ "typescript": "5.5.4",
24
+ "vitest": "4.1.5"
27
25
  },
28
26
  "scripts": {
29
27
  "build": "rm -rf lib && tsc",
30
- "test": "mocha lib/**/*.test.js"
28
+ "test": "vitest --run"
31
29
  }
32
30
  }
package/src/index.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  import {LEVELS, LogLevel} from './level'
2
- import {Logger, Sink} from './logger'
2
+ import {Logger, LogRecord, Sink} from './logger'
3
3
  import {jsonLinesStderrSink} from './sinks/json'
4
4
  import {prettyStderrSink} from './sinks/pretty'
5
5
 
@@ -46,3 +46,35 @@ const ROOT = new Logger(
46
46
  export function createLogger(ns: string, attributes?: object): Logger {
47
47
  return ROOT.child(ns, attributes)
48
48
  }
49
+
50
+ type PinoLevel = 'trace' | 'debug' | 'info' | 'warn' | 'error' | 'fatal'
51
+
52
+ export interface PinoLikeLogger {
53
+ trace(obj: unknown, msg?: string): void
54
+ debug(obj: unknown, msg?: string): void
55
+ info(obj: unknown, msg?: string): void
56
+ warn(obj: unknown, msg?: string): void
57
+ error(obj: unknown, msg?: string): void
58
+ fatal(obj: unknown, msg?: string): void
59
+ }
60
+
61
+ const LEVEL_MAP: Record<LogLevel, PinoLevel> = {
62
+ [LogLevel.TRACE]: 'trace',
63
+ [LogLevel.DEBUG]: 'debug',
64
+ [LogLevel.INFO]: 'info',
65
+ [LogLevel.WARN]: 'warn',
66
+ [LogLevel.ERROR]: 'error',
67
+ [LogLevel.FATAL]: 'fatal',
68
+ }
69
+
70
+ /**
71
+ * Creates Pino logger sink that can be later used in setRootSink
72
+ */
73
+ export function createPinoSink(pinoLogger: PinoLikeLogger): Sink {
74
+ return (rec: LogRecord) => {
75
+ const {level, msg, ...rest} = rec
76
+ const method: PinoLevel = LEVEL_MAP[level] ?? 'info'
77
+
78
+ pinoLogger[method](rest, msg)
79
+ }
80
+ }
package/src/level.test.ts CHANGED
@@ -1,5 +1,6 @@
1
- import assert from "assert"
2
- import {Levels, LogLevel} from "./level"
1
+ import assert from 'assert'
2
+ import { describe, it } from 'vitest'
3
+ import { Levels, LogLevel } from './level'
3
4
 
4
5
 
5
6
  function suite(