apitally 0.25.8 → 1.0.0-beta.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 (555) hide show
  1. package/README.md +228 -178
  2. package/dist/activation.cjs +393 -0
  3. package/dist/activation.cjs.map +1 -0
  4. package/dist/activation.d.cts +42 -0
  5. package/dist/activation.d.ts +42 -0
  6. package/dist/activation.js +383 -0
  7. package/dist/activation.js.map +1 -0
  8. package/dist/adonisjs/configure.cjs +86 -30
  9. package/dist/adonisjs/configure.cjs.map +1 -1
  10. package/dist/adonisjs/configure.d.cts +0 -4
  11. package/dist/adonisjs/configure.d.ts +0 -4
  12. package/dist/adonisjs/configure.js +83 -29
  13. package/dist/adonisjs/configure.js.map +1 -1
  14. package/dist/adonisjs/index.cjs +38 -21
  15. package/dist/adonisjs/index.cjs.map +1 -1
  16. package/dist/adonisjs/index.d.cts +5 -14
  17. package/dist/adonisjs/index.d.ts +5 -14
  18. package/dist/adonisjs/index.js +39 -18
  19. package/dist/adonisjs/index.js.map +1 -1
  20. package/dist/adonisjs/middleware.cjs +43 -109
  21. package/dist/adonisjs/middleware.cjs.map +1 -1
  22. package/dist/adonisjs/middleware.d.cts +1 -16
  23. package/dist/adonisjs/middleware.d.ts +1 -16
  24. package/dist/adonisjs/middleware.js +43 -110
  25. package/dist/adonisjs/middleware.js.map +1 -1
  26. package/dist/adonisjs/provider.cjs +19 -87
  27. package/dist/adonisjs/provider.cjs.map +1 -1
  28. package/dist/adonisjs/provider.d.cts +0 -22
  29. package/dist/adonisjs/provider.d.ts +0 -22
  30. package/dist/adonisjs/provider.js +19 -88
  31. package/dist/adonisjs/provider.js.map +1 -1
  32. package/dist/adonisjs/stubs/config/apitally.stub +11 -15
  33. package/dist/bodyCapture.cjs +128 -0
  34. package/dist/bodyCapture.cjs.map +1 -0
  35. package/dist/bodyCapture.d.cts +31 -0
  36. package/dist/bodyCapture.d.ts +31 -0
  37. package/dist/bodyCapture.js +101 -0
  38. package/dist/bodyCapture.js.map +1 -0
  39. package/dist/config.cjs +227 -0
  40. package/dist/config.cjs.map +1 -0
  41. package/dist/config.d.cts +45 -0
  42. package/dist/config.d.ts +45 -0
  43. package/dist/config.js +192 -0
  44. package/dist/config.js.map +1 -0
  45. package/dist/consumer.cjs +98 -0
  46. package/dist/consumer.cjs.map +1 -0
  47. package/dist/consumer.d.cts +15 -0
  48. package/dist/consumer.d.ts +15 -0
  49. package/dist/consumer.js +78 -0
  50. package/dist/consumer.js.map +1 -0
  51. package/dist/context.cjs +68 -0
  52. package/dist/context.cjs.map +1 -0
  53. package/dist/context.d.cts +33 -0
  54. package/dist/context.d.ts +33 -0
  55. package/dist/context.js +40 -0
  56. package/dist/context.js.map +1 -0
  57. package/dist/elysia/index.cjs +12 -3
  58. package/dist/elysia/index.cjs.map +1 -1
  59. package/dist/elysia/index.d.cts +8 -16
  60. package/dist/elysia/index.d.ts +8 -16
  61. package/dist/elysia/index.js +10 -2
  62. package/dist/elysia/index.js.map +1 -1
  63. package/dist/elysia/middleware.cjs +261 -0
  64. package/dist/elysia/middleware.cjs.map +1 -0
  65. package/dist/elysia/middleware.d.cts +14 -0
  66. package/dist/elysia/middleware.d.ts +14 -0
  67. package/dist/elysia/middleware.js +250 -0
  68. package/dist/elysia/middleware.js.map +1 -0
  69. package/dist/{otel/index.cjs → elysia/routes.cjs} +16 -7
  70. package/dist/elysia/routes.cjs.map +1 -0
  71. package/dist/elysia/routes.d.cts +7 -0
  72. package/dist/elysia/routes.d.ts +7 -0
  73. package/dist/elysia/routes.js +14 -0
  74. package/dist/elysia/routes.js.map +1 -0
  75. package/dist/exceptions.cjs +81 -0
  76. package/dist/exceptions.cjs.map +1 -0
  77. package/dist/exceptions.d.cts +7 -0
  78. package/dist/exceptions.d.ts +7 -0
  79. package/dist/exceptions.js +55 -0
  80. package/dist/exceptions.js.map +1 -0
  81. package/dist/exportSerialization.cjs +56 -0
  82. package/dist/exportSerialization.cjs.map +1 -0
  83. package/dist/exportSerialization.d.cts +7 -0
  84. package/dist/exportSerialization.d.ts +7 -0
  85. package/dist/exportSerialization.js +32 -0
  86. package/dist/exportSerialization.js.map +1 -0
  87. package/dist/exportWorker.cjs +305 -0
  88. package/dist/exportWorker.cjs.map +1 -0
  89. package/dist/exportWorker.d.cts +46 -0
  90. package/dist/exportWorker.d.ts +46 -0
  91. package/dist/exportWorker.js +279 -0
  92. package/dist/exportWorker.js.map +1 -0
  93. package/dist/express/index.cjs +9 -4
  94. package/dist/express/index.cjs.map +1 -1
  95. package/dist/express/index.d.cts +7 -10
  96. package/dist/express/index.d.ts +7 -10
  97. package/dist/express/index.js +8 -2
  98. package/dist/express/index.js.map +1 -1
  99. package/dist/express/install.cjs +45 -0
  100. package/dist/express/install.cjs.map +1 -0
  101. package/dist/express/install.d.cts +10 -0
  102. package/dist/express/install.d.ts +10 -0
  103. package/dist/express/install.js +21 -0
  104. package/dist/express/install.js.map +1 -0
  105. package/dist/express/middleware.cjs +87 -331
  106. package/dist/express/middleware.cjs.map +1 -1
  107. package/dist/express/middleware.d.cts +3 -21
  108. package/dist/express/middleware.d.ts +3 -21
  109. package/dist/express/middleware.js +91 -327
  110. package/dist/express/middleware.js.map +1 -1
  111. package/dist/express/register.cjs +20 -0
  112. package/dist/express/register.cjs.map +1 -0
  113. package/dist/express/register.d.cts +2 -0
  114. package/dist/express/register.d.ts +2 -0
  115. package/dist/express/register.js +19 -0
  116. package/dist/express/register.js.map +1 -0
  117. package/dist/express/routes.cjs +429 -0
  118. package/dist/express/routes.cjs.map +1 -0
  119. package/dist/express/routes.d.cts +14 -0
  120. package/dist/express/routes.d.ts +14 -0
  121. package/dist/express/routes.js +401 -0
  122. package/dist/express/routes.js.map +1 -0
  123. package/dist/fastify/index.cjs +10 -5
  124. package/dist/fastify/index.cjs.map +1 -1
  125. package/dist/fastify/index.d.cts +7 -11
  126. package/dist/fastify/index.d.ts +7 -11
  127. package/dist/fastify/index.js +9 -3
  128. package/dist/fastify/index.js.map +1 -1
  129. package/dist/{loggers/index.cjs → fastify/install.cjs} +17 -19
  130. package/dist/fastify/install.cjs.map +1 -0
  131. package/dist/fastify/install.d.cts +10 -0
  132. package/dist/fastify/install.d.ts +10 -0
  133. package/dist/fastify/install.js +15 -0
  134. package/dist/fastify/install.js.map +1 -0
  135. package/dist/fastify/middleware.cjs +135 -0
  136. package/dist/fastify/middleware.cjs.map +1 -0
  137. package/dist/fastify/middleware.d.cts +7 -0
  138. package/dist/fastify/middleware.d.ts +7 -0
  139. package/dist/fastify/middleware.js +114 -0
  140. package/dist/fastify/middleware.js.map +1 -0
  141. package/dist/{common/paramValidation.cjs → fastify/routes.cjs} +15 -17
  142. package/dist/fastify/routes.cjs.map +1 -0
  143. package/dist/fastify/routes.d.cts +8 -0
  144. package/dist/fastify/routes.d.ts +8 -0
  145. package/dist/fastify/routes.js +14 -0
  146. package/dist/fastify/routes.js.map +1 -0
  147. package/dist/h3/index.cjs +28 -4
  148. package/dist/h3/index.cjs.map +1 -1
  149. package/dist/h3/index.d.cts +8 -10
  150. package/dist/h3/index.d.ts +8 -10
  151. package/dist/h3/index.js +26 -2
  152. package/dist/h3/index.js.map +1 -1
  153. package/dist/h3/middleware.cjs +210 -0
  154. package/dist/h3/middleware.cjs.map +1 -0
  155. package/dist/h3/middleware.d.cts +5 -0
  156. package/dist/h3/middleware.d.ts +5 -0
  157. package/dist/h3/middleware.js +194 -0
  158. package/dist/h3/middleware.js.map +1 -0
  159. package/dist/h3/routes.cjs +66 -0
  160. package/dist/h3/routes.cjs.map +1 -0
  161. package/dist/h3/routes.d.cts +8 -0
  162. package/dist/h3/routes.d.ts +8 -0
  163. package/dist/h3/routes.js +41 -0
  164. package/dist/h3/routes.js.map +1 -0
  165. package/dist/hapi/index.cjs +15 -4
  166. package/dist/hapi/index.cjs.map +1 -1
  167. package/dist/hapi/index.d.cts +8 -10
  168. package/dist/hapi/index.d.ts +8 -10
  169. package/dist/hapi/index.js +13 -2
  170. package/dist/hapi/index.js.map +1 -1
  171. package/dist/{loggers/hapi.cjs → hapi/install.cjs} +20 -26
  172. package/dist/hapi/install.cjs.map +1 -0
  173. package/dist/hapi/install.d.cts +8 -0
  174. package/dist/hapi/install.d.ts +8 -0
  175. package/dist/hapi/install.js +22 -0
  176. package/dist/hapi/install.js.map +1 -0
  177. package/dist/hapi/middleware.cjs +158 -0
  178. package/dist/hapi/middleware.cjs.map +1 -0
  179. package/dist/hapi/middleware.d.cts +5 -0
  180. package/dist/hapi/middleware.d.ts +5 -0
  181. package/dist/hapi/middleware.js +137 -0
  182. package/dist/hapi/middleware.js.map +1 -0
  183. package/dist/{common/logging.cjs → hapi/routes.cjs} +14 -17
  184. package/dist/hapi/routes.cjs.map +1 -0
  185. package/dist/hapi/routes.d.cts +8 -0
  186. package/dist/hapi/routes.d.ts +8 -0
  187. package/dist/hapi/routes.js +12 -0
  188. package/dist/hapi/routes.js.map +1 -0
  189. package/dist/hono/index.cjs +13 -3
  190. package/dist/hono/index.cjs.map +1 -1
  191. package/dist/hono/index.d.cts +7 -10
  192. package/dist/hono/index.d.ts +7 -10
  193. package/dist/hono/index.js +13 -2
  194. package/dist/hono/index.js.map +1 -1
  195. package/dist/hono/middleware.cjs +219 -127
  196. package/dist/hono/middleware.cjs.map +1 -1
  197. package/dist/hono/middleware.d.cts +3 -18
  198. package/dist/hono/middleware.d.ts +3 -18
  199. package/dist/hono/middleware.js +229 -126
  200. package/dist/hono/middleware.js.map +1 -1
  201. package/dist/hono/routes.cjs +74 -0
  202. package/dist/hono/routes.cjs.map +1 -0
  203. package/dist/hono/routes.d.cts +8 -0
  204. package/dist/hono/routes.d.ts +8 -0
  205. package/dist/hono/routes.js +49 -0
  206. package/dist/hono/routes.js.map +1 -0
  207. package/dist/index.cjs +108 -0
  208. package/dist/index.cjs.map +1 -1
  209. package/dist/index.d.cts +29 -1
  210. package/dist/index.d.ts +29 -1
  211. package/dist/index.js +77 -0
  212. package/dist/index.js.map +1 -1
  213. package/dist/koa/index.cjs +13 -3
  214. package/dist/koa/index.cjs.map +1 -1
  215. package/dist/koa/index.d.cts +7 -10
  216. package/dist/koa/index.d.ts +7 -10
  217. package/dist/koa/index.js +13 -2
  218. package/dist/koa/index.js.map +1 -1
  219. package/dist/koa/middleware.cjs +85 -184
  220. package/dist/koa/middleware.cjs.map +1 -1
  221. package/dist/koa/middleware.d.cts +3 -13
  222. package/dist/koa/middleware.d.ts +3 -13
  223. package/dist/koa/middleware.js +88 -183
  224. package/dist/koa/middleware.js.map +1 -1
  225. package/dist/koa/routes.cjs +71 -0
  226. package/dist/koa/routes.cjs.map +1 -0
  227. package/dist/koa/routes.d.cts +8 -0
  228. package/dist/koa/routes.d.ts +8 -0
  229. package/dist/koa/routes.js +46 -0
  230. package/dist/koa/routes.js.map +1 -0
  231. package/dist/logCapture.cjs +417 -0
  232. package/dist/logCapture.cjs.map +1 -0
  233. package/dist/logCapture.d.cts +18 -0
  234. package/dist/logCapture.d.ts +18 -0
  235. package/dist/logCapture.js +390 -0
  236. package/dist/logCapture.js.map +1 -0
  237. package/dist/logRecordExporter.cjs +51 -0
  238. package/dist/logRecordExporter.cjs.map +1 -0
  239. package/dist/logRecordExporter.d.cts +14 -0
  240. package/dist/logRecordExporter.d.ts +14 -0
  241. package/dist/logRecordExporter.js +27 -0
  242. package/dist/logRecordExporter.js.map +1 -0
  243. package/dist/logRecordProcessor.cjs +137 -0
  244. package/dist/logRecordProcessor.cjs.map +1 -0
  245. package/dist/logRecordProcessor.d.cts +27 -0
  246. package/dist/logRecordProcessor.d.ts +27 -0
  247. package/dist/logRecordProcessor.js +113 -0
  248. package/dist/logRecordProcessor.js.map +1 -0
  249. package/dist/logger.cjs +62 -0
  250. package/dist/logger.cjs.map +1 -0
  251. package/dist/logger.d.cts +7 -0
  252. package/dist/logger.d.ts +7 -0
  253. package/dist/logger.js +34 -0
  254. package/dist/logger.js.map +1 -0
  255. package/dist/metrics.cjs +171 -0
  256. package/dist/metrics.cjs.map +1 -0
  257. package/dist/metrics.d.cts +26 -0
  258. package/dist/metrics.d.ts +26 -0
  259. package/dist/metrics.js +153 -0
  260. package/dist/metrics.js.map +1 -0
  261. package/dist/nestjs/index.cjs +81 -71
  262. package/dist/nestjs/index.cjs.map +1 -1
  263. package/dist/nestjs/index.d.cts +4 -11
  264. package/dist/nestjs/index.d.ts +4 -11
  265. package/dist/nestjs/index.js +81 -61
  266. package/dist/nestjs/index.js.map +1 -1
  267. package/dist/packageVersion.cjs +67 -0
  268. package/dist/packageVersion.cjs.map +1 -0
  269. package/dist/packageVersion.d.cts +5 -0
  270. package/dist/packageVersion.d.ts +5 -0
  271. package/dist/packageVersion.js +39 -0
  272. package/dist/packageVersion.js.map +1 -0
  273. package/dist/providers.cjs +149 -0
  274. package/dist/providers.cjs.map +1 -0
  275. package/dist/providers.d.cts +15 -0
  276. package/dist/providers.d.ts +15 -0
  277. package/dist/providers.js +136 -0
  278. package/dist/providers.js.map +1 -0
  279. package/dist/redaction.cjs +116 -0
  280. package/dist/redaction.cjs.map +1 -0
  281. package/dist/redaction.d.cts +17 -0
  282. package/dist/redaction.d.ts +17 -0
  283. package/dist/redaction.js +98 -0
  284. package/dist/redaction.js.map +1 -0
  285. package/dist/{common/packageVersions.cjs → requestAttributes.cjs} +21 -19
  286. package/dist/requestAttributes.cjs.map +1 -0
  287. package/dist/requestAttributes.d.cts +10 -0
  288. package/dist/requestAttributes.d.ts +10 -0
  289. package/dist/requestAttributes.js +22 -0
  290. package/dist/requestAttributes.js.map +1 -0
  291. package/dist/requestObservation.cjs +246 -0
  292. package/dist/requestObservation.cjs.map +1 -0
  293. package/dist/requestObservation.d.cts +62 -0
  294. package/dist/requestObservation.d.ts +62 -0
  295. package/dist/requestObservation.js +226 -0
  296. package/dist/requestObservation.js.map +1 -0
  297. package/dist/requestObservationNode.cjs +193 -0
  298. package/dist/requestObservationNode.cjs.map +1 -0
  299. package/dist/requestObservationNode.d.cts +31 -0
  300. package/dist/requestObservationNode.d.ts +31 -0
  301. package/dist/requestObservationNode.js +170 -0
  302. package/dist/requestObservationNode.js.map +1 -0
  303. package/dist/requestObservationWeb.cjs +202 -0
  304. package/dist/requestObservationWeb.cjs.map +1 -0
  305. package/dist/requestObservationWeb.d.cts +34 -0
  306. package/dist/requestObservationWeb.d.ts +34 -0
  307. package/dist/requestObservationWeb.js +182 -0
  308. package/dist/requestObservationWeb.js.map +1 -0
  309. package/dist/sentry.cjs +103 -0
  310. package/dist/sentry.cjs.map +1 -0
  311. package/dist/sentry.d.cts +3 -0
  312. package/dist/sentry.d.ts +3 -0
  313. package/dist/sentry.js +79 -0
  314. package/dist/sentry.js.map +1 -0
  315. package/dist/serverErrors.cjs +118 -0
  316. package/dist/serverErrors.cjs.map +1 -0
  317. package/dist/serverErrors.d.cts +8 -0
  318. package/dist/serverErrors.d.ts +8 -0
  319. package/dist/serverErrors.js +91 -0
  320. package/dist/serverErrors.js.map +1 -0
  321. package/dist/spanExporter.cjs +217 -0
  322. package/dist/spanExporter.cjs.map +1 -0
  323. package/dist/spanExporter.d.cts +34 -0
  324. package/dist/spanExporter.d.ts +34 -0
  325. package/dist/spanExporter.js +193 -0
  326. package/dist/spanExporter.js.map +1 -0
  327. package/dist/spanProcessor.cjs +535 -0
  328. package/dist/spanProcessor.cjs.map +1 -0
  329. package/dist/spanProcessor.d.cts +70 -0
  330. package/dist/spanProcessor.d.ts +70 -0
  331. package/dist/spanProcessor.js +513 -0
  332. package/dist/spanProcessor.js.map +1 -0
  333. package/dist/spool.cjs +314 -0
  334. package/dist/spool.cjs.map +1 -0
  335. package/dist/spool.d.cts +49 -0
  336. package/dist/spool.d.ts +49 -0
  337. package/dist/spool.js +297 -0
  338. package/dist/spool.js.map +1 -0
  339. package/dist/startup.cjs +98 -0
  340. package/dist/startup.cjs.map +1 -0
  341. package/dist/startup.d.cts +15 -0
  342. package/dist/startup.d.ts +15 -0
  343. package/dist/startup.js +73 -0
  344. package/dist/startup.js.map +1 -0
  345. package/dist/tracing.cjs +116 -0
  346. package/dist/tracing.cjs.map +1 -0
  347. package/dist/tracing.d.cts +5 -0
  348. package/dist/tracing.d.ts +5 -0
  349. package/dist/tracing.js +96 -0
  350. package/dist/tracing.js.map +1 -0
  351. package/dist/validationErrors.cjs +229 -0
  352. package/dist/validationErrors.cjs.map +1 -0
  353. package/dist/validationErrors.d.cts +21 -0
  354. package/dist/validationErrors.d.ts +21 -0
  355. package/dist/validationErrors.js +195 -0
  356. package/dist/validationErrors.js.map +1 -0
  357. package/package.json +113 -154
  358. package/dist/common/client.cjs +0 -335
  359. package/dist/common/client.cjs.map +0 -1
  360. package/dist/common/client.d.cts +0 -50
  361. package/dist/common/client.d.ts +0 -50
  362. package/dist/common/client.js +0 -302
  363. package/dist/common/client.js.map +0 -1
  364. package/dist/common/consumerRegistry.cjs +0 -86
  365. package/dist/common/consumerRegistry.cjs.map +0 -1
  366. package/dist/common/consumerRegistry.d.cts +0 -20
  367. package/dist/common/consumerRegistry.d.ts +0 -20
  368. package/dist/common/consumerRegistry.js +0 -62
  369. package/dist/common/consumerRegistry.js.map +0 -1
  370. package/dist/common/headers.cjs +0 -55
  371. package/dist/common/headers.cjs.map +0 -1
  372. package/dist/common/headers.d.cts +0 -6
  373. package/dist/common/headers.d.ts +0 -6
  374. package/dist/common/headers.js +0 -31
  375. package/dist/common/headers.js.map +0 -1
  376. package/dist/common/instance.cjs +0 -158
  377. package/dist/common/instance.cjs.map +0 -1
  378. package/dist/common/instance.d.cts +0 -4
  379. package/dist/common/instance.d.ts +0 -4
  380. package/dist/common/instance.js +0 -134
  381. package/dist/common/instance.js.map +0 -1
  382. package/dist/common/logging.cjs.map +0 -1
  383. package/dist/common/logging.d.cts +0 -11
  384. package/dist/common/logging.d.ts +0 -11
  385. package/dist/common/logging.js +0 -17
  386. package/dist/common/logging.js.map +0 -1
  387. package/dist/common/packageVersions.cjs.map +0 -1
  388. package/dist/common/packageVersions.d.cts +0 -3
  389. package/dist/common/packageVersions.d.ts +0 -3
  390. package/dist/common/packageVersions.js +0 -21
  391. package/dist/common/packageVersions.js.map +0 -1
  392. package/dist/common/paramValidation.cjs.map +0 -1
  393. package/dist/common/paramValidation.d.cts +0 -4
  394. package/dist/common/paramValidation.d.ts +0 -4
  395. package/dist/common/paramValidation.js +0 -17
  396. package/dist/common/paramValidation.js.map +0 -1
  397. package/dist/common/requestCounter.cjs +0 -114
  398. package/dist/common/requestCounter.cjs.map +0 -1
  399. package/dist/common/requestCounter.d.cts +0 -24
  400. package/dist/common/requestCounter.d.ts +0 -24
  401. package/dist/common/requestCounter.js +0 -91
  402. package/dist/common/requestCounter.js.map +0 -1
  403. package/dist/common/requestLogger.cjs +0 -543
  404. package/dist/common/requestLogger.cjs.map +0 -1
  405. package/dist/common/requestLogger.d.cts +0 -85
  406. package/dist/common/requestLogger.d.ts +0 -85
  407. package/dist/common/requestLogger.js +0 -508
  408. package/dist/common/requestLogger.js.map +0 -1
  409. package/dist/common/resources.cjs +0 -49
  410. package/dist/common/resources.cjs.map +0 -1
  411. package/dist/common/resources.d.cts +0 -6
  412. package/dist/common/resources.d.ts +0 -6
  413. package/dist/common/resources.js +0 -26
  414. package/dist/common/resources.js.map +0 -1
  415. package/dist/common/response.cjs +0 -104
  416. package/dist/common/response.cjs.map +0 -1
  417. package/dist/common/response.d.cts +0 -15
  418. package/dist/common/response.d.ts +0 -15
  419. package/dist/common/response.js +0 -80
  420. package/dist/common/response.js.map +0 -1
  421. package/dist/common/sentry.cjs +0 -56
  422. package/dist/common/sentry.cjs.map +0 -1
  423. package/dist/common/sentry.d.cts +0 -6
  424. package/dist/common/sentry.d.ts +0 -6
  425. package/dist/common/sentry.js +0 -23
  426. package/dist/common/sentry.js.map +0 -1
  427. package/dist/common/serverErrorCounter.cjs +0 -123
  428. package/dist/common/serverErrorCounter.cjs.map +0 -1
  429. package/dist/common/serverErrorCounter.d.cts +0 -23
  430. package/dist/common/serverErrorCounter.d.ts +0 -23
  431. package/dist/common/serverErrorCounter.js +0 -98
  432. package/dist/common/serverErrorCounter.js.map +0 -1
  433. package/dist/common/spanCollector.cjs +0 -201
  434. package/dist/common/spanCollector.cjs.map +0 -1
  435. package/dist/common/spanCollector.d.cts +0 -45
  436. package/dist/common/spanCollector.d.ts +0 -45
  437. package/dist/common/spanCollector.js +0 -177
  438. package/dist/common/spanCollector.js.map +0 -1
  439. package/dist/common/tempGzipFile.cjs +0 -127
  440. package/dist/common/tempGzipFile.cjs.map +0 -1
  441. package/dist/common/tempGzipFile.d.cts +0 -19
  442. package/dist/common/tempGzipFile.d.ts +0 -19
  443. package/dist/common/tempGzipFile.js +0 -103
  444. package/dist/common/tempGzipFile.js.map +0 -1
  445. package/dist/common/types.cjs +0 -17
  446. package/dist/common/types.cjs.map +0 -1
  447. package/dist/common/types.d.cts +0 -95
  448. package/dist/common/types.d.ts +0 -95
  449. package/dist/common/types.js +0 -1
  450. package/dist/common/types.js.map +0 -1
  451. package/dist/common/validationErrorCounter.cjs +0 -79
  452. package/dist/common/validationErrorCounter.cjs.map +0 -1
  453. package/dist/common/validationErrorCounter.d.cts +0 -20
  454. package/dist/common/validationErrorCounter.d.ts +0 -20
  455. package/dist/common/validationErrorCounter.js +0 -56
  456. package/dist/common/validationErrorCounter.js.map +0 -1
  457. package/dist/elysia/plugin.cjs +0 -242
  458. package/dist/elysia/plugin.cjs.map +0 -1
  459. package/dist/elysia/plugin.d.cts +0 -70
  460. package/dist/elysia/plugin.d.ts +0 -70
  461. package/dist/elysia/plugin.js +0 -219
  462. package/dist/elysia/plugin.js.map +0 -1
  463. package/dist/elysia/utils.cjs +0 -77
  464. package/dist/elysia/utils.cjs.map +0 -1
  465. package/dist/elysia/utils.d.cts +0 -14
  466. package/dist/elysia/utils.d.ts +0 -14
  467. package/dist/elysia/utils.js +0 -54
  468. package/dist/elysia/utils.js.map +0 -1
  469. package/dist/express/utils.cjs +0 -217
  470. package/dist/express/utils.cjs.map +0 -1
  471. package/dist/express/utils.d.cts +0 -37
  472. package/dist/express/utils.d.ts +0 -37
  473. package/dist/express/utils.js +0 -189
  474. package/dist/express/utils.js.map +0 -1
  475. package/dist/fastify/plugin.cjs +0 -319
  476. package/dist/fastify/plugin.cjs.map +0 -1
  477. package/dist/fastify/plugin.d.cts +0 -34
  478. package/dist/fastify/plugin.d.ts +0 -34
  479. package/dist/fastify/plugin.js +0 -284
  480. package/dist/fastify/plugin.js.map +0 -1
  481. package/dist/h3/plugin.cjs +0 -183
  482. package/dist/h3/plugin.cjs.map +0 -1
  483. package/dist/h3/plugin.d.cts +0 -27
  484. package/dist/h3/plugin.d.ts +0 -27
  485. package/dist/h3/plugin.js +0 -159
  486. package/dist/h3/plugin.js.map +0 -1
  487. package/dist/h3/utils.cjs +0 -77
  488. package/dist/h3/utils.cjs.map +0 -1
  489. package/dist/h3/utils.d.cts +0 -14
  490. package/dist/h3/utils.d.ts +0 -14
  491. package/dist/h3/utils.js +0 -54
  492. package/dist/h3/utils.js.map +0 -1
  493. package/dist/hapi/plugin.cjs +0 -212
  494. package/dist/hapi/plugin.cjs.map +0 -1
  495. package/dist/hapi/plugin.d.cts +0 -40
  496. package/dist/hapi/plugin.d.ts +0 -40
  497. package/dist/hapi/plugin.js +0 -188
  498. package/dist/hapi/plugin.js.map +0 -1
  499. package/dist/hapi/utils.cjs +0 -77
  500. package/dist/hapi/utils.cjs.map +0 -1
  501. package/dist/hapi/utils.d.cts +0 -16
  502. package/dist/hapi/utils.d.ts +0 -16
  503. package/dist/hapi/utils.js +0 -53
  504. package/dist/hapi/utils.js.map +0 -1
  505. package/dist/hono/utils.cjs +0 -113
  506. package/dist/hono/utils.cjs.map +0 -1
  507. package/dist/hono/utils.d.cts +0 -16
  508. package/dist/hono/utils.d.ts +0 -16
  509. package/dist/hono/utils.js +0 -88
  510. package/dist/hono/utils.js.map +0 -1
  511. package/dist/loggers/console.cjs +0 -67
  512. package/dist/loggers/console.cjs.map +0 -1
  513. package/dist/loggers/console.d.cts +0 -11
  514. package/dist/loggers/console.d.ts +0 -11
  515. package/dist/loggers/console.js +0 -44
  516. package/dist/loggers/console.js.map +0 -1
  517. package/dist/loggers/hapi.cjs.map +0 -1
  518. package/dist/loggers/hapi.d.cts +0 -12
  519. package/dist/loggers/hapi.d.ts +0 -12
  520. package/dist/loggers/hapi.js +0 -29
  521. package/dist/loggers/hapi.js.map +0 -1
  522. package/dist/loggers/index.cjs.map +0 -1
  523. package/dist/loggers/index.d.cts +0 -13
  524. package/dist/loggers/index.d.ts +0 -13
  525. package/dist/loggers/index.js +0 -13
  526. package/dist/loggers/index.js.map +0 -1
  527. package/dist/loggers/nestjs.cjs +0 -104
  528. package/dist/loggers/nestjs.cjs.map +0 -1
  529. package/dist/loggers/nestjs.d.cts +0 -11
  530. package/dist/loggers/nestjs.d.ts +0 -11
  531. package/dist/loggers/nestjs.js +0 -71
  532. package/dist/loggers/nestjs.js.map +0 -1
  533. package/dist/loggers/pino.cjs +0 -152
  534. package/dist/loggers/pino.cjs.map +0 -1
  535. package/dist/loggers/pino.d.cts +0 -11
  536. package/dist/loggers/pino.d.ts +0 -11
  537. package/dist/loggers/pino.js +0 -119
  538. package/dist/loggers/pino.js.map +0 -1
  539. package/dist/loggers/utils.cjs +0 -64
  540. package/dist/loggers/utils.cjs.map +0 -1
  541. package/dist/loggers/utils.d.cts +0 -6
  542. package/dist/loggers/utils.d.ts +0 -6
  543. package/dist/loggers/utils.js +0 -40
  544. package/dist/loggers/utils.js.map +0 -1
  545. package/dist/loggers/winston.cjs +0 -101
  546. package/dist/loggers/winston.cjs.map +0 -1
  547. package/dist/loggers/winston.d.cts +0 -11
  548. package/dist/loggers/winston.d.ts +0 -11
  549. package/dist/loggers/winston.js +0 -68
  550. package/dist/loggers/winston.js.map +0 -1
  551. package/dist/otel/index.cjs.map +0 -1
  552. package/dist/otel/index.d.cts +0 -2
  553. package/dist/otel/index.d.ts +0 -2
  554. package/dist/otel/index.js +0 -5
  555. package/dist/otel/index.js.map +0 -1
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/h3/plugin.ts"],"sourcesContent":["import type { H3Event, HTTPError } from \"h3\";\nimport { definePlugin, onError, onRequest, onResponse } from \"h3\";\nimport { AsyncLocalStorage } from \"node:async_hooks\";\nimport { performance } from \"node:perf_hooks\";\nimport type { ZodError } from \"zod\";\n\nimport { ApitallyClient } from \"../common/client.js\";\nimport { consumerFromStringOrObject } from \"../common/consumerRegistry.js\";\nimport { mergeHeaders, parseContentLength } from \"../common/headers.js\";\nimport type { LogRecord } from \"../common/requestLogger.js\";\nimport { convertHeaders } from \"../common/requestLogger.js\";\nimport { captureResponse } from \"../common/response.js\";\nimport type { SpanHandle } from \"../common/spanCollector.js\";\nimport { ApitallyConfig, ApitallyConsumer } from \"../common/types.js\";\nimport { patchConsole, patchWinston } from \"../loggers/index.js\";\nimport { getAppInfo } from \"./utils.js\";\n\nconst REQUEST_TIMESTAMP_SYMBOL = Symbol(\"apitally.requestTimestamp\");\nconst REQUEST_BODY_SYMBOL = Symbol(\"apitally.requestBody\");\nconst SPAN_HANDLE_SYMBOL = Symbol(\"apitally.spanHandle\");\n\ndeclare module \"h3\" {\n interface H3EventContext {\n apitallyConsumer?: ApitallyConsumer | string;\n\n [REQUEST_TIMESTAMP_SYMBOL]?: number;\n [REQUEST_BODY_SYMBOL]?: Buffer;\n [SPAN_HANDLE_SYMBOL]?: SpanHandle;\n }\n}\n\nconst jsonHeaders = new Headers({\n \"content-type\": \"application/json;charset=UTF-8\",\n});\n\nexport const apitallyPlugin = definePlugin<ApitallyConfig>((app, config) => {\n const client = new ApitallyClient(config);\n const logsContext = new AsyncLocalStorage<LogRecord[]>();\n\n const setStartupData = (attempt: number = 1) => {\n const appInfo = getAppInfo(app, config.appVersion);\n if (appInfo.paths.length > 0 || attempt >= 10) {\n client.setStartupData(appInfo);\n client.startSync();\n } else {\n setTimeout(() => setStartupData(attempt + 1), 500);\n }\n };\n setTimeout(() => setStartupData(), 500);\n\n if (client.requestLogger.config.captureLogs) {\n patchConsole(logsContext);\n patchWinston(logsContext);\n }\n\n const handleResponse = async (\n event: H3Event,\n response?: Response,\n error?: HTTPError,\n ) => {\n if (event.req.method.toUpperCase() === \"OPTIONS\") {\n return response;\n }\n\n const startTime = event.context[REQUEST_TIMESTAMP_SYMBOL];\n const path = event.context.matchedRoute?.route;\n\n const consumer = getConsumer(event);\n client.consumerRegistry.addOrUpdateConsumer(consumer);\n\n if (!response) {\n response = new Response(null, {\n status: error?.status || 500,\n statusText: error?.statusText || \"Internal Server Error\",\n headers: error?.headers\n ? mergeHeaders(jsonHeaders, error.headers)\n : jsonHeaders,\n });\n }\n\n const [newResponse, responsePromise] = captureResponse(response, {\n captureBody:\n client.requestLogger.enabled &&\n client.requestLogger.config.logResponseBody,\n maxBodySize: client.requestLogger.maxBodySize,\n });\n\n responsePromise.then(async (capturedResponse) => {\n const responseTime = startTime ? performance.now() - startTime : 0;\n\n const spanHandle = event.context[SPAN_HANDLE_SYMBOL];\n spanHandle?.setName(`${event.req.method} ${path}`);\n const spans = spanHandle?.end();\n const traceId = spanHandle?.traceId;\n\n const responseSize = capturedResponse.completed\n ? capturedResponse.size\n : undefined;\n const requestSize = parseContentLength(\n event.req.headers.get(\"content-length\"),\n );\n\n if (path) {\n client.requestCounter.addRequest({\n consumer: consumer?.identifier,\n method: event.req.method,\n path,\n statusCode: response.status,\n responseTime,\n requestSize,\n responseSize,\n });\n }\n\n if (client.requestLogger.enabled) {\n const logs = logsContext.getStore();\n client.requestLogger.logRequest(\n {\n timestamp: (Date.now() - responseTime) / 1000,\n method: event.req.method,\n path,\n url: event.req.url,\n headers: convertHeaders(\n Object.fromEntries(event.req.headers.entries()),\n ),\n size: requestSize,\n consumer: consumer?.identifier,\n body: event.context[REQUEST_BODY_SYMBOL],\n },\n {\n statusCode: response.status,\n responseTime: responseTime / 1000,\n headers: convertHeaders(\n Object.fromEntries(response.headers.entries()),\n ),\n size: responseSize,\n body: capturedResponse.body,\n },\n error?.cause instanceof Error ? error.cause : undefined,\n logs,\n spans,\n traceId,\n );\n }\n });\n\n if (\n path &&\n error?.status === 400 &&\n error.data &&\n Array.isArray((error.data as any).issues)\n ) {\n const issues = (error.data as any).issues as ZodError[\"issues\"];\n issues.forEach((issue) => {\n client.validationErrorCounter.addValidationError({\n consumer: consumer?.identifier,\n method: event.req.method,\n path,\n loc: issue.path.join(\".\"),\n msg: issue.message,\n type: issue.code,\n });\n });\n }\n\n if (path && error?.status === 500 && error.cause instanceof Error) {\n client.serverErrorCounter.addServerError({\n consumer: consumer?.identifier,\n method: event.req.method,\n path,\n type: error.cause.name,\n msg: error.cause.message,\n traceback: error.cause.stack || \"\",\n });\n }\n\n return newResponse;\n };\n\n app\n .use(\n onRequest(async (event) => {\n logsContext.enterWith([]);\n event.context[REQUEST_TIMESTAMP_SYMBOL] = performance.now();\n\n const spanHandle = client.spanCollector.startSpan();\n event.context[SPAN_HANDLE_SYMBOL] = spanHandle;\n spanHandle.enterContext();\n\n const requestContentType = event.req.headers.get(\"content-type\");\n const requestSize =\n parseContentLength(event.req.headers.get(\"content-length\")) ?? 0;\n\n if (\n client.requestLogger.enabled &&\n client.requestLogger.config.logRequestBody &&\n client.requestLogger.isSupportedContentType(requestContentType) &&\n requestSize <= client.requestLogger.maxBodySize\n ) {\n const clonedRequest = event.req.clone();\n const requestBody = Buffer.from(await clonedRequest.arrayBuffer());\n event.context[REQUEST_BODY_SYMBOL] = requestBody;\n }\n }),\n )\n .use(\n onResponse((response, event) => {\n if (client.isEnabled()) {\n return handleResponse(event, response, undefined);\n }\n }),\n )\n .use(\n onError((error, event) => {\n if (client.isEnabled()) {\n handleResponse(event, undefined, error);\n }\n }),\n );\n});\n\nexport function setConsumer(\n event: H3Event,\n consumer: ApitallyConsumer | string | null | undefined,\n) {\n event.context.apitallyConsumer = consumer || undefined;\n}\n\nfunction getConsumer(event: H3Event) {\n const consumer = event.context.apitallyConsumer;\n if (consumer) {\n return consumerFromStringOrObject(consumer);\n }\n return null;\n}\n"],"mappings":"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","names":["REQUEST_TIMESTAMP_SYMBOL","Symbol","REQUEST_BODY_SYMBOL","SPAN_HANDLE_SYMBOL","jsonHeaders","Headers","apitallyPlugin","definePlugin","app","config","client","ApitallyClient","logsContext","AsyncLocalStorage","setStartupData","attempt","appInfo","getAppInfo","appVersion","paths","length","startSync","setTimeout","requestLogger","captureLogs","patchConsole","patchWinston","handleResponse","event","response","error","req","method","toUpperCase","startTime","context","path","matchedRoute","route","consumer","getConsumer","consumerRegistry","addOrUpdateConsumer","Response","status","statusText","headers","mergeHeaders","newResponse","responsePromise","captureResponse","captureBody","enabled","logResponseBody","maxBodySize","then","capturedResponse","responseTime","performance","now","spanHandle","setName","spans","end","traceId","responseSize","completed","size","undefined","requestSize","parseContentLength","get","requestCounter","addRequest","identifier","statusCode","logs","getStore","logRequest","timestamp","Date","url","convertHeaders","Object","fromEntries","entries","body","cause","Error","data","Array","isArray","issues","forEach","issue","validationErrorCounter","addValidationError","loc","join","msg","message","type","code","serverErrorCounter","addServerError","name","traceback","stack","use","onRequest","enterWith","spanCollector","startSpan","enterContext","requestContentType","logRequestBody","isSupportedContentType","clonedRequest","clone","requestBody","Buffer","from","arrayBuffer","onResponse","isEnabled","onError","setConsumer","apitallyConsumer","consumerFromStringOrObject"]}
@@ -1,27 +0,0 @@
1
- import { ApitallyConsumer, ApitallyConfig } from '../common/types.cjs';
2
- import * as h3 from 'h3';
3
- import { H3Event } from 'h3';
4
- import { SpanHandle } from '../common/spanCollector.cjs';
5
- import '../common/logging.cjs';
6
- import 'winston';
7
- import '../common/requestLogger.cjs';
8
- import 'node:buffer';
9
- import 'node:http';
10
- import '../common/tempGzipFile.cjs';
11
- import '@opentelemetry/sdk-trace-base';
12
-
13
- declare const REQUEST_TIMESTAMP_SYMBOL: unique symbol;
14
- declare const REQUEST_BODY_SYMBOL: unique symbol;
15
- declare const SPAN_HANDLE_SYMBOL: unique symbol;
16
- declare module "h3" {
17
- interface H3EventContext {
18
- apitallyConsumer?: ApitallyConsumer | string;
19
- [REQUEST_TIMESTAMP_SYMBOL]?: number;
20
- [REQUEST_BODY_SYMBOL]?: Buffer;
21
- [SPAN_HANDLE_SYMBOL]?: SpanHandle;
22
- }
23
- }
24
- declare const apitallyPlugin: (options: ApitallyConfig) => h3.H3Plugin;
25
- declare function setConsumer(event: H3Event, consumer: ApitallyConsumer | string | null | undefined): void;
26
-
27
- export { apitallyPlugin, setConsumer };
@@ -1,27 +0,0 @@
1
- import { ApitallyConsumer, ApitallyConfig } from '../common/types.js';
2
- import * as h3 from 'h3';
3
- import { H3Event } from 'h3';
4
- import { SpanHandle } from '../common/spanCollector.js';
5
- import '../common/logging.js';
6
- import 'winston';
7
- import '../common/requestLogger.js';
8
- import 'node:buffer';
9
- import 'node:http';
10
- import '../common/tempGzipFile.js';
11
- import '@opentelemetry/sdk-trace-base';
12
-
13
- declare const REQUEST_TIMESTAMP_SYMBOL: unique symbol;
14
- declare const REQUEST_BODY_SYMBOL: unique symbol;
15
- declare const SPAN_HANDLE_SYMBOL: unique symbol;
16
- declare module "h3" {
17
- interface H3EventContext {
18
- apitallyConsumer?: ApitallyConsumer | string;
19
- [REQUEST_TIMESTAMP_SYMBOL]?: number;
20
- [REQUEST_BODY_SYMBOL]?: Buffer;
21
- [SPAN_HANDLE_SYMBOL]?: SpanHandle;
22
- }
23
- }
24
- declare const apitallyPlugin: (options: ApitallyConfig) => h3.H3Plugin;
25
- declare function setConsumer(event: H3Event, consumer: ApitallyConsumer | string | null | undefined): void;
26
-
27
- export { apitallyPlugin, setConsumer };
package/dist/h3/plugin.js DELETED
@@ -1,159 +0,0 @@
1
- var __defProp = Object.defineProperty;
2
- var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
3
- import { definePlugin, onError, onRequest, onResponse } from "h3";
4
- import { AsyncLocalStorage } from "node:async_hooks";
5
- import { performance } from "node:perf_hooks";
6
- import { ApitallyClient } from "../common/client.js";
7
- import { consumerFromStringOrObject } from "../common/consumerRegistry.js";
8
- import { mergeHeaders, parseContentLength } from "../common/headers.js";
9
- import { convertHeaders } from "../common/requestLogger.js";
10
- import { captureResponse } from "../common/response.js";
11
- import { patchConsole, patchWinston } from "../loggers/index.js";
12
- import { getAppInfo } from "./utils.js";
13
- const REQUEST_TIMESTAMP_SYMBOL = /* @__PURE__ */ Symbol("apitally.requestTimestamp");
14
- const REQUEST_BODY_SYMBOL = /* @__PURE__ */ Symbol("apitally.requestBody");
15
- const SPAN_HANDLE_SYMBOL = /* @__PURE__ */ Symbol("apitally.spanHandle");
16
- const jsonHeaders = new Headers({
17
- "content-type": "application/json;charset=UTF-8"
18
- });
19
- const apitallyPlugin = definePlugin((app, config) => {
20
- const client = new ApitallyClient(config);
21
- const logsContext = new AsyncLocalStorage();
22
- const setStartupData = /* @__PURE__ */ __name((attempt = 1) => {
23
- const appInfo = getAppInfo(app, config.appVersion);
24
- if (appInfo.paths.length > 0 || attempt >= 10) {
25
- client.setStartupData(appInfo);
26
- client.startSync();
27
- } else {
28
- setTimeout(() => setStartupData(attempt + 1), 500);
29
- }
30
- }, "setStartupData");
31
- setTimeout(() => setStartupData(), 500);
32
- if (client.requestLogger.config.captureLogs) {
33
- patchConsole(logsContext);
34
- patchWinston(logsContext);
35
- }
36
- const handleResponse = /* @__PURE__ */ __name(async (event, response, error) => {
37
- var _a;
38
- if (event.req.method.toUpperCase() === "OPTIONS") {
39
- return response;
40
- }
41
- const startTime = event.context[REQUEST_TIMESTAMP_SYMBOL];
42
- const path = (_a = event.context.matchedRoute) == null ? void 0 : _a.route;
43
- const consumer = getConsumer(event);
44
- client.consumerRegistry.addOrUpdateConsumer(consumer);
45
- if (!response) {
46
- response = new Response(null, {
47
- status: (error == null ? void 0 : error.status) || 500,
48
- statusText: (error == null ? void 0 : error.statusText) || "Internal Server Error",
49
- headers: (error == null ? void 0 : error.headers) ? mergeHeaders(jsonHeaders, error.headers) : jsonHeaders
50
- });
51
- }
52
- const [newResponse, responsePromise] = captureResponse(response, {
53
- captureBody: client.requestLogger.enabled && client.requestLogger.config.logResponseBody,
54
- maxBodySize: client.requestLogger.maxBodySize
55
- });
56
- responsePromise.then(async (capturedResponse) => {
57
- const responseTime = startTime ? performance.now() - startTime : 0;
58
- const spanHandle = event.context[SPAN_HANDLE_SYMBOL];
59
- spanHandle == null ? void 0 : spanHandle.setName(`${event.req.method} ${path}`);
60
- const spans = spanHandle == null ? void 0 : spanHandle.end();
61
- const traceId = spanHandle == null ? void 0 : spanHandle.traceId;
62
- const responseSize = capturedResponse.completed ? capturedResponse.size : void 0;
63
- const requestSize = parseContentLength(event.req.headers.get("content-length"));
64
- if (path) {
65
- client.requestCounter.addRequest({
66
- consumer: consumer == null ? void 0 : consumer.identifier,
67
- method: event.req.method,
68
- path,
69
- statusCode: response.status,
70
- responseTime,
71
- requestSize,
72
- responseSize
73
- });
74
- }
75
- if (client.requestLogger.enabled) {
76
- const logs = logsContext.getStore();
77
- client.requestLogger.logRequest({
78
- timestamp: (Date.now() - responseTime) / 1e3,
79
- method: event.req.method,
80
- path,
81
- url: event.req.url,
82
- headers: convertHeaders(Object.fromEntries(event.req.headers.entries())),
83
- size: requestSize,
84
- consumer: consumer == null ? void 0 : consumer.identifier,
85
- body: event.context[REQUEST_BODY_SYMBOL]
86
- }, {
87
- statusCode: response.status,
88
- responseTime: responseTime / 1e3,
89
- headers: convertHeaders(Object.fromEntries(response.headers.entries())),
90
- size: responseSize,
91
- body: capturedResponse.body
92
- }, (error == null ? void 0 : error.cause) instanceof Error ? error.cause : void 0, logs, spans, traceId);
93
- }
94
- });
95
- if (path && (error == null ? void 0 : error.status) === 400 && error.data && Array.isArray(error.data.issues)) {
96
- const issues = error.data.issues;
97
- issues.forEach((issue) => {
98
- client.validationErrorCounter.addValidationError({
99
- consumer: consumer == null ? void 0 : consumer.identifier,
100
- method: event.req.method,
101
- path,
102
- loc: issue.path.join("."),
103
- msg: issue.message,
104
- type: issue.code
105
- });
106
- });
107
- }
108
- if (path && (error == null ? void 0 : error.status) === 500 && error.cause instanceof Error) {
109
- client.serverErrorCounter.addServerError({
110
- consumer: consumer == null ? void 0 : consumer.identifier,
111
- method: event.req.method,
112
- path,
113
- type: error.cause.name,
114
- msg: error.cause.message,
115
- traceback: error.cause.stack || ""
116
- });
117
- }
118
- return newResponse;
119
- }, "handleResponse");
120
- app.use(onRequest(async (event) => {
121
- logsContext.enterWith([]);
122
- event.context[REQUEST_TIMESTAMP_SYMBOL] = performance.now();
123
- const spanHandle = client.spanCollector.startSpan();
124
- event.context[SPAN_HANDLE_SYMBOL] = spanHandle;
125
- spanHandle.enterContext();
126
- const requestContentType = event.req.headers.get("content-type");
127
- const requestSize = parseContentLength(event.req.headers.get("content-length")) ?? 0;
128
- if (client.requestLogger.enabled && client.requestLogger.config.logRequestBody && client.requestLogger.isSupportedContentType(requestContentType) && requestSize <= client.requestLogger.maxBodySize) {
129
- const clonedRequest = event.req.clone();
130
- const requestBody = Buffer.from(await clonedRequest.arrayBuffer());
131
- event.context[REQUEST_BODY_SYMBOL] = requestBody;
132
- }
133
- })).use(onResponse((response, event) => {
134
- if (client.isEnabled()) {
135
- return handleResponse(event, response, void 0);
136
- }
137
- })).use(onError((error, event) => {
138
- if (client.isEnabled()) {
139
- handleResponse(event, void 0, error);
140
- }
141
- }));
142
- });
143
- function setConsumer(event, consumer) {
144
- event.context.apitallyConsumer = consumer || void 0;
145
- }
146
- __name(setConsumer, "setConsumer");
147
- function getConsumer(event) {
148
- const consumer = event.context.apitallyConsumer;
149
- if (consumer) {
150
- return consumerFromStringOrObject(consumer);
151
- }
152
- return null;
153
- }
154
- __name(getConsumer, "getConsumer");
155
- export {
156
- apitallyPlugin,
157
- setConsumer
158
- };
159
- //# sourceMappingURL=plugin.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/h3/plugin.ts"],"sourcesContent":["import type { H3Event, HTTPError } from \"h3\";\nimport { definePlugin, onError, onRequest, onResponse } from \"h3\";\nimport { AsyncLocalStorage } from \"node:async_hooks\";\nimport { performance } from \"node:perf_hooks\";\nimport type { ZodError } from \"zod\";\n\nimport { ApitallyClient } from \"../common/client.js\";\nimport { consumerFromStringOrObject } from \"../common/consumerRegistry.js\";\nimport { mergeHeaders, parseContentLength } from \"../common/headers.js\";\nimport type { LogRecord } from \"../common/requestLogger.js\";\nimport { convertHeaders } from \"../common/requestLogger.js\";\nimport { captureResponse } from \"../common/response.js\";\nimport type { SpanHandle } from \"../common/spanCollector.js\";\nimport { ApitallyConfig, ApitallyConsumer } from \"../common/types.js\";\nimport { patchConsole, patchWinston } from \"../loggers/index.js\";\nimport { getAppInfo } from \"./utils.js\";\n\nconst REQUEST_TIMESTAMP_SYMBOL = Symbol(\"apitally.requestTimestamp\");\nconst REQUEST_BODY_SYMBOL = Symbol(\"apitally.requestBody\");\nconst SPAN_HANDLE_SYMBOL = Symbol(\"apitally.spanHandle\");\n\ndeclare module \"h3\" {\n interface H3EventContext {\n apitallyConsumer?: ApitallyConsumer | string;\n\n [REQUEST_TIMESTAMP_SYMBOL]?: number;\n [REQUEST_BODY_SYMBOL]?: Buffer;\n [SPAN_HANDLE_SYMBOL]?: SpanHandle;\n }\n}\n\nconst jsonHeaders = new Headers({\n \"content-type\": \"application/json;charset=UTF-8\",\n});\n\nexport const apitallyPlugin = definePlugin<ApitallyConfig>((app, config) => {\n const client = new ApitallyClient(config);\n const logsContext = new AsyncLocalStorage<LogRecord[]>();\n\n const setStartupData = (attempt: number = 1) => {\n const appInfo = getAppInfo(app, config.appVersion);\n if (appInfo.paths.length > 0 || attempt >= 10) {\n client.setStartupData(appInfo);\n client.startSync();\n } else {\n setTimeout(() => setStartupData(attempt + 1), 500);\n }\n };\n setTimeout(() => setStartupData(), 500);\n\n if (client.requestLogger.config.captureLogs) {\n patchConsole(logsContext);\n patchWinston(logsContext);\n }\n\n const handleResponse = async (\n event: H3Event,\n response?: Response,\n error?: HTTPError,\n ) => {\n if (event.req.method.toUpperCase() === \"OPTIONS\") {\n return response;\n }\n\n const startTime = event.context[REQUEST_TIMESTAMP_SYMBOL];\n const path = event.context.matchedRoute?.route;\n\n const consumer = getConsumer(event);\n client.consumerRegistry.addOrUpdateConsumer(consumer);\n\n if (!response) {\n response = new Response(null, {\n status: error?.status || 500,\n statusText: error?.statusText || \"Internal Server Error\",\n headers: error?.headers\n ? mergeHeaders(jsonHeaders, error.headers)\n : jsonHeaders,\n });\n }\n\n const [newResponse, responsePromise] = captureResponse(response, {\n captureBody:\n client.requestLogger.enabled &&\n client.requestLogger.config.logResponseBody,\n maxBodySize: client.requestLogger.maxBodySize,\n });\n\n responsePromise.then(async (capturedResponse) => {\n const responseTime = startTime ? performance.now() - startTime : 0;\n\n const spanHandle = event.context[SPAN_HANDLE_SYMBOL];\n spanHandle?.setName(`${event.req.method} ${path}`);\n const spans = spanHandle?.end();\n const traceId = spanHandle?.traceId;\n\n const responseSize = capturedResponse.completed\n ? capturedResponse.size\n : undefined;\n const requestSize = parseContentLength(\n event.req.headers.get(\"content-length\"),\n );\n\n if (path) {\n client.requestCounter.addRequest({\n consumer: consumer?.identifier,\n method: event.req.method,\n path,\n statusCode: response.status,\n responseTime,\n requestSize,\n responseSize,\n });\n }\n\n if (client.requestLogger.enabled) {\n const logs = logsContext.getStore();\n client.requestLogger.logRequest(\n {\n timestamp: (Date.now() - responseTime) / 1000,\n method: event.req.method,\n path,\n url: event.req.url,\n headers: convertHeaders(\n Object.fromEntries(event.req.headers.entries()),\n ),\n size: requestSize,\n consumer: consumer?.identifier,\n body: event.context[REQUEST_BODY_SYMBOL],\n },\n {\n statusCode: response.status,\n responseTime: responseTime / 1000,\n headers: convertHeaders(\n Object.fromEntries(response.headers.entries()),\n ),\n size: responseSize,\n body: capturedResponse.body,\n },\n error?.cause instanceof Error ? error.cause : undefined,\n logs,\n spans,\n traceId,\n );\n }\n });\n\n if (\n path &&\n error?.status === 400 &&\n error.data &&\n Array.isArray((error.data as any).issues)\n ) {\n const issues = (error.data as any).issues as ZodError[\"issues\"];\n issues.forEach((issue) => {\n client.validationErrorCounter.addValidationError({\n consumer: consumer?.identifier,\n method: event.req.method,\n path,\n loc: issue.path.join(\".\"),\n msg: issue.message,\n type: issue.code,\n });\n });\n }\n\n if (path && error?.status === 500 && error.cause instanceof Error) {\n client.serverErrorCounter.addServerError({\n consumer: consumer?.identifier,\n method: event.req.method,\n path,\n type: error.cause.name,\n msg: error.cause.message,\n traceback: error.cause.stack || \"\",\n });\n }\n\n return newResponse;\n };\n\n app\n .use(\n onRequest(async (event) => {\n logsContext.enterWith([]);\n event.context[REQUEST_TIMESTAMP_SYMBOL] = performance.now();\n\n const spanHandle = client.spanCollector.startSpan();\n event.context[SPAN_HANDLE_SYMBOL] = spanHandle;\n spanHandle.enterContext();\n\n const requestContentType = event.req.headers.get(\"content-type\");\n const requestSize =\n parseContentLength(event.req.headers.get(\"content-length\")) ?? 0;\n\n if (\n client.requestLogger.enabled &&\n client.requestLogger.config.logRequestBody &&\n client.requestLogger.isSupportedContentType(requestContentType) &&\n requestSize <= client.requestLogger.maxBodySize\n ) {\n const clonedRequest = event.req.clone();\n const requestBody = Buffer.from(await clonedRequest.arrayBuffer());\n event.context[REQUEST_BODY_SYMBOL] = requestBody;\n }\n }),\n )\n .use(\n onResponse((response, event) => {\n if (client.isEnabled()) {\n return handleResponse(event, response, undefined);\n }\n }),\n )\n .use(\n onError((error, event) => {\n if (client.isEnabled()) {\n handleResponse(event, undefined, error);\n }\n }),\n );\n});\n\nexport function setConsumer(\n event: H3Event,\n consumer: ApitallyConsumer | string | null | undefined,\n) {\n event.context.apitallyConsumer = consumer || undefined;\n}\n\nfunction getConsumer(event: H3Event) {\n const consumer = event.context.apitallyConsumer;\n if (consumer) {\n return consumerFromStringOrObject(consumer);\n }\n return null;\n}\n"],"mappings":"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","names":["definePlugin","onError","onRequest","onResponse","AsyncLocalStorage","performance","ApitallyClient","consumerFromStringOrObject","mergeHeaders","parseContentLength","convertHeaders","captureResponse","patchConsole","patchWinston","getAppInfo","REQUEST_TIMESTAMP_SYMBOL","Symbol","REQUEST_BODY_SYMBOL","SPAN_HANDLE_SYMBOL","jsonHeaders","Headers","apitallyPlugin","app","config","client","logsContext","setStartupData","attempt","appInfo","appVersion","paths","length","startSync","setTimeout","requestLogger","captureLogs","handleResponse","event","response","error","req","method","toUpperCase","startTime","context","path","matchedRoute","route","consumer","getConsumer","consumerRegistry","addOrUpdateConsumer","Response","status","statusText","headers","newResponse","responsePromise","captureBody","enabled","logResponseBody","maxBodySize","then","capturedResponse","responseTime","now","spanHandle","setName","spans","end","traceId","responseSize","completed","size","undefined","requestSize","get","requestCounter","addRequest","identifier","statusCode","logs","getStore","logRequest","timestamp","Date","url","Object","fromEntries","entries","body","cause","Error","data","Array","isArray","issues","forEach","issue","validationErrorCounter","addValidationError","loc","join","msg","message","type","code","serverErrorCounter","addServerError","name","traceback","stack","use","enterWith","spanCollector","startSpan","enterContext","requestContentType","logRequestBody","isSupportedContentType","clonedRequest","clone","requestBody","Buffer","from","arrayBuffer","isEnabled","setConsumer","apitallyConsumer"]}
package/dist/h3/utils.cjs DELETED
@@ -1,77 +0,0 @@
1
- "use strict";
2
- var __defProp = Object.defineProperty;
3
- var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
- var __getOwnPropNames = Object.getOwnPropertyNames;
5
- var __hasOwnProp = Object.prototype.hasOwnProperty;
6
- var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
7
- var __export = (target, all) => {
8
- for (var name in all)
9
- __defProp(target, name, { get: all[name], enumerable: true });
10
- };
11
- var __copyProps = (to, from, except, desc) => {
12
- if (from && typeof from === "object" || typeof from === "function") {
13
- for (let key of __getOwnPropNames(from))
14
- if (!__hasOwnProp.call(to, key) && key !== except)
15
- __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
16
- }
17
- return to;
18
- };
19
- var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
20
- var utils_exports = {};
21
- __export(utils_exports, {
22
- getAppInfo: () => getAppInfo
23
- });
24
- module.exports = __toCommonJS(utils_exports);
25
- var import_packageVersions = require('../common/packageVersions.cjs');
26
- function getAppInfo(h3, appVersion) {
27
- const versions = [];
28
- if (process.versions.node) {
29
- versions.push([
30
- "nodejs",
31
- process.versions.node
32
- ]);
33
- }
34
- if (process.versions.bun) {
35
- versions.push([
36
- "bun",
37
- process.versions.bun
38
- ]);
39
- }
40
- const h3Version = (0, import_packageVersions.getPackageVersion)("h3");
41
- const apitallyVersion = (0, import_packageVersions.getPackageVersion)("../..");
42
- if (h3Version) {
43
- versions.push([
44
- "h3",
45
- h3Version
46
- ]);
47
- }
48
- if (apitallyVersion) {
49
- versions.push([
50
- "apitally",
51
- apitallyVersion
52
- ]);
53
- }
54
- if (appVersion) {
55
- versions.push([
56
- "app",
57
- appVersion
58
- ]);
59
- }
60
- return {
61
- paths: h3["~routes"].map((route) => ({
62
- method: route.method || "",
63
- path: route.route || ""
64
- })).filter((route) => route.method && route.path && ![
65
- "HEAD",
66
- "OPTIONS"
67
- ].includes(route.method.toUpperCase())),
68
- versions: Object.fromEntries(versions),
69
- client: "js:h3"
70
- };
71
- }
72
- __name(getAppInfo, "getAppInfo");
73
- // Annotate the CommonJS export names for ESM import in node:
74
- 0 && (module.exports = {
75
- getAppInfo
76
- });
77
- //# sourceMappingURL=utils.cjs.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/h3/utils.ts"],"sourcesContent":["import { H3Core } from \"h3\";\n\nimport { getPackageVersion } from \"../common/packageVersions.js\";\n\nexport function getAppInfo(h3: H3Core, appVersion?: string) {\n const versions: Array<[string, string]> = [];\n if (process.versions.node) {\n versions.push([\"nodejs\", process.versions.node]);\n }\n if (process.versions.bun) {\n versions.push([\"bun\", process.versions.bun]);\n }\n const h3Version = getPackageVersion(\"h3\");\n const apitallyVersion = getPackageVersion(\"../..\");\n if (h3Version) {\n versions.push([\"h3\", h3Version]);\n }\n if (apitallyVersion) {\n versions.push([\"apitally\", apitallyVersion]);\n }\n if (appVersion) {\n versions.push([\"app\", appVersion]);\n }\n\n return {\n paths: h3[\"~routes\"]\n .map((route) => ({\n method: route.method || \"\",\n path: route.route || \"\",\n }))\n .filter(\n (route) =>\n route.method &&\n route.path &&\n ![\"HEAD\", \"OPTIONS\"].includes(route.method.toUpperCase()),\n ),\n versions: Object.fromEntries(versions),\n client: \"js:h3\",\n };\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;AAEA;;;;;AAAA,6BAAkC;AAE3B,SAASA,WAAWC,IAAYC,YAAmB;AACxD,QAAMC,WAAoC,CAAA;AAC1C,MAAIC,QAAQD,SAASE,MAAM;AACzBF,aAASG,KAAK;MAAC;MAAUF,QAAQD,SAASE;KAAK;EACjD;AACA,MAAID,QAAQD,SAASI,KAAK;AACxBJ,aAASG,KAAK;MAAC;MAAOF,QAAQD,SAASI;KAAI;EAC7C;AACA,QAAMC,gBAAYC,0CAAkB,IAAA;AACpC,QAAMC,sBAAkBD,0CAAkB,OAAA;AAC1C,MAAID,WAAW;AACbL,aAASG,KAAK;MAAC;MAAME;KAAU;EACjC;AACA,MAAIE,iBAAiB;AACnBP,aAASG,KAAK;MAAC;MAAYI;KAAgB;EAC7C;AACA,MAAIR,YAAY;AACdC,aAASG,KAAK;MAAC;MAAOJ;KAAW;EACnC;AAEA,SAAO;IACLS,OAAOV,GAAG,SAAA,EACPW,IAAI,CAACC,WAAW;MACfC,QAAQD,MAAMC,UAAU;MACxBC,MAAMF,MAAMA,SAAS;IACvB,EAAA,EACCG,OACC,CAACH,UACCA,MAAMC,UACND,MAAME,QACN,CAAC;MAAC;MAAQ;MAAWE,SAASJ,MAAMC,OAAOI,YAAW,CAAA,CAAA;IAE5Df,UAAUgB,OAAOC,YAAYjB,QAAAA;IAC7BkB,QAAQ;EACV;AACF;AAnCgBrB;","names":["getAppInfo","h3","appVersion","versions","process","node","push","bun","h3Version","getPackageVersion","apitallyVersion","paths","map","route","method","path","filter","includes","toUpperCase","Object","fromEntries","client"]}
@@ -1,14 +0,0 @@
1
- import { H3Core } from 'h3';
2
-
3
- declare function getAppInfo(h3: H3Core, appVersion?: string): {
4
- paths: {
5
- method: string;
6
- path: string;
7
- }[];
8
- versions: {
9
- [k: string]: string;
10
- };
11
- client: string;
12
- };
13
-
14
- export { getAppInfo };
@@ -1,14 +0,0 @@
1
- import { H3Core } from 'h3';
2
-
3
- declare function getAppInfo(h3: H3Core, appVersion?: string): {
4
- paths: {
5
- method: string;
6
- path: string;
7
- }[];
8
- versions: {
9
- [k: string]: string;
10
- };
11
- client: string;
12
- };
13
-
14
- export { getAppInfo };
package/dist/h3/utils.js DELETED
@@ -1,54 +0,0 @@
1
- var __defProp = Object.defineProperty;
2
- var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
3
- import { getPackageVersion } from "../common/packageVersions.js";
4
- function getAppInfo(h3, appVersion) {
5
- const versions = [];
6
- if (process.versions.node) {
7
- versions.push([
8
- "nodejs",
9
- process.versions.node
10
- ]);
11
- }
12
- if (process.versions.bun) {
13
- versions.push([
14
- "bun",
15
- process.versions.bun
16
- ]);
17
- }
18
- const h3Version = getPackageVersion("h3");
19
- const apitallyVersion = getPackageVersion("../..");
20
- if (h3Version) {
21
- versions.push([
22
- "h3",
23
- h3Version
24
- ]);
25
- }
26
- if (apitallyVersion) {
27
- versions.push([
28
- "apitally",
29
- apitallyVersion
30
- ]);
31
- }
32
- if (appVersion) {
33
- versions.push([
34
- "app",
35
- appVersion
36
- ]);
37
- }
38
- return {
39
- paths: h3["~routes"].map((route) => ({
40
- method: route.method || "",
41
- path: route.route || ""
42
- })).filter((route) => route.method && route.path && ![
43
- "HEAD",
44
- "OPTIONS"
45
- ].includes(route.method.toUpperCase())),
46
- versions: Object.fromEntries(versions),
47
- client: "js:h3"
48
- };
49
- }
50
- __name(getAppInfo, "getAppInfo");
51
- export {
52
- getAppInfo
53
- };
54
- //# sourceMappingURL=utils.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/h3/utils.ts"],"sourcesContent":["import { H3Core } from \"h3\";\n\nimport { getPackageVersion } from \"../common/packageVersions.js\";\n\nexport function getAppInfo(h3: H3Core, appVersion?: string) {\n const versions: Array<[string, string]> = [];\n if (process.versions.node) {\n versions.push([\"nodejs\", process.versions.node]);\n }\n if (process.versions.bun) {\n versions.push([\"bun\", process.versions.bun]);\n }\n const h3Version = getPackageVersion(\"h3\");\n const apitallyVersion = getPackageVersion(\"../..\");\n if (h3Version) {\n versions.push([\"h3\", h3Version]);\n }\n if (apitallyVersion) {\n versions.push([\"apitally\", apitallyVersion]);\n }\n if (appVersion) {\n versions.push([\"app\", appVersion]);\n }\n\n return {\n paths: h3[\"~routes\"]\n .map((route) => ({\n method: route.method || \"\",\n path: route.route || \"\",\n }))\n .filter(\n (route) =>\n route.method &&\n route.path &&\n ![\"HEAD\", \"OPTIONS\"].includes(route.method.toUpperCase()),\n ),\n versions: Object.fromEntries(versions),\n client: \"js:h3\",\n };\n}\n"],"mappings":";;AAEA,SAASA,yBAAyB;AAE3B,SAASC,WAAWC,IAAYC,YAAmB;AACxD,QAAMC,WAAoC,CAAA;AAC1C,MAAIC,QAAQD,SAASE,MAAM;AACzBF,aAASG,KAAK;MAAC;MAAUF,QAAQD,SAASE;KAAK;EACjD;AACA,MAAID,QAAQD,SAASI,KAAK;AACxBJ,aAASG,KAAK;MAAC;MAAOF,QAAQD,SAASI;KAAI;EAC7C;AACA,QAAMC,YAAYT,kBAAkB,IAAA;AACpC,QAAMU,kBAAkBV,kBAAkB,OAAA;AAC1C,MAAIS,WAAW;AACbL,aAASG,KAAK;MAAC;MAAME;KAAU;EACjC;AACA,MAAIC,iBAAiB;AACnBN,aAASG,KAAK;MAAC;MAAYG;KAAgB;EAC7C;AACA,MAAIP,YAAY;AACdC,aAASG,KAAK;MAAC;MAAOJ;KAAW;EACnC;AAEA,SAAO;IACLQ,OAAOT,GAAG,SAAA,EACPU,IAAI,CAACC,WAAW;MACfC,QAAQD,MAAMC,UAAU;MACxBC,MAAMF,MAAMA,SAAS;IACvB,EAAA,EACCG,OACC,CAACH,UACCA,MAAMC,UACND,MAAME,QACN,CAAC;MAAC;MAAQ;MAAWE,SAASJ,MAAMC,OAAOI,YAAW,CAAA,CAAA;IAE5Dd,UAAUe,OAAOC,YAAYhB,QAAAA;IAC7BiB,QAAQ;EACV;AACF;AAnCgBpB;","names":["getPackageVersion","getAppInfo","h3","appVersion","versions","process","node","push","bun","h3Version","apitallyVersion","paths","map","route","method","path","filter","includes","toUpperCase","Object","fromEntries","client"]}