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
  }
@@ -4899,7 +4947,8 @@ var ALLOWED_CONTENT_TYPES = [
4899
4947
  "application/json",
4900
4948
  "application/problem+json",
4901
4949
  "application/vnd.api+json",
4902
- "text/plain"
4950
+ "text/plain",
4951
+ "text/html"
4903
4952
  ];
4904
4953
  var EXCLUDE_PATH_PATTERNS = [
4905
4954
  /\/_?healthz?$/i,
@@ -5724,8 +5773,11 @@ function captureLog(level, args) {
5724
5773
  }
5725
5774
  __name(captureLog, "captureLog");
5726
5775
 
5727
- // src/loggers/utils.ts
5776
+ // src/loggers/hapi.ts
5728
5777
  import { format as format3 } from "util";
5778
+
5779
+ // src/loggers/utils.ts
5780
+ import { format as format4 } from "util";
5729
5781
  function formatMessage(message, ...args) {
5730
5782
  return [
5731
5783
  message,
@@ -5742,7 +5794,7 @@ function formatArg(arg) {
5742
5794
  return arg.trim();
5743
5795
  }
5744
5796
  if (arg instanceof Error) {
5745
- return format3(arg).trim();
5797
+ return format4(arg).trim();
5746
5798
  }
5747
5799
  if (arg === void 0 || arg === null || isEmptyObject(arg)) {
5748
5800
  return "";
@@ -5750,7 +5802,7 @@ function formatArg(arg) {
5750
5802
  try {
5751
5803
  return JSON.stringify(arg);
5752
5804
  } catch {
5753
- return format3(arg).trim();
5805
+ return format4(arg).trim();
5754
5806
  }
5755
5807
  }
5756
5808
  __name(formatArg, "formatArg");
@@ -5835,18 +5887,23 @@ var logLevelMap = {
5835
5887
  };
5836
5888
  async function patchPinoLogger(logger, logsContext) {
5837
5889
  try {
5838
- const pino = await Promise.resolve().then(() => __toESM(require_pino(), 1));
5839
- if (!(pino.default.symbols.streamSym in logger)) {
5840
- return;
5890
+ const symbols = [
5891
+ ...Object.getOwnPropertySymbols(logger),
5892
+ ...Object.getOwnPropertySymbols(Object.getPrototypeOf(logger))
5893
+ ];
5894
+ const streamSym = symbols.find((sym) => sym.toString() === "Symbol(pino.stream)");
5895
+ const messageKeySym = symbols.find((sym) => sym.toString() === "Symbol(pino.messageKey)");
5896
+ if (!streamSym || !messageKeySym) {
5897
+ return false;
5841
5898
  }
5842
5899
  if (!(originalStreamSym in logger)) {
5843
- logger[originalStreamSym] = logger[pino.default.symbols.streamSym];
5900
+ logger[originalStreamSym] = logger[streamSym];
5844
5901
  }
5845
5902
  const originalStream = logger[originalStreamSym];
5846
5903
  if (originalStream) {
5847
- const messageKey = logger[pino.default.symbols.messageKeySym];
5848
- const captureStream = new ApitallyLogCaptureStream(logsContext, messageKey);
5849
- logger[pino.default.symbols.streamSym] = pino.default.multistream([
5904
+ const pino = await Promise.resolve().then(() => __toESM(require_pino(), 1));
5905
+ const captureStream = new ApitallyLogCaptureStream(logsContext, logger[messageKeySym]);
5906
+ logger[streamSym] = pino.default.multistream([
5850
5907
  {
5851
5908
  level: 0,
5852
5909
  stream: originalStream
@@ -5859,7 +5916,9 @@ async function patchPinoLogger(logger, logsContext) {
5859
5916
  levels: logger.levels
5860
5917
  });
5861
5918
  }
5919
+ return true;
5862
5920
  } catch {
5921
+ return false;
5863
5922
  }
5864
5923
  }
5865
5924
  __name(patchPinoLogger, "patchPinoLogger");
@@ -5890,8 +5949,8 @@ var ApitallyLogCaptureStream = (_a2 = class {
5890
5949
  return;
5891
5950
  }
5892
5951
  try {
5893
- const message = obj[this.messageKey];
5894
- const rest = removeKeys(obj, [
5952
+ let message = obj[this.messageKey];
5953
+ const ignoreKeys = [
5895
5954
  "hostname",
5896
5955
  "level",
5897
5956
  this.messageKey,
@@ -5900,7 +5959,13 @@ var ApitallyLogCaptureStream = (_a2 = class {
5900
5959
  "reqId",
5901
5960
  "req",
5902
5961
  "res"
5903
- ]);
5962
+ ];
5963
+ if (!message && "data" in obj && "tags" in obj) {
5964
+ message = obj.data;
5965
+ ignoreKeys.push("data");
5966
+ ignoreKeys.push("tags");
5967
+ }
5968
+ const rest = removeKeys(obj, ignoreKeys);
5904
5969
  const formattedMessage = formatMessage(message, rest);
5905
5970
  if (formattedMessage) {
5906
5971
  logs.push({