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
@@ -1246,11 +1246,31 @@ var require_time = __commonJS({
1246
1246
  var epochTime = /* @__PURE__ */ __name(() => `,"time":${Date.now()}`, "epochTime");
1247
1247
  var unixTime = /* @__PURE__ */ __name(() => `,"time":${Math.round(Date.now() / 1e3)}`, "unixTime");
1248
1248
  var isoTime = /* @__PURE__ */ __name(() => `,"time":"${new Date(Date.now()).toISOString()}"`, "isoTime");
1249
+ var NS_PER_MS = 1000000n;
1250
+ var NS_PER_SEC = 1000000000n;
1251
+ var startWallTimeNs = BigInt(Date.now()) * NS_PER_MS;
1252
+ var startHrTime = process.hrtime.bigint();
1253
+ var isoTimeNano = /* @__PURE__ */ __name(() => {
1254
+ const elapsedNs = process.hrtime.bigint() - startHrTime;
1255
+ const currentTimeNs = startWallTimeNs + elapsedNs;
1256
+ const secondsSinceEpoch = currentTimeNs / NS_PER_SEC;
1257
+ const nanosWithinSecond = currentTimeNs % NS_PER_SEC;
1258
+ const msSinceEpoch = Number(secondsSinceEpoch * 1000n + nanosWithinSecond / 1000000n);
1259
+ const date = new Date(msSinceEpoch);
1260
+ const year = date.getUTCFullYear();
1261
+ const month = (date.getUTCMonth() + 1).toString().padStart(2, "0");
1262
+ const day = date.getUTCDate().toString().padStart(2, "0");
1263
+ const hours = date.getUTCHours().toString().padStart(2, "0");
1264
+ const minutes = date.getUTCMinutes().toString().padStart(2, "0");
1265
+ const seconds = date.getUTCSeconds().toString().padStart(2, "0");
1266
+ return `,"time":"${year}-${month}-${day}T${hours}:${minutes}:${seconds}.${nanosWithinSecond.toString().padStart(9, "0")}Z"`;
1267
+ }, "isoTimeNano");
1249
1268
  module.exports = {
1250
1269
  nullTime,
1251
1270
  epochTime,
1252
1271
  unixTime,
1253
- isoTime
1272
+ isoTime,
1273
+ isoTimeNano
1254
1274
  };
1255
1275
  }
1256
1276
  });
@@ -1267,8 +1287,8 @@ var require_quick_format_unescaped = __commonJS({
1267
1287
  }
1268
1288
  }
1269
1289
  __name(tryStringify, "tryStringify");
1270
- module.exports = format4;
1271
- function format4(f, args, opts) {
1290
+ module.exports = format5;
1291
+ function format5(f, args, opts) {
1272
1292
  var ss = opts && opts.stringify || tryStringify;
1273
1293
  var offset = 1;
1274
1294
  if (typeof f === "object" && f !== null) {
@@ -1359,7 +1379,7 @@ var require_quick_format_unescaped = __commonJS({
1359
1379
  }
1360
1380
  return str;
1361
1381
  }
1362
- __name(format4, "format");
1382
+ __name(format5, "format");
1363
1383
  }
1364
1384
  });
1365
1385
 
@@ -2834,13 +2854,25 @@ var require_transport = __commonJS({
2834
2854
  var require_tools = __commonJS({
2835
2855
  "node_modules/pino/lib/tools.js"(exports, module) {
2836
2856
  "use strict";
2837
- var format4 = require_quick_format_unescaped();
2857
+ var diagChan = __require("diagnostics_channel");
2858
+ var format5 = require_quick_format_unescaped();
2838
2859
  var { mapHttpRequest, mapHttpResponse } = require_pino_std_serializers();
2839
2860
  var SonicBoom = require_sonic_boom();
2840
2861
  var onExit = require_on_exit_leak_free();
2841
2862
  var { lsCacheSym, chindingsSym, writeSym, serializersSym, formatOptsSym, endSym, stringifiersSym, stringifySym, stringifySafeSym, wildcardFirstSym, nestedKeySym, formattersSym, messageKeySym, errorKeySym, nestedKeyStrSym, msgPrefixSym } = require_symbols();
2842
2863
  var { isMainThread } = __require("worker_threads");
2843
2864
  var transport = require_transport();
2865
+ var asJsonChan;
2866
+ if (typeof diagChan.tracingChannel === "function") {
2867
+ asJsonChan = diagChan.tracingChannel("pino_asJson");
2868
+ } else {
2869
+ asJsonChan = {
2870
+ hasSubscribers: false,
2871
+ traceSync(fn, store, thisArg, ...args) {
2872
+ return fn.call(thisArg, ...args);
2873
+ }
2874
+ };
2875
+ }
2844
2876
  function noop() {
2845
2877
  }
2846
2878
  __name(noop, "noop");
@@ -2871,13 +2903,13 @@ var require_tools = __commonJS({
2871
2903
  if (typeof this[msgPrefixSym] === "string" && msg !== void 0 && msg !== null) {
2872
2904
  msg = this[msgPrefixSym] + msg;
2873
2905
  }
2874
- this[writeSym](o, format4(msg, formatParams, this[formatOptsSym]), level);
2906
+ this[writeSym](o, format5(msg, formatParams, this[formatOptsSym]), level);
2875
2907
  } else {
2876
2908
  let msg = o === void 0 ? n.shift() : o;
2877
2909
  if (typeof this[msgPrefixSym] === "string" && msg !== void 0 && msg !== null) {
2878
2910
  msg = this[msgPrefixSym] + msg;
2879
2911
  }
2880
- this[writeSym](null, format4(msg, n, this[formatOptsSym]), level);
2912
+ this[writeSym](null, format5(msg, n, this[formatOptsSym]), level);
2881
2913
  }
2882
2914
  }
2883
2915
  __name(LOG, "LOG");
@@ -2909,6 +2941,17 @@ var require_tools = __commonJS({
2909
2941
  }
2910
2942
  __name(asString, "asString");
2911
2943
  function asJson(obj, msg, num, time) {
2944
+ if (asJsonChan.hasSubscribers === false) {
2945
+ return _asJson.call(this, obj, msg, num, time);
2946
+ }
2947
+ const store = {
2948
+ instance: this,
2949
+ arguments
2950
+ };
2951
+ return asJsonChan.traceSync(_asJson, store, this, obj, msg, num, time);
2952
+ }
2953
+ __name(asJson, "asJson");
2954
+ function _asJson(obj, msg, num, time) {
2912
2955
  const stringify2 = this[stringifySym];
2913
2956
  const stringifySafe = this[stringifySafeSym];
2914
2957
  const stringifiers = this[stringifiersSym];
@@ -2989,7 +3032,7 @@ var require_tools = __commonJS({
2989
3032
  return data + propStr + msgStr + end;
2990
3033
  }
2991
3034
  }
2992
- __name(asJson, "asJson");
3035
+ __name(_asJson, "_asJson");
2993
3036
  function asChindings(instance, bindings) {
2994
3037
  let value;
2995
3038
  let data = instance[chindingsSym];
@@ -3376,7 +3419,7 @@ var require_meta = __commonJS({
3376
3419
  "node_modules/pino/lib/meta.js"(exports, module) {
3377
3420
  "use strict";
3378
3421
  module.exports = {
3379
- version: "9.9.0"
3422
+ version: "9.11.0"
3380
3423
  };
3381
3424
  }
3382
3425
  });
@@ -3417,6 +3460,9 @@ var require_proto = __commonJS({
3417
3460
  get msgPrefix() {
3418
3461
  return this[msgPrefixSym];
3419
3462
  },
3463
+ get [Symbol.toStringTag]() {
3464
+ return "Pino";
3465
+ },
3420
3466
  [lsCacheSym]: initialLsCache,
3421
3467
  [writeSym]: write,
3422
3468
  [asJsonSym]: asJson,
@@ -3480,8 +3526,10 @@ var require_proto = __commonJS({
3480
3526
  instance[msgPrefixSym] = (this[msgPrefixSym] || "") + options.msgPrefix;
3481
3527
  }
3482
3528
  instance[chindingsSym] = asChindings(instance, bindings2);
3483
- const childLevel = options.level || this.level;
3484
- instance[setLevelSym](childLevel);
3529
+ if (options.level !== void 0 && options.level !== this.level || options.hasOwnProperty("customLevels")) {
3530
+ const childLevel = options.level || this.level;
3531
+ instance[setLevelSym](childLevel);
3532
+ }
3485
3533
  this.onChild(instance);
3486
3534
  return instance;
3487
3535
  }
@@ -4884,7 +4932,8 @@ var ALLOWED_CONTENT_TYPES = [
4884
4932
  "application/json",
4885
4933
  "application/problem+json",
4886
4934
  "application/vnd.api+json",
4887
- "text/plain"
4935
+ "text/plain",
4936
+ "text/html"
4888
4937
  ];
4889
4938
  var EXCLUDE_PATH_PATTERNS = [
4890
4939
  /\/_?healthz?$/i,
@@ -5632,8 +5681,11 @@ function captureLog(level, args) {
5632
5681
  }
5633
5682
  __name(captureLog, "captureLog");
5634
5683
 
5635
- // src/loggers/utils.ts
5684
+ // src/loggers/hapi.ts
5636
5685
  import { format as format3 } from "util";
5686
+
5687
+ // src/loggers/utils.ts
5688
+ import { format as format4 } from "util";
5637
5689
  function formatMessage(message, ...args) {
5638
5690
  return [
5639
5691
  message,
@@ -5650,7 +5702,7 @@ function formatArg(arg) {
5650
5702
  return arg.trim();
5651
5703
  }
5652
5704
  if (arg instanceof Error) {
5653
- return format3(arg).trim();
5705
+ return format4(arg).trim();
5654
5706
  }
5655
5707
  if (arg === void 0 || arg === null || isEmptyObject(arg)) {
5656
5708
  return "";
@@ -5658,7 +5710,7 @@ function formatArg(arg) {
5658
5710
  try {
5659
5711
  return JSON.stringify(arg);
5660
5712
  } catch {
5661
- return format3(arg).trim();
5713
+ return format4(arg).trim();
5662
5714
  }
5663
5715
  }
5664
5716
  __name(formatArg, "formatArg");
@@ -5680,18 +5732,23 @@ var logLevelMap = {
5680
5732
  };
5681
5733
  async function patchPinoLogger(logger, logsContext) {
5682
5734
  try {
5683
- const pino = await Promise.resolve().then(() => __toESM(require_pino(), 1));
5684
- if (!(pino.default.symbols.streamSym in logger)) {
5685
- return;
5735
+ const symbols = [
5736
+ ...Object.getOwnPropertySymbols(logger),
5737
+ ...Object.getOwnPropertySymbols(Object.getPrototypeOf(logger))
5738
+ ];
5739
+ const streamSym = symbols.find((sym) => sym.toString() === "Symbol(pino.stream)");
5740
+ const messageKeySym = symbols.find((sym) => sym.toString() === "Symbol(pino.messageKey)");
5741
+ if (!streamSym || !messageKeySym) {
5742
+ return false;
5686
5743
  }
5687
5744
  if (!(originalStreamSym in logger)) {
5688
- logger[originalStreamSym] = logger[pino.default.symbols.streamSym];
5745
+ logger[originalStreamSym] = logger[streamSym];
5689
5746
  }
5690
5747
  const originalStream = logger[originalStreamSym];
5691
5748
  if (originalStream) {
5692
- const messageKey = logger[pino.default.symbols.messageKeySym];
5693
- const captureStream = new ApitallyLogCaptureStream(logsContext, messageKey);
5694
- logger[pino.default.symbols.streamSym] = pino.default.multistream([
5749
+ const pino = await Promise.resolve().then(() => __toESM(require_pino(), 1));
5750
+ const captureStream = new ApitallyLogCaptureStream(logsContext, logger[messageKeySym]);
5751
+ logger[streamSym] = pino.default.multistream([
5695
5752
  {
5696
5753
  level: 0,
5697
5754
  stream: originalStream
@@ -5704,7 +5761,9 @@ async function patchPinoLogger(logger, logsContext) {
5704
5761
  levels: logger.levels
5705
5762
  });
5706
5763
  }
5764
+ return true;
5707
5765
  } catch {
5766
+ return false;
5708
5767
  }
5709
5768
  }
5710
5769
  __name(patchPinoLogger, "patchPinoLogger");
@@ -5735,8 +5794,8 @@ var ApitallyLogCaptureStream = (_a2 = class {
5735
5794
  return;
5736
5795
  }
5737
5796
  try {
5738
- const message = obj[this.messageKey];
5739
- const rest = removeKeys(obj, [
5797
+ let message = obj[this.messageKey];
5798
+ const ignoreKeys = [
5740
5799
  "hostname",
5741
5800
  "level",
5742
5801
  this.messageKey,
@@ -5745,7 +5804,13 @@ var ApitallyLogCaptureStream = (_a2 = class {
5745
5804
  "reqId",
5746
5805
  "req",
5747
5806
  "res"
5748
- ]);
5807
+ ];
5808
+ if (!message && "data" in obj && "tags" in obj) {
5809
+ message = obj.data;
5810
+ ignoreKeys.push("data");
5811
+ ignoreKeys.push("tags");
5812
+ }
5813
+ const rest = removeKeys(obj, ignoreKeys);
5749
5814
  const formattedMessage = formatMessage(message, rest);
5750
5815
  if (formattedMessage) {
5751
5816
  logs.push({