apitally 0.20.0 → 0.21.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.
Files changed (115) hide show
  1. package/README.md +28 -0
  2. package/dist/adonisjs/configure.cjs +6 -1
  3. package/dist/adonisjs/configure.cjs.map +1 -1
  4. package/dist/adonisjs/configure.js +6 -1
  5. package/dist/adonisjs/configure.js.map +1 -1
  6. package/dist/adonisjs/index.cjs +6 -1
  7. package/dist/adonisjs/index.cjs.map +1 -1
  8. package/dist/adonisjs/index.js +6 -1
  9. package/dist/adonisjs/index.js.map +1 -1
  10. package/dist/adonisjs/middleware.cjs.map +1 -1
  11. package/dist/adonisjs/middleware.js.map +1 -1
  12. package/dist/adonisjs/provider.cjs +90 -25
  13. package/dist/adonisjs/provider.cjs.map +1 -1
  14. package/dist/adonisjs/provider.js +90 -25
  15. package/dist/adonisjs/provider.js.map +1 -1
  16. package/dist/adonisjs/stubs/config/apitally.stub +9 -0
  17. package/dist/common/client.cjs +2 -1
  18. package/dist/common/client.cjs.map +1 -1
  19. package/dist/common/client.js +2 -1
  20. package/dist/common/client.js.map +1 -1
  21. package/dist/common/requestLogger.cjs +2 -1
  22. package/dist/common/requestLogger.cjs.map +1 -1
  23. package/dist/common/requestLogger.js +2 -1
  24. package/dist/common/requestLogger.js.map +1 -1
  25. package/dist/elysia/index.cjs +8 -4
  26. package/dist/elysia/index.cjs.map +1 -1
  27. package/dist/elysia/index.js +8 -4
  28. package/dist/elysia/index.js.map +1 -1
  29. package/dist/elysia/plugin.cjs +8 -4
  30. package/dist/elysia/plugin.cjs.map +1 -1
  31. package/dist/elysia/plugin.d.cts +3 -0
  32. package/dist/elysia/plugin.d.ts +3 -0
  33. package/dist/elysia/plugin.js +8 -4
  34. package/dist/elysia/plugin.js.map +1 -1
  35. package/dist/express/index.cjs +90 -25
  36. package/dist/express/index.cjs.map +1 -1
  37. package/dist/express/index.js +90 -25
  38. package/dist/express/index.js.map +1 -1
  39. package/dist/express/middleware.cjs +90 -25
  40. package/dist/express/middleware.cjs.map +1 -1
  41. package/dist/express/middleware.js +90 -25
  42. package/dist/express/middleware.js.map +1 -1
  43. package/dist/fastify/index.cjs +90 -25
  44. package/dist/fastify/index.cjs.map +1 -1
  45. package/dist/fastify/index.js +90 -25
  46. package/dist/fastify/index.js.map +1 -1
  47. package/dist/fastify/plugin.cjs +90 -25
  48. package/dist/fastify/plugin.cjs.map +1 -1
  49. package/dist/fastify/plugin.js +90 -25
  50. package/dist/fastify/plugin.js.map +1 -1
  51. package/dist/h3/index.cjs +8 -4
  52. package/dist/h3/index.cjs.map +1 -1
  53. package/dist/h3/index.js +8 -4
  54. package/dist/h3/index.js.map +1 -1
  55. package/dist/h3/plugin.cjs +8 -4
  56. package/dist/h3/plugin.cjs.map +1 -1
  57. package/dist/h3/plugin.js +8 -4
  58. package/dist/h3/plugin.js.map +1 -1
  59. package/dist/hapi/index.cjs +6182 -0
  60. package/dist/hapi/index.cjs.map +1 -0
  61. package/dist/hapi/index.d.cts +9 -0
  62. package/dist/hapi/index.d.ts +9 -0
  63. package/dist/hapi/index.js +6172 -0
  64. package/dist/hapi/index.js.map +1 -0
  65. package/dist/hapi/plugin.cjs +6179 -0
  66. package/dist/hapi/plugin.cjs.map +1 -0
  67. package/dist/hapi/plugin.d.cts +36 -0
  68. package/dist/hapi/plugin.d.ts +36 -0
  69. package/dist/hapi/plugin.js +6172 -0
  70. package/dist/hapi/plugin.js.map +1 -0
  71. package/dist/hapi/utils.cjs +98 -0
  72. package/dist/hapi/utils.cjs.map +1 -0
  73. package/dist/hapi/utils.d.cts +14 -0
  74. package/dist/hapi/utils.d.ts +14 -0
  75. package/dist/hapi/utils.js +77 -0
  76. package/dist/hapi/utils.js.map +1 -0
  77. package/dist/hono/index.cjs +8 -4
  78. package/dist/hono/index.cjs.map +1 -1
  79. package/dist/hono/index.js +8 -4
  80. package/dist/hono/index.js.map +1 -1
  81. package/dist/hono/middleware.cjs +8 -4
  82. package/dist/hono/middleware.cjs.map +1 -1
  83. package/dist/hono/middleware.js +8 -4
  84. package/dist/hono/middleware.js.map +1 -1
  85. package/dist/koa/index.cjs +8 -4
  86. package/dist/koa/index.cjs.map +1 -1
  87. package/dist/koa/index.js +8 -4
  88. package/dist/koa/index.js.map +1 -1
  89. package/dist/koa/middleware.cjs +8 -4
  90. package/dist/koa/middleware.cjs.map +1 -1
  91. package/dist/koa/middleware.js +8 -4
  92. package/dist/koa/middleware.js.map +1 -1
  93. package/dist/loggers/hapi.cjs +54 -0
  94. package/dist/loggers/hapi.cjs.map +1 -0
  95. package/dist/loggers/hapi.d.cts +10 -0
  96. package/dist/loggers/hapi.d.ts +10 -0
  97. package/dist/loggers/hapi.js +31 -0
  98. package/dist/loggers/hapi.js.map +1 -0
  99. package/dist/loggers/index.cjs +118 -30
  100. package/dist/loggers/index.cjs.map +1 -1
  101. package/dist/loggers/index.d.cts +2 -0
  102. package/dist/loggers/index.d.ts +2 -0
  103. package/dist/loggers/index.js +117 -30
  104. package/dist/loggers/index.js.map +1 -1
  105. package/dist/loggers/pino.cjs +76 -15
  106. package/dist/loggers/pino.cjs.map +1 -1
  107. package/dist/loggers/pino.d.cts +1 -1
  108. package/dist/loggers/pino.d.ts +1 -1
  109. package/dist/loggers/pino.js +76 -15
  110. package/dist/loggers/pino.js.map +1 -1
  111. package/dist/nestjs/index.cjs +98 -26
  112. package/dist/nestjs/index.cjs.map +1 -1
  113. package/dist/nestjs/index.js +96 -25
  114. package/dist/nestjs/index.js.map +1 -1
  115. package/package.json +24 -4
@@ -11521,7 +11521,8 @@ var init_requestLogger = __esm({
11521
11521
  "application/json",
11522
11522
  "application/problem+json",
11523
11523
  "application/vnd.api+json",
11524
- "text/plain"
11524
+ "text/plain",
11525
+ "text/html"
11525
11526
  ];
11526
11527
  EXCLUDE_PATH_PATTERNS = [
11527
11528
  /\/_?healthz?$/i,
@@ -12299,6 +12300,15 @@ var init_console = __esm({
12299
12300
  }
12300
12301
  });
12301
12302
 
12303
+ // src/loggers/hapi.ts
12304
+ var import_node_util2;
12305
+ var init_hapi = __esm({
12306
+ "src/loggers/hapi.ts"() {
12307
+ "use strict";
12308
+ import_node_util2 = require("util");
12309
+ }
12310
+ });
12311
+
12302
12312
  // src/loggers/utils.ts
12303
12313
  function formatMessage(message, ...args) {
12304
12314
  return [
@@ -12314,7 +12324,7 @@ function formatArg(arg) {
12314
12324
  return arg.trim();
12315
12325
  }
12316
12326
  if (arg instanceof Error) {
12317
- return (0, import_node_util2.format)(arg).trim();
12327
+ return (0, import_node_util3.format)(arg).trim();
12318
12328
  }
12319
12329
  if (arg === void 0 || arg === null || isEmptyObject(arg)) {
12320
12330
  return "";
@@ -12322,17 +12332,17 @@ function formatArg(arg) {
12322
12332
  try {
12323
12333
  return JSON.stringify(arg);
12324
12334
  } catch {
12325
- return (0, import_node_util2.format)(arg).trim();
12335
+ return (0, import_node_util3.format)(arg).trim();
12326
12336
  }
12327
12337
  }
12328
12338
  function isEmptyObject(obj) {
12329
12339
  return obj !== null && typeof obj === "object" && Object.getPrototypeOf(obj) === Object.prototype && Object.keys(obj).length === 0;
12330
12340
  }
12331
- var import_node_util2;
12341
+ var import_node_util3;
12332
12342
  var init_utils = __esm({
12333
12343
  "src/loggers/utils.ts"() {
12334
12344
  "use strict";
12335
- import_node_util2 = require("util");
12345
+ import_node_util3 = require("util");
12336
12346
  __name(formatMessage, "formatMessage");
12337
12347
  __name(removeKeys, "removeKeys");
12338
12348
  __name(formatArg, "formatArg");
@@ -13622,11 +13632,31 @@ var require_time = __commonJS({
13622
13632
  var epochTime = /* @__PURE__ */ __name(() => `,"time":${Date.now()}`, "epochTime");
13623
13633
  var unixTime = /* @__PURE__ */ __name(() => `,"time":${Math.round(Date.now() / 1e3)}`, "unixTime");
13624
13634
  var isoTime = /* @__PURE__ */ __name(() => `,"time":"${new Date(Date.now()).toISOString()}"`, "isoTime");
13635
+ var NS_PER_MS = 1000000n;
13636
+ var NS_PER_SEC = 1000000000n;
13637
+ var startWallTimeNs = BigInt(Date.now()) * NS_PER_MS;
13638
+ var startHrTime = process.hrtime.bigint();
13639
+ var isoTimeNano = /* @__PURE__ */ __name(() => {
13640
+ const elapsedNs = process.hrtime.bigint() - startHrTime;
13641
+ const currentTimeNs = startWallTimeNs + elapsedNs;
13642
+ const secondsSinceEpoch = currentTimeNs / NS_PER_SEC;
13643
+ const nanosWithinSecond = currentTimeNs % NS_PER_SEC;
13644
+ const msSinceEpoch = Number(secondsSinceEpoch * 1000n + nanosWithinSecond / 1000000n);
13645
+ const date = new Date(msSinceEpoch);
13646
+ const year = date.getUTCFullYear();
13647
+ const month = (date.getUTCMonth() + 1).toString().padStart(2, "0");
13648
+ const day = date.getUTCDate().toString().padStart(2, "0");
13649
+ const hours = date.getUTCHours().toString().padStart(2, "0");
13650
+ const minutes = date.getUTCMinutes().toString().padStart(2, "0");
13651
+ const seconds = date.getUTCSeconds().toString().padStart(2, "0");
13652
+ return `,"time":"${year}-${month}-${day}T${hours}:${minutes}:${seconds}.${nanosWithinSecond.toString().padStart(9, "0")}Z"`;
13653
+ }, "isoTimeNano");
13625
13654
  module2.exports = {
13626
13655
  nullTime,
13627
13656
  epochTime,
13628
13657
  unixTime,
13629
- isoTime
13658
+ isoTime,
13659
+ isoTimeNano
13630
13660
  };
13631
13661
  }
13632
13662
  });
@@ -13643,8 +13673,8 @@ var require_quick_format_unescaped = __commonJS({
13643
13673
  }
13644
13674
  }
13645
13675
  __name(tryStringify, "tryStringify");
13646
- module2.exports = format4;
13647
- function format4(f, args, opts) {
13676
+ module2.exports = format5;
13677
+ function format5(f, args, opts) {
13648
13678
  var ss = opts && opts.stringify || tryStringify;
13649
13679
  var offset = 1;
13650
13680
  if (typeof f === "object" && f !== null) {
@@ -13735,7 +13765,7 @@ var require_quick_format_unescaped = __commonJS({
13735
13765
  }
13736
13766
  return str;
13737
13767
  }
13738
- __name(format4, "format");
13768
+ __name(format5, "format");
13739
13769
  }
13740
13770
  });
13741
13771
 
@@ -15210,13 +15240,25 @@ var require_transport = __commonJS({
15210
15240
  var require_tools = __commonJS({
15211
15241
  "node_modules/pino/lib/tools.js"(exports2, module2) {
15212
15242
  "use strict";
15213
- var format4 = require_quick_format_unescaped();
15243
+ var diagChan = require("diagnostics_channel");
15244
+ var format5 = require_quick_format_unescaped();
15214
15245
  var { mapHttpRequest, mapHttpResponse } = require_pino_std_serializers();
15215
15246
  var SonicBoom = require_sonic_boom();
15216
15247
  var onExit = require_on_exit_leak_free();
15217
15248
  var { lsCacheSym, chindingsSym, writeSym, serializersSym, formatOptsSym, endSym, stringifiersSym, stringifySym, stringifySafeSym, wildcardFirstSym, nestedKeySym, formattersSym, messageKeySym, errorKeySym, nestedKeyStrSym, msgPrefixSym } = require_symbols();
15218
15249
  var { isMainThread } = require("worker_threads");
15219
15250
  var transport = require_transport();
15251
+ var asJsonChan;
15252
+ if (typeof diagChan.tracingChannel === "function") {
15253
+ asJsonChan = diagChan.tracingChannel("pino_asJson");
15254
+ } else {
15255
+ asJsonChan = {
15256
+ hasSubscribers: false,
15257
+ traceSync(fn, store, thisArg, ...args) {
15258
+ return fn.call(thisArg, ...args);
15259
+ }
15260
+ };
15261
+ }
15220
15262
  function noop() {
15221
15263
  }
15222
15264
  __name(noop, "noop");
@@ -15247,13 +15289,13 @@ var require_tools = __commonJS({
15247
15289
  if (typeof this[msgPrefixSym] === "string" && msg !== void 0 && msg !== null) {
15248
15290
  msg = this[msgPrefixSym] + msg;
15249
15291
  }
15250
- this[writeSym](o, format4(msg, formatParams, this[formatOptsSym]), level);
15292
+ this[writeSym](o, format5(msg, formatParams, this[formatOptsSym]), level);
15251
15293
  } else {
15252
15294
  let msg = o === void 0 ? n.shift() : o;
15253
15295
  if (typeof this[msgPrefixSym] === "string" && msg !== void 0 && msg !== null) {
15254
15296
  msg = this[msgPrefixSym] + msg;
15255
15297
  }
15256
- this[writeSym](null, format4(msg, n, this[formatOptsSym]), level);
15298
+ this[writeSym](null, format5(msg, n, this[formatOptsSym]), level);
15257
15299
  }
15258
15300
  }
15259
15301
  __name(LOG, "LOG");
@@ -15285,6 +15327,17 @@ var require_tools = __commonJS({
15285
15327
  }
15286
15328
  __name(asString, "asString");
15287
15329
  function asJson(obj, msg, num, time) {
15330
+ if (asJsonChan.hasSubscribers === false) {
15331
+ return _asJson.call(this, obj, msg, num, time);
15332
+ }
15333
+ const store = {
15334
+ instance: this,
15335
+ arguments
15336
+ };
15337
+ return asJsonChan.traceSync(_asJson, store, this, obj, msg, num, time);
15338
+ }
15339
+ __name(asJson, "asJson");
15340
+ function _asJson(obj, msg, num, time) {
15288
15341
  const stringify2 = this[stringifySym];
15289
15342
  const stringifySafe = this[stringifySafeSym];
15290
15343
  const stringifiers = this[stringifiersSym];
@@ -15365,7 +15418,7 @@ var require_tools = __commonJS({
15365
15418
  return data + propStr + msgStr + end;
15366
15419
  }
15367
15420
  }
15368
- __name(asJson, "asJson");
15421
+ __name(_asJson, "_asJson");
15369
15422
  function asChindings(instance, bindings) {
15370
15423
  let value;
15371
15424
  let data = instance[chindingsSym];
@@ -15752,7 +15805,7 @@ var require_meta = __commonJS({
15752
15805
  "node_modules/pino/lib/meta.js"(exports2, module2) {
15753
15806
  "use strict";
15754
15807
  module2.exports = {
15755
- version: "9.9.0"
15808
+ version: "9.11.0"
15756
15809
  };
15757
15810
  }
15758
15811
  });
@@ -15793,6 +15846,9 @@ var require_proto = __commonJS({
15793
15846
  get msgPrefix() {
15794
15847
  return this[msgPrefixSym];
15795
15848
  },
15849
+ get [Symbol.toStringTag]() {
15850
+ return "Pino";
15851
+ },
15796
15852
  [lsCacheSym]: initialLsCache,
15797
15853
  [writeSym]: write,
15798
15854
  [asJsonSym]: asJson,
@@ -15856,8 +15912,10 @@ var require_proto = __commonJS({
15856
15912
  instance[msgPrefixSym] = (this[msgPrefixSym] || "") + options.msgPrefix;
15857
15913
  }
15858
15914
  instance[chindingsSym] = asChindings(instance, bindings2);
15859
- const childLevel = options.level || this.level;
15860
- instance[setLevelSym](childLevel);
15915
+ if (options.level !== void 0 && options.level !== this.level || options.hasOwnProperty("customLevels")) {
15916
+ const childLevel = options.level || this.level;
15917
+ instance[setLevelSym](childLevel);
15918
+ }
15861
15919
  this.onChild(instance);
15862
15920
  return instance;
15863
15921
  }
@@ -16904,18 +16962,23 @@ var require_pino = __commonJS({
16904
16962
  // src/loggers/pino.ts
16905
16963
  async function patchPinoLogger(logger, logsContext) {
16906
16964
  try {
16907
- const pino = await Promise.resolve().then(() => __toESM(require_pino(), 1));
16908
- if (!(pino.default.symbols.streamSym in logger)) {
16909
- return;
16965
+ const symbols = [
16966
+ ...Object.getOwnPropertySymbols(logger),
16967
+ ...Object.getOwnPropertySymbols(Object.getPrototypeOf(logger))
16968
+ ];
16969
+ const streamSym = symbols.find((sym) => sym.toString() === "Symbol(pino.stream)");
16970
+ const messageKeySym = symbols.find((sym) => sym.toString() === "Symbol(pino.messageKey)");
16971
+ if (!streamSym || !messageKeySym) {
16972
+ return false;
16910
16973
  }
16911
16974
  if (!(originalStreamSym in logger)) {
16912
- logger[originalStreamSym] = logger[pino.default.symbols.streamSym];
16975
+ logger[originalStreamSym] = logger[streamSym];
16913
16976
  }
16914
16977
  const originalStream = logger[originalStreamSym];
16915
16978
  if (originalStream) {
16916
- const messageKey = logger[pino.default.symbols.messageKeySym];
16917
- const captureStream = new ApitallyLogCaptureStream(logsContext, messageKey);
16918
- logger[pino.default.symbols.streamSym] = pino.default.multistream([
16979
+ const pino = await Promise.resolve().then(() => __toESM(require_pino(), 1));
16980
+ const captureStream = new ApitallyLogCaptureStream(logsContext, logger[messageKeySym]);
16981
+ logger[streamSym] = pino.default.multistream([
16919
16982
  {
16920
16983
  level: 0,
16921
16984
  stream: originalStream
@@ -16928,7 +16991,9 @@ async function patchPinoLogger(logger, logsContext) {
16928
16991
  levels: logger.levels
16929
16992
  });
16930
16993
  }
16994
+ return true;
16931
16995
  } catch {
16996
+ return false;
16932
16997
  }
16933
16998
  }
16934
16999
  function filterLogs(obj, messageKey) {
@@ -16973,8 +17038,8 @@ var init_pino = __esm({
16973
17038
  return;
16974
17039
  }
16975
17040
  try {
16976
- const message = obj[this.messageKey];
16977
- const rest = removeKeys(obj, [
17041
+ let message = obj[this.messageKey];
17042
+ const ignoreKeys = [
16978
17043
  "hostname",
16979
17044
  "level",
16980
17045
  this.messageKey,
@@ -16983,7 +17048,13 @@ var init_pino = __esm({
16983
17048
  "reqId",
16984
17049
  "req",
16985
17050
  "res"
16986
- ]);
17051
+ ];
17052
+ if (!message && "data" in obj && "tags" in obj) {
17053
+ message = obj.data;
17054
+ ignoreKeys.push("data");
17055
+ ignoreKeys.push("tags");
17056
+ }
17057
+ const rest = removeKeys(obj, ignoreKeys);
16987
17058
  const formattedMessage = formatMessage(message, rest);
16988
17059
  if (formattedMessage) {
16989
17060
  logs.push({
@@ -17075,6 +17146,7 @@ var init_loggers = __esm({
17075
17146
  "src/loggers/index.ts"() {
17076
17147
  "use strict";
17077
17148
  init_console();
17149
+ init_hapi();
17078
17150
  init_nestjs();
17079
17151
  init_pino();
17080
17152
  init_winston();