@subsquid/logger 1.2.0 → 1.3.1

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.
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,MAAM,EAAC,MAAM,UAAU,CAAA;AAI/B,OAAO,EAAC,QAAQ,EAAC,MAAM,SAAS,CAAA;AAChC,cAAc,UAAU,CAAA;AASxB,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,EAAC,MAAM,EAAC,MAAM,UAAU,CAAA;AAI/B,OAAO,EAAC,QAAQ,EAAC,MAAM,SAAS,CAAA;AAChC,cAAc,UAAU,CAAA;AAaxB,wBAAgB,YAAY,CAAC,EAAE,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,MAAM,GAAG,MAAM,CAEpE"}
package/lib/index.js CHANGED
@@ -21,7 +21,10 @@ const pretty_1 = require("./sinks/pretty");
21
21
  var level_1 = require("./level");
22
22
  Object.defineProperty(exports, "LogLevel", { enumerable: true, get: function () { return level_1.LogLevel; } });
23
23
  __exportStar(require("./logger"), exports);
24
- const ROOT = new logger_1.Logger(process.stderr.isTTY ? pretty_1.prettyStderrSink : json_1.jsonLinesStderrSink, '');
24
+ const prettyEnabled = process.env.FORCE_PRETTY_LOGGER ?
25
+ process.env.FORCE_PRETTY_LOGGER !== '0' :
26
+ process.stderr.isTTY;
27
+ const ROOT = new logger_1.Logger(prettyEnabled ? pretty_1.prettyStderrSink : json_1.jsonLinesStderrSink, '');
25
28
  function createLogger(ns, attributes) {
26
29
  return ROOT.child(ns, attributes);
27
30
  }
package/lib/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,qCAA+B;AAC/B,uCAAgD;AAChD,2CAA+C;AAE/C,iCAAgC;AAAxB,iGAAA,QAAQ,OAAA;AAChB,2CAAwB;AAGxB,MAAM,IAAI,GAAG,IAAI,eAAM,CACnB,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,yBAAgB,CAAC,CAAC,CAAC,0BAAmB,EAC7D,EAAE,CACL,CAAA;AAGD,SAAgB,YAAY,CAAC,EAAU,EAAE,UAAmB;IACxD,OAAO,IAAI,CAAC,KAAK,CAAC,EAAE,EAAE,UAAU,CAAC,CAAA;AACrC,CAAC;AAFD,oCAEC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,qCAA+B;AAC/B,uCAAgD;AAChD,2CAA+C;AAE/C,iCAAgC;AAAxB,iGAAA,QAAQ,OAAA;AAChB,2CAAwB;AAExB,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,MAAM,IAAI,GAAG,IAAI,eAAM,CACnB,aAAa,CAAC,CAAC,CAAC,yBAAgB,CAAC,CAAC,CAAC,0BAAmB,EACtD,EAAE,CACL,CAAA;AAGD,SAAgB,YAAY,CAAC,EAAU,EAAE,UAAmB;IACxD,OAAO,IAAI,CAAC,KAAK,CAAC,EAAE,EAAE,UAAU,CAAC,CAAA;AACrC,CAAC;AAFD,oCAEC"}
package/lib/level.js CHANGED
@@ -9,7 +9,7 @@ var LogLevel;
9
9
  LogLevel[LogLevel["WARN"] = 3] = "WARN";
10
10
  LogLevel[LogLevel["ERROR"] = 4] = "ERROR";
11
11
  LogLevel[LogLevel["FATAL"] = 5] = "FATAL";
12
- })(LogLevel = exports.LogLevel || (exports.LogLevel = {}));
12
+ })(LogLevel || (exports.LogLevel = LogLevel = {}));
13
13
  function compileLevelConfig(config) {
14
14
  let variants = config.split(',').map(ns => {
15
15
  ns = ns.trim();
package/lib/level.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"level.js","sourceRoot":"","sources":["../src/level.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"level.js","sourceRoot":"","sources":["../src/level.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@subsquid/logger",
3
- "version": "1.2.0",
3
+ "version": "1.3.1",
4
4
  "description": "Lightweight library for structured logging",
5
5
  "license": "GPL-3.0-or-later",
6
6
  "repository": "git@github.com:subsquid/squid.git",
@@ -13,21 +13,20 @@
13
13
  ],
14
14
  "main": "lib/index.js",
15
15
  "dependencies": {
16
- "@subsquid/util-internal-hex": "^1.2.0",
17
- "@subsquid/util-internal-json": "^1.2.0",
16
+ "@subsquid/util-internal-hex": "^1.2.1",
17
+ "@subsquid/util-internal-json": "^1.2.1",
18
18
  "supports-color": "^8.1.1"
19
19
  },
20
20
  "devDependencies": {
21
- "@types/mocha": "^10.0.1",
22
- "@types/node": "^18.16.17",
21
+ "@types/mocha": "^10.0.2",
22
+ "@types/node": "^18.18.0",
23
23
  "@types/supports-color": "^8.1.1",
24
- "expect": "^29.5.0",
24
+ "expect": "^29.7.0",
25
25
  "mocha": "^10.2.0",
26
- "typescript": "~4.9.5"
26
+ "typescript": "~5.2.2"
27
27
  },
28
28
  "scripts": {
29
29
  "build": "rm -rf lib && tsc",
30
30
  "test": "mocha lib/**/*.test.js"
31
- },
32
- "readme": "# @subsquid/logger\n\nLightweight structured logger for squid framework.\n\n## Usage\n\n```typescript\nimport {createLogger} from \"@subsquid/logger\"\n\nconst log = createLogger('sqd:demo')\n\nlog.info('message with severity info')\nlog.debug('message with severity debug')\n\nlog.info({foo: 1, bar: 2}, 'message and some additional attributes')\n\n// info message consisting only of attributes\nlog.info({a: 1, b: 2, c: 3, array: [4, 5], obj: {foo: 'foo', bar: \"bar\"}}) \n\n// pass an Error object inplace of attributes\nlog.warn(new Error('Some error occured'))\n\n// Error together with some other attributes and message\nlog.error({err: new Error('Another error'), a: 1, b: 2}, 'weird')\n\n// create a child logger instance with namespace `sqd:demo:sql` \n// and `req: 1` attribute attached to every log record\nconst sqlLog = log.child('sql', {req: 1})\nsqlLog.debug('connecting to database')\nsqlLog.debug({sql: 'SELECT max(id) FROM status'})\n```\n\n## Configuration\n\nThere are 6 log levels available: `TRACE`, `DEBUG`, `INFO`, `WARN`, `ERROR`, `FATAL`.\n\nThe log level of each logger instance is solely determined by its namespace and specified\nvia set of `SQD_TRACE`, ..., `SQD_FATAL` environment variables.\nThe default log level is `INFO`. \n\nUsers override the default log level by setting in appropriate \nenvironment variable a pattern which matches the logger's namespace.\n\n* `SQD_DEBUG=*` - sets the log level to `DEBUG` for all loggers.\n* `SQD_DEBUG=foo` - loggers `foo`, `foo:bar`, `foo:a:b`, etc will have a `DEBUG` level.\n* `SQD_DEBUG=a:b*:c,d` - loggers `a:b:c`, `a:baz:c`, `a:baz:c:foo`, `d`, etc will have a `DEBUG` level, logger `a:z:c` will not.\n\nWhen logger is matched by multiple `SQD_*` variables, the match with the highest specificity wins.\nWhen specificities are equal, the most verbose matched log level will be effective.\n\nSpecificity is computed as a number of namespace characters \nwhich are not matched by wildcards and which are not part of a child namespace.\nFor example, given a pattern `foo*bar`, the specificity of `foo:bar:baz:qux`, `foobar` and `foobazbar` is `6`.\n\n## Output\n\nThe logger always writes to `stderr`. \n\nWhen `stderr` is connected to a terminal, log records will be pretty printed.\n\n![Pretty printed log records](img.png)\n\nOtherwise, log records will be written as JSON lines.\n\n```\n{\"level\":2,\"time\":1669387525765,\"ns\":\"sqd:demo\",\"msg\":\"message with severity info\"}\n{\"level\":2,\"time\":1669387525766,\"ns\":\"sqd:demo\",\"msg\":\"message and some additional attributes\",\"foo\":1,\"bar\":2}\n{\"level\":2,\"time\":1669387525766,\"ns\":\"sqd:demo\",\"a\":1,\"b\":2,\"c\":3,\"array\":[4,5,6],\"obj\":{\"foo\":\"foo\",\"bar\":\"bar\"}}\n{\"level\":3,\"time\":1669387525766,\"ns\":\"sqd:demo\",\"err\":{\"stack\":\"Error: Some error occured\\n at Object.<anonymous> (/Users/eldar/dev/squid/util/logger/lib/demo.js:11:10)\\n at Module._compile (node:internal/modules/cjs/loader:1159:14)\\n at Module._extensions..js (node:internal/modules/cjs/loader:1213:10)\\n at Module.load (node:internal/modules/cjs/loader:1037:32)\\n at Module._load (node:internal/modules/cjs/loader:878:12)\\n at Function.executeUserEntryPoint [as runMain] (node:internal/modules/run_main:81:12)\\n at node:internal/main/run_main_module:23:47\"}}\n{\"level\":4,\"time\":1669387525766,\"ns\":\"sqd:demo\",\"msg\":\"weird\",\"err\":{\"stack\":\"Error: Another error\\n at Object.<anonymous> (/Users/eldar/dev/squid/util/logger/lib/demo.js:13:18)\\n at Module._compile (node:internal/modules/cjs/loader:1159:14)\\n at Module._extensions..js (node:internal/modules/cjs/loader:1213:10)\\n at Module.load (node:internal/modules/cjs/loader:1037:32)\\n at Module._load (node:internal/modules/cjs/loader:878:12)\\n at Function.executeUserEntryPoint [as runMain] (node:internal/modules/run_main:81:12)\\n at node:internal/main/run_main_module:23:47\"},\"a\":1,\"b\":2}\n```\n"
31
+ }
33
32
  }
package/src/index.ts CHANGED
@@ -5,9 +5,13 @@ import {prettyStderrSink} from "./sinks/pretty"
5
5
  export {LogLevel} from "./level"
6
6
  export * from "./logger"
7
7
 
8
+ const prettyEnabled = process.env.FORCE_PRETTY_LOGGER ?
9
+ process.env.FORCE_PRETTY_LOGGER !== '0' :
10
+ process.stderr.isTTY
11
+
8
12
 
9
13
  const ROOT = new Logger(
10
- process.stderr.isTTY ? prettyStderrSink : jsonLinesStderrSink,
14
+ prettyEnabled ? prettyStderrSink : jsonLinesStderrSink,
11
15
  ''
12
16
  )
13
17