@contrast/agent-bundle 5.47.0 → 5.48.0

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 (526) hide show
  1. package/node_modules/@contrast/agent/package.json +10 -10
  2. package/node_modules/@contrast/agentify/package.json +14 -14
  3. package/node_modules/@contrast/architecture-components/package.json +4 -4
  4. package/node_modules/@contrast/assess/lib/configuration-analysis/install/apollo-server.js +1 -1
  5. package/node_modules/@contrast/assess/lib/configuration-analysis/install/graphql-yoga.js +1 -1
  6. package/node_modules/@contrast/assess/lib/dataflow/sinks/install/fs.js +8 -15
  7. package/node_modules/@contrast/assess/package.json +11 -11
  8. package/node_modules/@contrast/config/package.json +2 -2
  9. package/node_modules/@contrast/core/package.json +4 -4
  10. package/node_modules/@contrast/deadzones/package.json +4 -4
  11. package/node_modules/@contrast/dep-hooks/lib/export-handler-registry.js +1 -10
  12. package/node_modules/@contrast/dep-hooks/lib/export-hook-descriptor.js +1 -1
  13. package/node_modules/@contrast/dep-hooks/lib/index.d.ts +1 -1
  14. package/node_modules/@contrast/dep-hooks/lib/index.js +1 -1
  15. package/node_modules/@contrast/dep-hooks/lib/package-finder.d.ts +2 -1
  16. package/node_modules/@contrast/dep-hooks/lib/package-finder.js +11 -2
  17. package/node_modules/@contrast/dep-hooks/package.json +3 -3
  18. package/node_modules/@contrast/esm-hooks/package.json +5 -5
  19. package/node_modules/@contrast/instrumentation/package.json +4 -4
  20. package/node_modules/@contrast/library-analysis/lib/install/library-reporting/dep.json +144 -202
  21. package/node_modules/@contrast/library-analysis/package.json +3 -3
  22. package/node_modules/@contrast/logger/package.json +3 -3
  23. package/node_modules/@contrast/metrics/package.json +5 -5
  24. package/node_modules/@contrast/patcher/package.json +2 -2
  25. package/node_modules/@contrast/protect/lib/input-tracing/install/fs.js +0 -8
  26. package/node_modules/@contrast/protect/package.json +10 -10
  27. package/node_modules/@contrast/reporter/package.json +5 -5
  28. package/node_modules/@contrast/rewriter/package.json +4 -4
  29. package/node_modules/@contrast/route-coverage/lib/index.d.ts +2 -0
  30. package/node_modules/@contrast/route-coverage/lib/index.js +2 -1
  31. package/node_modules/@contrast/route-coverage/lib/install/express.js +535 -0
  32. package/node_modules/@contrast/route-coverage/lib/install/fastify/fastify-express.js +71 -0
  33. package/node_modules/@contrast/route-coverage/lib/install/fastify/fastify-middie.js +67 -0
  34. package/node_modules/@contrast/route-coverage/lib/install/{fastify.js → fastify/fastify.js} +12 -12
  35. package/node_modules/@contrast/route-coverage/lib/install/{express → fastify}/index.js +6 -5
  36. package/node_modules/@contrast/route-coverage/lib/install/koa.js +39 -45
  37. package/node_modules/@contrast/route-coverage/lib/utils/route-info.js +26 -1
  38. package/node_modules/@contrast/route-coverage/package.json +7 -7
  39. package/node_modules/@contrast/scopes/package.json +5 -5
  40. package/node_modules/@contrast/sec-obs/package.json +8 -8
  41. package/node_modules/@contrast/sources/package.json +2 -2
  42. package/node_modules/@contrast/telemetry/package.json +4 -4
  43. package/node_modules/@opentelemetry/semantic-conventions/build/esm/experimental_attributes.d.ts +697 -30
  44. package/node_modules/@opentelemetry/semantic-conventions/build/esm/experimental_attributes.js +697 -30
  45. package/node_modules/@opentelemetry/semantic-conventions/build/esm/experimental_attributes.js.map +1 -1
  46. package/node_modules/@opentelemetry/semantic-conventions/build/esm/experimental_events.d.ts +6 -0
  47. package/node_modules/@opentelemetry/semantic-conventions/build/esm/experimental_events.js +6 -0
  48. package/node_modules/@opentelemetry/semantic-conventions/build/esm/experimental_events.js.map +1 -1
  49. package/node_modules/@opentelemetry/semantic-conventions/build/esm/experimental_metrics.d.ts +877 -49
  50. package/node_modules/@opentelemetry/semantic-conventions/build/esm/experimental_metrics.js +877 -49
  51. package/node_modules/@opentelemetry/semantic-conventions/build/esm/experimental_metrics.js.map +1 -1
  52. package/node_modules/@opentelemetry/semantic-conventions/build/esm/stable_attributes.d.ts +13 -4
  53. package/node_modules/@opentelemetry/semantic-conventions/build/esm/stable_attributes.js +13 -4
  54. package/node_modules/@opentelemetry/semantic-conventions/build/esm/stable_attributes.js.map +1 -1
  55. package/node_modules/@opentelemetry/semantic-conventions/build/esm/version.d.ts +1 -1
  56. package/node_modules/@opentelemetry/semantic-conventions/build/esm/version.js +1 -1
  57. package/node_modules/@opentelemetry/semantic-conventions/build/esm/version.js.map +1 -1
  58. package/node_modules/@opentelemetry/semantic-conventions/build/esnext/experimental_attributes.d.ts +697 -30
  59. package/node_modules/@opentelemetry/semantic-conventions/build/esnext/experimental_attributes.js +697 -30
  60. package/node_modules/@opentelemetry/semantic-conventions/build/esnext/experimental_attributes.js.map +1 -1
  61. package/node_modules/@opentelemetry/semantic-conventions/build/esnext/experimental_events.d.ts +6 -0
  62. package/node_modules/@opentelemetry/semantic-conventions/build/esnext/experimental_events.js +6 -0
  63. package/node_modules/@opentelemetry/semantic-conventions/build/esnext/experimental_events.js.map +1 -1
  64. package/node_modules/@opentelemetry/semantic-conventions/build/esnext/experimental_metrics.d.ts +877 -49
  65. package/node_modules/@opentelemetry/semantic-conventions/build/esnext/experimental_metrics.js +877 -49
  66. package/node_modules/@opentelemetry/semantic-conventions/build/esnext/experimental_metrics.js.map +1 -1
  67. package/node_modules/@opentelemetry/semantic-conventions/build/esnext/stable_attributes.d.ts +13 -4
  68. package/node_modules/@opentelemetry/semantic-conventions/build/esnext/stable_attributes.js +13 -4
  69. package/node_modules/@opentelemetry/semantic-conventions/build/esnext/stable_attributes.js.map +1 -1
  70. package/node_modules/@opentelemetry/semantic-conventions/build/esnext/version.d.ts +1 -1
  71. package/node_modules/@opentelemetry/semantic-conventions/build/esnext/version.js +1 -1
  72. package/node_modules/@opentelemetry/semantic-conventions/build/esnext/version.js.map +1 -1
  73. package/node_modules/@opentelemetry/semantic-conventions/build/src/experimental_attributes.d.ts +697 -30
  74. package/node_modules/@opentelemetry/semantic-conventions/build/src/experimental_attributes.js +729 -61
  75. package/node_modules/@opentelemetry/semantic-conventions/build/src/experimental_attributes.js.map +1 -1
  76. package/node_modules/@opentelemetry/semantic-conventions/build/src/experimental_events.d.ts +6 -0
  77. package/node_modules/@opentelemetry/semantic-conventions/build/src/experimental_events.js +7 -1
  78. package/node_modules/@opentelemetry/semantic-conventions/build/src/experimental_events.js.map +1 -1
  79. package/node_modules/@opentelemetry/semantic-conventions/build/src/experimental_metrics.d.ts +877 -49
  80. package/node_modules/@opentelemetry/semantic-conventions/build/src/experimental_metrics.js +886 -56
  81. package/node_modules/@opentelemetry/semantic-conventions/build/src/experimental_metrics.js.map +1 -1
  82. package/node_modules/@opentelemetry/semantic-conventions/build/src/stable_attributes.d.ts +13 -4
  83. package/node_modules/@opentelemetry/semantic-conventions/build/src/stable_attributes.js +13 -4
  84. package/node_modules/@opentelemetry/semantic-conventions/build/src/stable_attributes.js.map +1 -1
  85. package/node_modules/@opentelemetry/semantic-conventions/build/src/version.d.ts +1 -1
  86. package/node_modules/@opentelemetry/semantic-conventions/build/src/version.js +1 -1
  87. package/node_modules/@opentelemetry/semantic-conventions/build/src/version.js.map +1 -1
  88. package/node_modules/@opentelemetry/semantic-conventions/package.json +3 -5
  89. package/node_modules/{pino → @pinojs/redact}/.github/dependabot.yml +1 -1
  90. package/node_modules/@pinojs/redact/.github/workflows/ci.yml +48 -0
  91. package/node_modules/@pinojs/redact/.github/workflows/publish-release.yml +43 -0
  92. package/node_modules/{abort-controller → @pinojs/redact}/LICENSE +1 -1
  93. package/node_modules/@pinojs/redact/README.md +350 -0
  94. package/node_modules/@pinojs/redact/benchmarks/basic.js +184 -0
  95. package/node_modules/@pinojs/redact/eslint.config.js +1 -0
  96. package/node_modules/@pinojs/redact/index.d.ts +52 -0
  97. package/node_modules/@pinojs/redact/index.js +529 -0
  98. package/node_modules/@pinojs/redact/index.test-d.ts +22 -0
  99. package/node_modules/@pinojs/redact/package.json +37 -0
  100. package/node_modules/@pinojs/redact/scripts/sync-version.mjs +20 -0
  101. package/node_modules/@pinojs/redact/test/actual-redact-comparison.test.js +211 -0
  102. package/node_modules/@pinojs/redact/test/index.test.js +824 -0
  103. package/node_modules/@pinojs/redact/test/integration.test.js +390 -0
  104. package/node_modules/@pinojs/redact/test/multiple-wildcards.test.js +227 -0
  105. package/node_modules/@pinojs/redact/test/prototype-pollution.test.js +223 -0
  106. package/node_modules/@pinojs/redact/test/selective-clone.test.js +115 -0
  107. package/node_modules/@pinojs/redact/tsconfig.json +19 -0
  108. package/node_modules/@types/node/README.md +1 -1
  109. package/node_modules/@types/node/console.d.ts +3 -2
  110. package/node_modules/@types/node/package.json +2 -2
  111. package/node_modules/@types/node/process.d.ts +7 -0
  112. package/node_modules/@types/node/sqlite.d.ts +107 -0
  113. package/node_modules/@types/node/url.d.ts +32 -8
  114. package/node_modules/axios/CHANGELOG.md +18 -0
  115. package/node_modules/axios/README.md +1 -4
  116. package/node_modules/axios/dist/axios.js +2 -2
  117. package/node_modules/axios/dist/axios.js.map +1 -1
  118. package/node_modules/axios/dist/axios.min.js +2 -2
  119. package/node_modules/axios/dist/axios.min.js.map +1 -1
  120. package/node_modules/axios/dist/browser/axios.cjs +2 -2
  121. package/node_modules/axios/dist/browser/axios.cjs.map +1 -1
  122. package/node_modules/axios/dist/esm/axios.js +2 -2
  123. package/node_modules/axios/dist/esm/axios.js.map +1 -1
  124. package/node_modules/axios/dist/esm/axios.min.js +2 -2
  125. package/node_modules/axios/dist/esm/axios.min.js.map +1 -1
  126. package/node_modules/axios/dist/node/axios.cjs +25 -20
  127. package/node_modules/axios/dist/node/axios.cjs.map +1 -1
  128. package/node_modules/axios/lib/adapters/http.js +22 -18
  129. package/node_modules/axios/lib/env/data.js +1 -1
  130. package/node_modules/axios/package.json +1 -1
  131. package/node_modules/form-data/CHANGELOG.md +60 -2
  132. package/node_modules/form-data/README.md +4 -4
  133. package/node_modules/form-data/lib/form_data.js +2 -2
  134. package/node_modules/form-data/package.json +4 -4
  135. package/node_modules/ipaddr.js/README.md +1 -0
  136. package/node_modules/ipaddr.js/ipaddr.min.js +1 -1
  137. package/node_modules/ipaddr.js/lib/ipaddr.js +11 -0
  138. package/node_modules/ipaddr.js/lib/ipaddr.js.d.ts +1 -0
  139. package/node_modules/ipaddr.js/package.json +2 -3
  140. package/node_modules/nan/.github/workflows/ci.yml +3 -1
  141. package/node_modules/nan/CHANGELOG.md +4 -1
  142. package/node_modules/nan/README.md +2 -2
  143. package/node_modules/nan/nan.h +25 -15
  144. package/node_modules/nan/nan_maybe_43_inl.h +5 -1
  145. package/node_modules/nan/package.json +2 -2
  146. package/node_modules/node-abi/abi_registry.json +8 -1
  147. package/node_modules/node-abi/package.json +1 -1
  148. package/node_modules/pino/CONTRIBUTING.md +4 -0
  149. package/node_modules/pino/LICENSE +1 -1
  150. package/node_modules/pino/README.md +20 -3
  151. package/node_modules/pino/benchmarks/basic.bench.js +1 -1
  152. package/node_modules/pino/benchmarks/child-child.bench.js +1 -1
  153. package/node_modules/pino/benchmarks/child-creation.bench.js +1 -1
  154. package/node_modules/pino/benchmarks/child.bench.js +1 -1
  155. package/node_modules/pino/benchmarks/deep-object.bench.js +1 -1
  156. package/node_modules/pino/benchmarks/internal/just-pino-heavy.bench.js +1 -1
  157. package/node_modules/pino/benchmarks/internal/just-pino.bench.js +1 -1
  158. package/node_modules/pino/benchmarks/internal/redact.bench.js +1 -1
  159. package/node_modules/pino/benchmarks/long-string.bench.js +1 -1
  160. package/node_modules/pino/benchmarks/multi-arg.bench.js +1 -1
  161. package/node_modules/pino/benchmarks/multistream.js +1 -1
  162. package/node_modules/pino/benchmarks/object.bench.js +1 -1
  163. package/node_modules/pino/benchmarks/utils/generate-benchmark-doc.js +2 -2
  164. package/node_modules/pino/benchmarks/utils/runbench.js +3 -3
  165. package/node_modules/pino/benchmarks/utils/wrap-log-level.js +2 -2
  166. package/node_modules/pino/browser.js +76 -36
  167. package/node_modules/pino/build/sync-version.js +18 -3
  168. package/node_modules/pino/docs/api.md +155 -13
  169. package/node_modules/pino/docs/browser.md +16 -1
  170. package/node_modules/pino/docs/bundling.md +5 -3
  171. package/node_modules/pino/docs/diagnostics.md +16 -0
  172. package/node_modules/pino/docs/ecosystem.md +15 -12
  173. package/node_modules/pino/docs/help.md +29 -3
  174. package/node_modules/pino/docs/lts.md +5 -4
  175. package/node_modules/pino/docs/transports.md +442 -271
  176. package/node_modules/pino/docs/web.md +59 -9
  177. package/node_modules/pino/eslint.config.js +19 -0
  178. package/node_modules/pino/examples/transport.js +2 -2
  179. package/node_modules/pino/file.js +1 -1
  180. package/node_modules/pino/lib/meta.js +1 -1
  181. package/node_modules/pino/lib/multistream.js +17 -2
  182. package/node_modules/pino/lib/proto.js +35 -11
  183. package/node_modules/pino/lib/redaction.js +9 -13
  184. package/node_modules/pino/lib/time.js +29 -1
  185. package/node_modules/pino/lib/tools.js +37 -8
  186. package/node_modules/pino/lib/transport-stream.js +10 -4
  187. package/node_modules/pino/lib/transport.js +23 -9
  188. package/node_modules/pino/lib/worker.js +164 -24
  189. package/node_modules/pino/package.json +28 -27
  190. package/node_modules/pino/pino.d.ts +244 -203
  191. package/node_modules/pino/pino.js +7 -3
  192. package/node_modules/pino/test/basic.test.js +181 -169
  193. package/node_modules/pino/test/broken-pipe.test.js +18 -16
  194. package/node_modules/pino/test/browser-child.test.js +26 -0
  195. package/node_modules/pino/test/browser-is-level-enabled.test.js +101 -0
  196. package/node_modules/pino/test/browser-serializers.test.js +0 -2
  197. package/node_modules/pino/test/browser-transmit.test.js +68 -0
  198. package/node_modules/pino/test/browser.test.js +98 -13
  199. package/node_modules/pino/test/complex-objects.test.js +8 -6
  200. package/node_modules/pino/test/crlf.test.js +7 -5
  201. package/node_modules/pino/test/custom-levels.test.js +80 -66
  202. package/node_modules/pino/test/diagnostics.test.js +107 -0
  203. package/node_modules/pino/test/error-key.test.js +37 -0
  204. package/node_modules/pino/test/error.test.js +48 -43
  205. package/node_modules/pino/test/escaping.test.js +8 -6
  206. package/node_modules/pino/test/esm/esm.mjs +5 -3
  207. package/node_modules/pino/test/esm/index.test.js +14 -27
  208. package/node_modules/pino/test/esm/named-exports.mjs +9 -8
  209. package/node_modules/pino/test/exit.test.js +18 -16
  210. package/node_modules/pino/test/fixtures/broken-pipe/basic.js +1 -1
  211. package/node_modules/pino/test/fixtures/broken-pipe/destination.js +1 -1
  212. package/node_modules/pino/test/fixtures/broken-pipe/syncfalse.js +1 -1
  213. package/node_modules/pino/test/fixtures/console-transport.js +1 -1
  214. package/node_modules/pino/test/fixtures/crashing-transport.js +13 -0
  215. package/node_modules/pino/test/fixtures/default-exit.js +1 -1
  216. package/node_modules/pino/test/fixtures/destination-exit.js +1 -1
  217. package/node_modules/pino/test/fixtures/noop-transport.js +1 -1
  218. package/node_modules/pino/test/fixtures/pretty/null-prototype.js +1 -1
  219. package/node_modules/pino/test/fixtures/stdout-hack-protection.js +1 -1
  220. package/node_modules/pino/test/fixtures/syncfalse-child.js +1 -1
  221. package/node_modules/pino/test/fixtures/syncfalse-exit.js +1 -1
  222. package/node_modules/pino/test/fixtures/syncfalse-flush-exit.js +1 -1
  223. package/node_modules/pino/test/fixtures/syncfalse.js +1 -1
  224. package/node_modules/pino/test/fixtures/syntax-error-esm.mjs +2 -0
  225. package/node_modules/pino/test/fixtures/to-file-transport-with-transform.js +3 -3
  226. package/node_modules/pino/test/fixtures/to-file-transport.js +2 -2
  227. package/node_modules/pino/test/fixtures/to-file-transport.mjs +2 -2
  228. package/node_modules/pino/test/fixtures/transport/index.js +2 -2
  229. package/node_modules/pino/test/fixtures/transport-main.js +1 -1
  230. package/node_modules/pino/test/fixtures/transport-transform.js +1 -1
  231. package/node_modules/pino/test/fixtures/transport-uses-pino-config.js +1 -1
  232. package/node_modules/pino/test/fixtures/transport-worker-data.js +1 -1
  233. package/node_modules/pino/test/fixtures/transport-worker.js +2 -2
  234. package/node_modules/pino/test/fixtures/ts/to-file-transport-with-transform.ts +3 -3
  235. package/node_modules/pino/test/fixtures/ts/to-file-transport.ts +2 -2
  236. package/node_modules/pino/test/fixtures/ts/transpile.cjs +1 -1
  237. package/node_modules/pino/test/fixtures/ts/transport-exit-immediately-with-async-dest.ts +1 -1
  238. package/node_modules/pino/test/fixtures/ts/transport-main.ts +1 -1
  239. package/node_modules/pino/test/fixtures/ts/transport-worker.ts +1 -1
  240. package/node_modules/pino/test/formatters.test.js +46 -37
  241. package/node_modules/pino/test/helper.d.ts +1 -1
  242. package/node_modules/pino/test/helper.js +37 -10
  243. package/node_modules/pino/test/hooks.test.js +45 -28
  244. package/node_modules/pino/test/http.test.js +39 -67
  245. package/node_modules/pino/test/internals/version.test.js +11 -9
  246. package/node_modules/pino/test/is-level-enabled.test.js +66 -72
  247. package/node_modules/pino/test/levels.test.js +245 -141
  248. package/node_modules/pino/test/metadata.test.js +45 -31
  249. package/node_modules/pino/test/mixin-merge-strategy.test.js +9 -7
  250. package/node_modules/pino/test/mixin.test.js +63 -40
  251. package/node_modules/pino/test/multistream.test.js +174 -118
  252. package/node_modules/pino/test/redact.test.js +172 -126
  253. package/node_modules/pino/test/serializers.test.js +61 -57
  254. package/node_modules/pino/test/stdout-protection.test.js +14 -12
  255. package/node_modules/pino/test/syncfalse.test.js +29 -34
  256. package/node_modules/pino/test/timestamp-nano.test.js +37 -0
  257. package/node_modules/pino/test/timestamp.test.js +37 -34
  258. package/node_modules/pino/test/transport/big.test.js +11 -12
  259. package/node_modules/pino/test/transport/bundlers-support.test.js +15 -43
  260. package/node_modules/pino/test/transport/caller.test.js +9 -8
  261. package/node_modules/pino/test/transport/core.test.js +175 -145
  262. package/node_modules/pino/test/transport/core.transpiled.test.ts +17 -19
  263. package/node_modules/pino/test/transport/crash.test.js +36 -0
  264. package/node_modules/pino/test/transport/module-link.test.js +21 -19
  265. package/node_modules/pino/test/transport/pipeline.test.js +109 -8
  266. package/node_modules/pino/test/transport/repl.test.js +4 -3
  267. package/node_modules/pino/test/transport/{syncfalse.test.js → sync-false.test.js} +14 -12
  268. package/node_modules/pino/test/transport/sync-true.test.js +57 -0
  269. package/node_modules/pino/test/transport/targets.test.js +25 -5
  270. package/node_modules/pino/test/transport/uses-pino-config.test.js +16 -17
  271. package/node_modules/pino/test/transport-stream.test.js +40 -0
  272. package/node_modules/pino/test/types/{pino-import.test-d.ts → pino-import.test-d.cts} +4 -3
  273. package/node_modules/pino/test/types/pino-multistream.test-d.ts +1 -1
  274. package/node_modules/pino/test/types/pino-top-export.test-d.ts +1 -0
  275. package/node_modules/pino/test/types/pino-transport.test-d.ts +1 -1
  276. package/node_modules/pino/test/types/pino-type-only.test-d.ts +24 -6
  277. package/node_modules/pino/test/types/pino.test-d.ts +161 -6
  278. package/node_modules/pino/test/types/pino.ts +31 -19
  279. package/node_modules/pino/tsconfig.json +1 -1
  280. package/node_modules/pino-abstract-transport/.github/workflows/ci.yml +2 -4
  281. package/node_modules/pino-abstract-transport/index.js +1 -1
  282. package/node_modules/pino-abstract-transport/package.json +2 -3
  283. package/node_modules/pino-abstract-transport/test/base.test.js +1 -1
  284. package/node_modules/pino-abstract-transport/test/worker.test.js +7 -14
  285. package/node_modules/pino-std-serializers/.github/workflows/ci.yml +5 -5
  286. package/node_modules/pino-std-serializers/Readme.md +1 -0
  287. package/node_modules/pino-std-serializers/package.json +9 -8
  288. package/node_modules/pino-std-serializers/test/err-with-cause.test.js +72 -88
  289. package/node_modules/pino-std-serializers/test/err.test.js +76 -91
  290. package/node_modules/pino-std-serializers/test/req.test.js +142 -98
  291. package/node_modules/pino-std-serializers/test/res.test.js +42 -31
  292. package/node_modules/process-warning/.github/dependabot.yml +1 -1
  293. package/node_modules/process-warning/.github/workflows/ci.yml +1 -2
  294. package/node_modules/process-warning/README.md +4 -4
  295. package/node_modules/process-warning/eslint.config.js +6 -0
  296. package/node_modules/process-warning/package.json +39 -8
  297. package/node_modules/process-warning/test/emit-interpolated-string.test.js +11 -6
  298. package/node_modules/process-warning/test/emit-once-only.test.js +11 -6
  299. package/node_modules/process-warning/test/emit-reset.test.js +10 -6
  300. package/node_modules/process-warning/test/emit-set.test.js +10 -5
  301. package/node_modules/process-warning/test/emit-unlimited.test.js +12 -7
  302. package/node_modules/process-warning/test/index.test.js +20 -20
  303. package/node_modules/process-warning/test/issue-88.test.js +8 -3
  304. package/node_modules/process-warning/test/jest.test.js +17 -15
  305. package/node_modules/process-warning/test/no-warnings.test.js +9 -9
  306. package/node_modules/process-warning/test/promise.js +10 -0
  307. package/node_modules/process-warning/types/index.d.ts +5 -5
  308. package/node_modules/thread-stream/.github/workflows/ci.yml +4 -8
  309. package/node_modules/thread-stream/index.d.ts +4 -5
  310. package/node_modules/thread-stream/lib/worker.js +5 -2
  311. package/node_modules/thread-stream/package.json +6 -4
  312. package/node_modules/thread-stream/test/base.test.js +12 -0
  313. package/node_modules/thread-stream/test/never-drain.test.js +3 -1
  314. package/node_modules/thread-stream/test/pkg/pkg.test.js +2 -0
  315. package/node_modules/thread-stream/test/syntax-error.mjs +2 -0
  316. package/node_modules/thread-stream/tsconfig.json +8 -0
  317. package/node_modules/yaml/browser/dist/compose/compose-collection.js +1 -1
  318. package/node_modules/yaml/browser/dist/compose/resolve-block-seq.js +1 -1
  319. package/node_modules/yaml/browser/dist/compose/resolve-flow-collection.js +2 -2
  320. package/node_modules/yaml/browser/dist/errors.js +1 -1
  321. package/node_modules/yaml/browser/dist/nodes/Alias.js +1 -1
  322. package/node_modules/yaml/browser/dist/parse/parser.js +2 -2
  323. package/node_modules/yaml/browser/dist/stringify/stringifyNumber.js +1 -1
  324. package/node_modules/yaml/browser/dist/stringify/stringifyPair.js +1 -1
  325. package/node_modules/yaml/dist/compose/compose-collection.js +1 -1
  326. package/node_modules/yaml/dist/compose/resolve-block-seq.js +1 -1
  327. package/node_modules/yaml/dist/compose/resolve-flow-collection.js +2 -2
  328. package/node_modules/yaml/dist/errors.js +1 -1
  329. package/node_modules/yaml/dist/nodes/Alias.js +1 -1
  330. package/node_modules/yaml/dist/parse/parser.js +2 -2
  331. package/node_modules/yaml/dist/stringify/stringifyNumber.js +1 -1
  332. package/node_modules/yaml/dist/stringify/stringifyPair.js +1 -1
  333. package/node_modules/yaml/package.json +4 -4
  334. package/package.json +2 -2
  335. package/node_modules/@contrast/route-coverage/lib/install/express/express4.js +0 -157
  336. package/node_modules/@contrast/route-coverage/lib/install/express/express5.js +0 -553
  337. package/node_modules/abort-controller/README.md +0 -98
  338. package/node_modules/abort-controller/browser.js +0 -13
  339. package/node_modules/abort-controller/browser.mjs +0 -11
  340. package/node_modules/abort-controller/dist/abort-controller.d.ts +0 -43
  341. package/node_modules/abort-controller/dist/abort-controller.js +0 -127
  342. package/node_modules/abort-controller/dist/abort-controller.js.map +0 -1
  343. package/node_modules/abort-controller/dist/abort-controller.mjs +0 -118
  344. package/node_modules/abort-controller/dist/abort-controller.mjs.map +0 -1
  345. package/node_modules/abort-controller/dist/abort-controller.umd.js +0 -5
  346. package/node_modules/abort-controller/dist/abort-controller.umd.js.map +0 -1
  347. package/node_modules/abort-controller/package.json +0 -97
  348. package/node_modules/abort-controller/polyfill.js +0 -21
  349. package/node_modules/abort-controller/polyfill.mjs +0 -19
  350. package/node_modules/base64-js/LICENSE +0 -21
  351. package/node_modules/base64-js/README.md +0 -34
  352. package/node_modules/base64-js/base64js.min.js +0 -1
  353. package/node_modules/base64-js/index.d.ts +0 -3
  354. package/node_modules/base64-js/index.js +0 -150
  355. package/node_modules/base64-js/package.json +0 -47
  356. package/node_modules/buffer/AUTHORS.md +0 -73
  357. package/node_modules/buffer/LICENSE +0 -21
  358. package/node_modules/buffer/README.md +0 -410
  359. package/node_modules/buffer/index.d.ts +0 -194
  360. package/node_modules/buffer/index.js +0 -2106
  361. package/node_modules/buffer/package.json +0 -93
  362. package/node_modules/event-target-shim/LICENSE +0 -22
  363. package/node_modules/event-target-shim/README.md +0 -293
  364. package/node_modules/event-target-shim/dist/event-target-shim.js +0 -871
  365. package/node_modules/event-target-shim/dist/event-target-shim.js.map +0 -1
  366. package/node_modules/event-target-shim/dist/event-target-shim.mjs +0 -862
  367. package/node_modules/event-target-shim/dist/event-target-shim.mjs.map +0 -1
  368. package/node_modules/event-target-shim/dist/event-target-shim.umd.js +0 -6
  369. package/node_modules/event-target-shim/dist/event-target-shim.umd.js.map +0 -1
  370. package/node_modules/event-target-shim/index.d.ts +0 -399
  371. package/node_modules/event-target-shim/package.json +0 -82
  372. package/node_modules/events/.airtap.yml +0 -15
  373. package/node_modules/events/.github/FUNDING.yml +0 -12
  374. package/node_modules/events/.travis.yml +0 -18
  375. package/node_modules/events/History.md +0 -118
  376. package/node_modules/events/LICENSE +0 -22
  377. package/node_modules/events/Readme.md +0 -50
  378. package/node_modules/events/events.js +0 -497
  379. package/node_modules/events/package.json +0 -37
  380. package/node_modules/events/security.md +0 -10
  381. package/node_modules/events/tests/add-listeners.js +0 -111
  382. package/node_modules/events/tests/check-listener-leaks.js +0 -101
  383. package/node_modules/events/tests/common.js +0 -104
  384. package/node_modules/events/tests/errors.js +0 -13
  385. package/node_modules/events/tests/events-list.js +0 -28
  386. package/node_modules/events/tests/events-once.js +0 -234
  387. package/node_modules/events/tests/index.js +0 -64
  388. package/node_modules/events/tests/legacy-compat.js +0 -16
  389. package/node_modules/events/tests/listener-count.js +0 -37
  390. package/node_modules/events/tests/listeners-side-effects.js +0 -56
  391. package/node_modules/events/tests/listeners.js +0 -168
  392. package/node_modules/events/tests/max-listeners.js +0 -47
  393. package/node_modules/events/tests/method-names.js +0 -35
  394. package/node_modules/events/tests/modify-in-emit.js +0 -90
  395. package/node_modules/events/tests/num-args.js +0 -60
  396. package/node_modules/events/tests/once.js +0 -83
  397. package/node_modules/events/tests/prepend.js +0 -31
  398. package/node_modules/events/tests/remove-all-listeners.js +0 -133
  399. package/node_modules/events/tests/remove-listeners.js +0 -212
  400. package/node_modules/events/tests/set-max-listeners-side-effects.js +0 -31
  401. package/node_modules/events/tests/special-event-names.js +0 -45
  402. package/node_modules/events/tests/subclass.js +0 -66
  403. package/node_modules/events/tests/symbols.js +0 -25
  404. package/node_modules/fast-redact/.github/workflows/ci.yml +0 -37
  405. package/node_modules/fast-redact/LICENSE +0 -21
  406. package/node_modules/fast-redact/benchmark/index.js +0 -223
  407. package/node_modules/fast-redact/example/default-usage.js +0 -14
  408. package/node_modules/fast-redact/example/intermediate-wildcard-array.js +0 -11
  409. package/node_modules/fast-redact/example/multi-wildcard-array-depth.js +0 -11
  410. package/node_modules/fast-redact/example/multi-wildcard-array-end.js +0 -11
  411. package/node_modules/fast-redact/example/multi-wildcard-array.js +0 -11
  412. package/node_modules/fast-redact/example/serialize-false.js +0 -11
  413. package/node_modules/fast-redact/example/serialize-function.js +0 -4
  414. package/node_modules/fast-redact/example/top-wildcard-object.js +0 -9
  415. package/node_modules/fast-redact/index.js +0 -56
  416. package/node_modules/fast-redact/lib/modifiers.js +0 -291
  417. package/node_modules/fast-redact/lib/parse.js +0 -44
  418. package/node_modules/fast-redact/lib/redactor.js +0 -108
  419. package/node_modules/fast-redact/lib/restorer.js +0 -92
  420. package/node_modules/fast-redact/lib/rx.js +0 -16
  421. package/node_modules/fast-redact/lib/state.js +0 -20
  422. package/node_modules/fast-redact/lib/validator.js +0 -33
  423. package/node_modules/fast-redact/package.json +0 -50
  424. package/node_modules/fast-redact/readme.md +0 -282
  425. package/node_modules/fast-redact/test/index.js +0 -1502
  426. package/node_modules/ieee754/LICENSE +0 -11
  427. package/node_modules/ieee754/README.md +0 -51
  428. package/node_modules/ieee754/index.d.ts +0 -10
  429. package/node_modules/ieee754/index.js +0 -85
  430. package/node_modules/ieee754/package.json +0 -52
  431. package/node_modules/pino/.eslintignore +0 -2
  432. package/node_modules/pino/.eslintrc +0 -8
  433. package/node_modules/pino/.github/workflows/bench.yml +0 -61
  434. package/node_modules/pino/.github/workflows/ci.yml +0 -86
  435. package/node_modules/pino/.github/workflows/lock-threads.yml +0 -30
  436. package/node_modules/pino/.github/workflows/package-manager-ci.yml +0 -99
  437. package/node_modules/pino/.github/workflows/target-main.yml +0 -23
  438. package/node_modules/pino/.taprc.yaml +0 -8
  439. package/node_modules/pino/docsify/sidebar.md +0 -26
  440. package/node_modules/pino/favicon-16x16.png +0 -0
  441. package/node_modules/pino/favicon-32x32.png +0 -0
  442. package/node_modules/pino/lib/worker-pipeline.js +0 -38
  443. package/node_modules/pino/node_modules/sonic-boom/.eslintignore +0 -2
  444. package/node_modules/pino/node_modules/sonic-boom/.husky/pre-commit +0 -4
  445. package/node_modules/pino/node_modules/sonic-boom/.taprc.yaml +0 -11
  446. package/node_modules/pino/node_modules/sonic-boom/LICENSE +0 -21
  447. package/node_modules/pino/node_modules/sonic-boom/README.md +0 -151
  448. package/node_modules/pino/node_modules/sonic-boom/bench.js +0 -98
  449. package/node_modules/pino/node_modules/sonic-boom/check.js +0 -18
  450. package/node_modules/pino/node_modules/sonic-boom/example.js +0 -8
  451. package/node_modules/pino/node_modules/sonic-boom/fixtures/firehose.js +0 -22
  452. package/node_modules/pino/node_modules/sonic-boom/index.js +0 -690
  453. package/node_modules/pino/node_modules/sonic-boom/package.json +0 -50
  454. package/node_modules/pino/node_modules/sonic-boom/test/destroy.test.js +0 -49
  455. package/node_modules/pino/node_modules/sonic-boom/test/end.test.js +0 -98
  456. package/node_modules/pino/node_modules/sonic-boom/test/flush-sync.test.js +0 -140
  457. package/node_modules/pino/node_modules/sonic-boom/test/flush.test.js +0 -419
  458. package/node_modules/pino/node_modules/sonic-boom/test/fsync.test.js +0 -63
  459. package/node_modules/pino/node_modules/sonic-boom/test/helper.js +0 -42
  460. package/node_modules/pino/node_modules/sonic-boom/test/minlength.test.js +0 -35
  461. package/node_modules/pino/node_modules/sonic-boom/test/mode.test.js +0 -116
  462. package/node_modules/pino/node_modules/sonic-boom/test/reopen.test.js +0 -239
  463. package/node_modules/pino/node_modules/sonic-boom/test/retry.test.js +0 -414
  464. package/node_modules/pino/node_modules/sonic-boom/test/sync.test.js +0 -261
  465. package/node_modules/pino/node_modules/sonic-boom/test/write.test.js +0 -465
  466. package/node_modules/pino/node_modules/sonic-boom/types/index.d.ts +0 -62
  467. package/node_modules/pino/node_modules/sonic-boom/types/tests/test.ts +0 -4
  468. package/node_modules/pino/pino-banner.png +0 -0
  469. package/node_modules/pino/pino-logo-hire.png +0 -0
  470. package/node_modules/pino/pino-tree.png +0 -0
  471. package/node_modules/pino/pretty-demo.png +0 -0
  472. package/node_modules/pino/test/errorKey.test.js +0 -34
  473. package/node_modules/pino/test/transport/core.test.ts +0 -236
  474. package/node_modules/pino-std-serializers/.taprc +0 -2
  475. package/node_modules/process/.eslintrc +0 -21
  476. package/node_modules/process/LICENSE +0 -22
  477. package/node_modules/process/README.md +0 -26
  478. package/node_modules/process/browser.js +0 -184
  479. package/node_modules/process/index.js +0 -2
  480. package/node_modules/process/package.json +0 -27
  481. package/node_modules/process/test.js +0 -199
  482. package/node_modules/process-warning/.taprc +0 -2
  483. package/node_modules/readable-stream/LICENSE +0 -47
  484. package/node_modules/readable-stream/README.md +0 -116
  485. package/node_modules/readable-stream/lib/_stream_duplex.js +0 -4
  486. package/node_modules/readable-stream/lib/_stream_passthrough.js +0 -4
  487. package/node_modules/readable-stream/lib/_stream_readable.js +0 -4
  488. package/node_modules/readable-stream/lib/_stream_transform.js +0 -4
  489. package/node_modules/readable-stream/lib/_stream_writable.js +0 -4
  490. package/node_modules/readable-stream/lib/internal/streams/add-abort-signal.js +0 -52
  491. package/node_modules/readable-stream/lib/internal/streams/buffer_list.js +0 -157
  492. package/node_modules/readable-stream/lib/internal/streams/compose.js +0 -194
  493. package/node_modules/readable-stream/lib/internal/streams/destroy.js +0 -290
  494. package/node_modules/readable-stream/lib/internal/streams/duplex.js +0 -143
  495. package/node_modules/readable-stream/lib/internal/streams/duplexify.js +0 -378
  496. package/node_modules/readable-stream/lib/internal/streams/end-of-stream.js +0 -286
  497. package/node_modules/readable-stream/lib/internal/streams/from.js +0 -98
  498. package/node_modules/readable-stream/lib/internal/streams/lazy_transform.js +0 -51
  499. package/node_modules/readable-stream/lib/internal/streams/legacy.js +0 -89
  500. package/node_modules/readable-stream/lib/internal/streams/operators.js +0 -457
  501. package/node_modules/readable-stream/lib/internal/streams/passthrough.js +0 -39
  502. package/node_modules/readable-stream/lib/internal/streams/pipeline.js +0 -471
  503. package/node_modules/readable-stream/lib/internal/streams/readable.js +0 -1290
  504. package/node_modules/readable-stream/lib/internal/streams/state.js +0 -39
  505. package/node_modules/readable-stream/lib/internal/streams/transform.js +0 -180
  506. package/node_modules/readable-stream/lib/internal/streams/utils.js +0 -327
  507. package/node_modules/readable-stream/lib/internal/streams/writable.js +0 -819
  508. package/node_modules/readable-stream/lib/internal/validators.js +0 -530
  509. package/node_modules/readable-stream/lib/ours/browser.js +0 -35
  510. package/node_modules/readable-stream/lib/ours/errors.js +0 -343
  511. package/node_modules/readable-stream/lib/ours/index.js +0 -65
  512. package/node_modules/readable-stream/lib/ours/primordials.js +0 -124
  513. package/node_modules/readable-stream/lib/ours/util/inspect.js +0 -55
  514. package/node_modules/readable-stream/lib/ours/util.js +0 -148
  515. package/node_modules/readable-stream/lib/stream/promises.js +0 -43
  516. package/node_modules/readable-stream/lib/stream.js +0 -143
  517. package/node_modules/readable-stream/package.json +0 -88
  518. package/node_modules/safe-buffer/LICENSE +0 -21
  519. package/node_modules/safe-buffer/README.md +0 -584
  520. package/node_modules/safe-buffer/index.d.ts +0 -187
  521. package/node_modules/safe-buffer/index.js +0 -65
  522. package/node_modules/safe-buffer/package.json +0 -51
  523. package/node_modules/string_decoder/LICENSE +0 -48
  524. package/node_modules/string_decoder/README.md +0 -47
  525. package/node_modules/string_decoder/lib/string_decoder.js +0 -296
  526. package/node_modules/string_decoder/package.json +0 -34
@@ -15,7 +15,7 @@ now referred to as [Legacy Transports](#legacy-transports).
15
15
 
16
16
  From Pino v7 and upwards transports can also operate inside a [Worker Thread][worker-thread]
17
17
  and can be used or configured via the options object passed to `pino` on initialization.
18
- In this case the transports would always operate asynchronously, and logs would be
18
+ In this case the transports would always operate asynchronously (unless `options.sync` is set to `true` in transport options), and logs would be
19
19
  flushed as quickly as possible (there is nothing to do).
20
20
 
21
21
  [worker-thread]: https://nodejs.org/dist/latest-v14.x/docs/api/worker_threads.html
@@ -25,7 +25,7 @@ flushed as quickly as possible (there is nothing to do).
25
25
  A transport is a module that exports a default function that returns a writable stream:
26
26
 
27
27
  ```js
28
- import { createWriteStream } from 'fs'
28
+ import { createWriteStream } from 'node:fs'
29
29
 
30
30
  export default (options) => {
31
31
  return createWriteStream(options.destination)
@@ -54,7 +54,7 @@ The exported function can also be async. If we use an async function we can thro
54
54
  if the transform could not be opened. As an example:
55
55
 
56
56
  ```js
57
- import fs from 'fs'
57
+ import fs from 'node:fs'
58
58
  import { once } from 'events'
59
59
  export default async (options) => {
60
60
  const stream = fs.createWriteStream(options.destination)
@@ -84,8 +84,8 @@ is serialized and injected into the transport worker thread, then passed to the
84
84
  This means that the options object can only contain types that are supported by the
85
85
  [Structured Clone Algorithm][sca] which is used to (de)serialize objects between threads.
86
86
 
87
- What if we wanted to use both transports, but send only error logs to `some-file-transport` while
88
- sending all logs to `my-transport.mjs`? We can use the `pino.transport` function's `destinations` option:
87
+ What if we wanted to use both transports, but send only error logs to `my-transport.mjs` while
88
+ sending all logs to `some-file-transport`? We can use the `pino.transport` function's `level` option:
89
89
 
90
90
  ```js
91
91
  const pino = require('pino')
@@ -124,6 +124,19 @@ const transport = pino.transport({
124
124
  pino(transport)
125
125
  ```
126
126
 
127
+ To make pino log synchronously, pass `sync: true` to transport options.
128
+ ```js
129
+ const pino = require('pino')
130
+ const transport = pino.transport({
131
+ targets: [
132
+ { target: '/absolute/path/to/my-transport.mjs', level: 'error' },
133
+ ],
134
+ dedupe: true,
135
+ sync: true,
136
+ });
137
+ pino(transport);
138
+ ```
139
+
127
140
  For more details on `pino.transport` see the [API docs for `pino.transport`][pino-transport].
128
141
 
129
142
  [pino-transport]: /docs/api.md#pino-transport
@@ -209,7 +222,7 @@ In case you want to both use a custom transport, and output the log entries with
209
222
  }
210
223
  ]
211
224
 
212
- const logger = pino(pino.transport({ targets: transports })
225
+ const logger = pino(pino.transport({ targets: transports }))
213
226
  ```
214
227
 
215
228
  ### Creating a transport pipeline
@@ -218,7 +231,7 @@ As an example, the following transport returns a `Transform` stream:
218
231
 
219
232
  ```js
220
233
  import build from 'pino-abstract-transport'
221
- import { pipeline, Transform } from 'stream'
234
+ import { pipeline, Transform } from 'node:stream'
222
235
  export default async function (options) {
223
236
  return build(function (source) {
224
237
  const myTransportStream = new Transform({
@@ -378,7 +391,7 @@ A legacy Pino "transport" is a supplementary tool that consumes Pino logs.
378
391
  Consider the following example for creating a transport:
379
392
 
380
393
  ```js
381
- const { pipeline, Writable } = require('stream')
394
+ const { pipeline, Writable } = require('node:stream')
382
395
  const split = require('split2')
383
396
 
384
397
  const myTransportStream = new Writable({
@@ -410,20 +423,27 @@ PRs to this document are welcome for any new transports!
410
423
 
411
424
  ### Pino v7+ Compatible
412
425
 
426
+ + [@axiomhq/pino](#@axiomhq/pino)
413
427
  + [@logtail/pino](#@logtail/pino)
414
- + [pino-elasticsearch](#pino-elasticsearch)
415
- + [pino-pretty](#pino-pretty)
416
- + [pino-loki](#pino-loki)
417
- + [pino-seq-transport](#pino-seq-transport)
418
- + [pino-sentry-transport](#pino-sentry-transport)
428
+ + [@macfja/pino-fingers-crossed](#macfja-pino-fingers-crossed)
429
+ + [@openobserve/pino-openobserve](#pino-openobserve)
419
430
  + [pino-airbrake-transport](#pino-airbrake-transport)
420
- + [pino-datadog-transport](#pino-datadog-transport)
421
- + [pino-slack-webhook](#pino-slack-webhook)
422
431
  + [pino-axiom](#pino-axiom)
423
- + [pino-opentelemetry-transport](#pino-opentelemetry-transport)
424
- + [@axiomhq/pino](#@axiomhq/pino)
432
+ + [pino-datadog-transport](#pino-datadog-transport)
425
433
  + [pino-discord-webhook](#pino-discord-webhook)
434
+ + [pino-elasticsearch](#pino-elasticsearch)
435
+ + [pino-hana](#pino-hana)
436
+ + [pino-logflare](#pino-logflare)
426
437
  + [pino-logfmt](#pino-logfmt)
438
+ + [pino-loki](#pino-loki)
439
+ + [pino-opentelemetry-transport](#pino-opentelemetry-transport)
440
+ + [pino-pretty](#pino-pretty)
441
+ + [pino-roll](#pino-roll)
442
+ + [pino-seq-transport](#pino-seq-transport)
443
+ + [pino-sentry-transport](#pino-sentry-transport)
444
+ + [pino-slack-webhook](#pino-slack-webhook)
445
+ + [pino-telegram-webhook](#pino-telegram-webhook)
446
+ + [pino-yc-transport](#pino-yc-transport)
427
447
 
428
448
  ### Legacy
429
449
 
@@ -436,7 +456,6 @@ PRs to this document are welcome for any new transports!
436
456
  + [pino-http-send](#pino-http-send)
437
457
  + [pino-kafka](#pino-kafka)
438
458
  + [pino-logdna](#pino-logdna)
439
- + [pino-logflare](#pino-logflare)
440
459
  + [pino-loki](#pino-loki)
441
460
  + [pino-mq](#pino-mq)
442
461
  + [pino-mysql](#pino-mysql)
@@ -451,6 +470,34 @@ PRs to this document are welcome for any new transports!
451
470
  + [pino-websocket](#pino-websocket)
452
471
 
453
472
 
473
+ <a id="@axiomhq/pino"></a>
474
+ ### @axiomhq/pino
475
+
476
+ [@axiomhq/pino](https://www.npmjs.com/package/@axiomhq/pino) is the official [Axiom](https://axiom.co/) transport for Pino, using [axiom-js](https://github.com/axiomhq/axiom-js).
477
+
478
+ ```javascript
479
+ import pino from 'pino';
480
+
481
+ const logger = pino(
482
+ { level: 'info' },
483
+ pino.transport({
484
+ target: '@axiomhq/pino',
485
+ options: {
486
+ dataset: process.env.AXIOM_DATASET,
487
+ token: process.env.AXIOM_TOKEN,
488
+ },
489
+ }),
490
+ );
491
+ ```
492
+
493
+ then you can use the logger as usual:
494
+
495
+ ```js
496
+ logger.info('Hello from pino!');
497
+ ```
498
+
499
+ For further examples, head over to the [examples](https://github.com/axiomhq/axiom-js/tree/main/examples/pino) directory.
500
+
454
501
  <a id="@logtail/pino"></a>
455
502
  ### @logtail/pino
456
503
 
@@ -458,6 +505,85 @@ The [@logtail/pino](https://www.npmjs.com/package/@logtail/pino) NPM package is
458
505
 
459
506
  [Quick start guide ⇗](https://betterstack.com/docs/logs/javascript/pino)
460
507
 
508
+ <a id="macfja-pino-fingers-crossed"></a>
509
+ ### @macfja/pino-fingers-crossed
510
+
511
+ [@macfja/pino-fingers-crossed](https://github.com/MacFJA/js-pino-fingers-crossed) is a Pino v7+ transport that holds logs until a log level is reached, allowing to only have logs when it matters.
512
+
513
+ ```js
514
+ const pino = require('pino');
515
+ const { default: fingersCrossed, enable } = require('@macfja/pino-fingers-crossed')
516
+
517
+ const logger = pino(fingersCrossed());
518
+
519
+ logger.info('Will appear immedialty')
520
+ logger.error('Will appear immedialty')
521
+
522
+ logger.setBindings({ [enable]: 50 })
523
+ logger.info('Will NOT appear immedialty')
524
+ logger.info('Will NOT appear immedialty')
525
+ logger.error('Will appear immedialty as well as the 2 previous messages') // error log are level 50
526
+ logger.info('Will NOT appear')
527
+ logger.info({ [enable]: false }, 'Will appear immedialty')
528
+ logger.info('Will NOT appear')
529
+ ```
530
+ <a id="pino-openobserve"></a>
531
+ ### @openobserve/pino-openobserve
532
+
533
+ [@openobserve/pino-openobserve](https://github.com/openobserve/pino-openobserve) is a
534
+ Pino v7+ transport that will send logs to an
535
+ [OpenObserve](https://openobserve.ai) instance.
536
+
537
+ ```
538
+ const pino = require('pino');
539
+ const OpenobserveTransport = require('@openobserve/pino-openobserve');
540
+
541
+ const logger = pino({
542
+ level: 'info',
543
+ transport: {
544
+ target: OpenobserveTransport,
545
+ options: {
546
+ url: 'https://your-openobserve-server.com',
547
+ organization: 'your-organization',
548
+ streamName: 'your-stream',
549
+ auth: {
550
+ username: 'your-username',
551
+ password: 'your-password',
552
+ },
553
+ },
554
+ },
555
+ });
556
+ ```
557
+
558
+ For full documentation check the [README](https://github.com/openobserve/pino-openobserve).
559
+
560
+ <a id="pino-airbrake-transport"></a>
561
+ ### pino-airbrake-transport
562
+
563
+ [pino-airbrake-transport][pino-airbrake-transport] is a Pino v7+ compatible transport to forward log events to [Airbrake][Airbrake]
564
+ from a dedicated worker:
565
+
566
+ ```js
567
+ const pino = require('pino')
568
+ const transport = pino.transport({
569
+ target: 'pino-airbrake-transport',
570
+ options: {
571
+ airbrake: {
572
+ projectId: 1,
573
+ projectKey: "REPLACE_ME",
574
+ environment: "production",
575
+ // additional options for airbrake
576
+ performanceStats: false,
577
+ },
578
+ },
579
+ level: "error", // minimum log level that should be sent to airbrake
580
+ })
581
+ pino(transport)
582
+ ```
583
+
584
+ [pino-airbrake-transport]: https://github.com/enricodeleo/pino-airbrake-transport
585
+ [Airbrake]: https://airbrake.io/
586
+
461
587
  <a id="pino-applicationinsights"></a>
462
588
  ### pino-applicationinsights
463
589
  The [pino-applicationinsights](https://www.npmjs.com/package/pino-applicationinsights) module is a transport that will forward logs to [Azure Application Insights](https://docs.microsoft.com/en-us/azure/azure-monitor/app/app-insights-overview).
@@ -470,6 +596,24 @@ $ node foo | pino-applicationinsights --key blablabla
470
596
 
471
597
  For full documentation of command line switches read [README](https://github.com/ovhemert/pino-applicationinsights#readme)
472
598
 
599
+ <a id="pino-axiom"></a>
600
+ ### pino-axiom
601
+
602
+ [pino-axiom](https://www.npmjs.com/package/pino-axiom) is a transport that will forward logs to [Axiom](https://axiom.co).
603
+
604
+ ```javascript
605
+ const pino = require('pino')
606
+ const transport = pino.transport({
607
+ target: 'pino-axiom',
608
+ options: {
609
+ orgId: 'YOUR-ORG-ID',
610
+ token: 'YOUR-TOKEN',
611
+ dataset: 'YOUR-DATASET',
612
+ },
613
+ })
614
+ pino(transport)
615
+ ```
616
+
473
617
  <a id="pino-azuretable"></a>
474
618
  ### pino-azuretable
475
619
  The [pino-azuretable](https://www.npmjs.com/package/pino-azuretable) module is a transport that will forward logs to the [Azure Table Storage](https://azure.microsoft.com/en-us/services/storage/tables/).
@@ -518,6 +662,87 @@ $ node foo | pino-datadog --key blablabla
518
662
 
519
663
  For full documentation of command line switches read [README](https://github.com/ovhemert/pino-datadog#readme)
520
664
 
665
+ <a id="pino-datadog-transport"></a>
666
+ ### pino-datadog-transport
667
+
668
+ [pino-datadog-transport][pino-datadog-transport] is a Pino v7+ compatible transport to forward log events to [Datadog][Datadog]
669
+ from a dedicated worker:
670
+
671
+ ```js
672
+ const pino = require('pino')
673
+ const transport = pino.transport({
674
+ target: 'pino-datadog-transport',
675
+ options: {
676
+ ddClientConf: {
677
+ authMethods: {
678
+ apiKeyAuth: <your datadog API key>
679
+ }
680
+ },
681
+ },
682
+ level: "error", // minimum log level that should be sent to datadog
683
+ })
684
+ pino(transport)
685
+ ```
686
+
687
+ [pino-datadog-transport]: https://github.com/theogravity/datadog-transports
688
+ [Datadog]: https://www.datadoghq.com/
689
+
690
+ #### Logstash
691
+
692
+ The [pino-socket][pino-socket] module can also be used to upload logs to
693
+ [Logstash][logstash] via:
694
+
695
+ ```
696
+ $ node app.js | pino-socket -a 127.0.0.1 -p 5000 -m tcp
697
+ ```
698
+
699
+ Assuming logstash is running on the same host and configured as
700
+ follows:
701
+
702
+ ```
703
+ input {
704
+ tcp {
705
+ port => 5000
706
+ }
707
+ }
708
+
709
+ filter {
710
+ json {
711
+ source => "message"
712
+ }
713
+ }
714
+
715
+ output {
716
+ elasticsearch {
717
+ hosts => "127.0.0.1:9200"
718
+ }
719
+ }
720
+ ```
721
+
722
+ See <https://www.elastic.co/guide/en/kibana/current/setup.html> to learn
723
+ how to setup [Kibana][kibana].
724
+
725
+ For Docker users, see
726
+ https://github.com/deviantony/docker-elk to setup an ELK stack.
727
+
728
+ <a id="pino-discord-webhook"></a>
729
+ ### pino-discord-webhook
730
+
731
+ [pino-discord-webhook](https://github.com/fabulousgk/pino-discord-webhook) is a Pino v7+ compatible transport to forward log events to a [Discord](http://discord.com) webhook from a dedicated worker.
732
+
733
+ ```js
734
+ import pino from 'pino'
735
+
736
+ const logger = pino({
737
+ transport: {
738
+ target: 'pino-discord-webhook',
739
+ options: {
740
+ webhookUrl: 'https://discord.com/api/webhooks/xxxx/xxxx',
741
+ }
742
+ }
743
+ })
744
+ ```
745
+
521
746
  <a id="pino-elasticsearch"></a>
522
747
  ### pino-elasticsearch
523
748
 
@@ -568,6 +793,31 @@ $ node your-app.js | pino-gelf log
568
793
  [gelf]: https://docs.graylog.org/en/2.1/pages/gelf.html
569
794
  [graylog]: https://www.graylog.org/
570
795
 
796
+ <a id="pino-hana"></a>
797
+ ### pino-hana
798
+ [pino-hana](https://github.com/HiImGiovi/pino-hana) is a Pino v7+ transport that save pino logs to a SAP HANA database.
799
+ ```js
800
+ const pino = require('pino')
801
+ const logger = pino({
802
+ transport: {
803
+ target: 'pino-hana',
804
+ options: {
805
+ connectionOptions: {
806
+ host: <hana db host>,
807
+ port: <hana db port>,
808
+ user: <hana db user>,
809
+ password: <hana db password>,
810
+ },
811
+ schema: <schema of the table in which you want to save the logs>,
812
+ table: <table in which you want to save the logs>,
813
+ },
814
+ },
815
+ })
816
+
817
+ logger.info('hi') // this log will be saved into SAP HANA
818
+ ```
819
+ For more detailed information about its usage please check the official [documentation](https://github.com/HiImGiovi/pino-hana#readme).
820
+
571
821
  <a id="pino-http-send"></a>
572
822
  ### pino-http-send
573
823
 
@@ -607,33 +857,20 @@ Tags and other metadata can be included using the available command line options
607
857
  $ node index.js | pino-logflare --key YOUR_KEY --source YOUR_SOURCE
608
858
  ```
609
859
 
610
- <a id="pino-mq"></a>
611
- ### pino-mq
612
-
613
- The `pino-mq` transport will take all messages received on `process.stdin` and send them over a message bus using JSON serialization.
614
-
615
- This is useful for:
616
-
617
- * moving backpressure from application to broker
618
- * transforming messages pressure to another component
619
-
620
- ```
621
- node app.js | pino-mq -u "amqp://guest:guest@localhost/" -q "pino-logs"
622
- ```
623
-
624
- Alternatively, a configuration file can be used:
860
+ <a id="pino-logfmt"></a>
861
+ ### pino-logfmt
625
862
 
626
- ```
627
- node app.js | pino-mq -c pino-mq.json
628
- ```
863
+ [pino-logfmt](https://github.com/botflux/pino-logfmt) is a Pino v7+ transport that formats logs into [logfmt](https://brandur.org/logfmt). This transport can output the formatted logs to stdout or file.
629
864
 
630
- A base configuration file can be initialized with:
865
+ ```js
866
+ import pino from 'pino'
631
867
 
868
+ const logger = pino({
869
+ transport: {
870
+ target: 'pino-logfmt'
871
+ }
872
+ })
632
873
  ```
633
- pino-mq -g
634
- ```
635
-
636
- For full documentation of command line switches and configuration see [the `pino-mq` README](https://github.com/itavy/pino-mq#readme)
637
874
 
638
875
  <a id="pino-loki"></a>
639
876
  ### pino-loki
@@ -657,24 +894,33 @@ pino(transport)
657
894
 
658
895
  For full documentation and configuration, see the [README](https://github.com/Julien-R44/pino-loki).
659
896
 
660
- <a id="pino-papertrail"></a>
661
- ### pino-papertrail
662
- pino-papertrail is a transport that will forward logs to the [papertrail](https://papertrailapp.com) log service through an UDPv4 socket.
897
+ <a id="pino-mq"></a>
898
+ ### pino-mq
663
899
 
664
- Given an application `foo` that logs via pino, and a papertrail destination that collects logs on port UDP `12345` on address `bar.papertrailapp.com`, you would use `pino-papertrail`
665
- like so:
900
+ The `pino-mq` transport will take all messages received on `process.stdin` and send them over a message bus using JSON serialization.
666
901
 
667
- ```
668
- node yourapp.js | pino-papertrail --host bar.papertrailapp.com --port 12345 --appname foo
669
- ```
902
+ This is useful for:
670
903
 
904
+ * moving backpressure from application to broker
905
+ * transforming messages pressure to another component
671
906
 
672
- for full documentation of command line switches read [README](https://github.com/ovhemert/pino-papertrail#readme)
907
+ ```
908
+ node app.js | pino-mq -u "amqp://guest:guest@localhost/" -q "pino-logs"
909
+ ```
673
910
 
674
- <a id="pino-pg"></a>
675
- ### pino-pg
676
- [pino-pg](https://www.npmjs.com/package/pino-pg) stores logs into PostgreSQL.
677
- Full documentation in the [README](https://github.com/Xstoudi/pino-pg).
911
+ Alternatively, a configuration file can be used:
912
+
913
+ ```
914
+ node app.js | pino-mq -c pino-mq.json
915
+ ```
916
+
917
+ A base configuration file can be initialized with:
918
+
919
+ ```
920
+ pino-mq -g
921
+ ```
922
+
923
+ For full documentation of command line switches and configuration see [the `pino-mq` README](https://github.com/itavy/pino-mq#readme)
678
924
 
679
925
  <a id="pino-mysql"></a>
680
926
  ### pino-mysql
@@ -695,6 +941,48 @@ For full documentation and command line switches read the [README][pino-mysql].
695
941
  [MariaDB]: https://mariadb.org/
696
942
  [JSONDT]: https://dev.mysql.com/doc/refman/8.0/en/json.html
697
943
 
944
+ <a id="pino-opentelemetry-transport"></a>
945
+ ### pino-opentelemetry-transport
946
+
947
+ [pino-opentelemetry-transport](https://www.npmjs.com/package/pino-opentelemetry-transport) is a transport that will forward logs to an [OpenTelemetry log collector](https://opentelemetry.io/docs/collector/) using [OpenTelemetry JS instrumentation](https://opentelemetry.io/docs/instrumentation/js/).
948
+
949
+ ```javascript
950
+ const pino = require('pino')
951
+
952
+ const transport = pino.transport({
953
+ target: 'pino-opentelemetry-transport',
954
+ options: {
955
+ resourceAttributes: {
956
+ 'service.name': 'test-service',
957
+ 'service.version': '1.0.0'
958
+ }
959
+ }
960
+ })
961
+
962
+ pino(transport)
963
+ ```
964
+
965
+ Documentation on running a minimal example is available in the [README](https://github.com/Vunovati/pino-opentelemetry-transport#minimalistic-example).
966
+
967
+ <a id="pino-papertrail"></a>
968
+ ### pino-papertrail
969
+ pino-papertrail is a transport that will forward logs to the [papertrail](https://papertrailapp.com) log service through an UDPv4 socket.
970
+
971
+ Given an application `foo` that logs via pino, and a papertrail destination that collects logs on port UDP `12345` on address `bar.papertrailapp.com`, you would use `pino-papertrail`
972
+ like so:
973
+
974
+ ```
975
+ node yourapp.js | pino-papertrail --host bar.papertrailapp.com --port 12345 --appname foo
976
+ ```
977
+
978
+
979
+ for full documentation of command line switches read [README](https://github.com/ovhemert/pino-papertrail#readme)
980
+
981
+ <a id="pino-pg"></a>
982
+ ### pino-pg
983
+ [pino-pg](https://www.npmjs.com/package/pino-pg) stores logs into PostgreSQL.
984
+ Full documentation in the [README](https://github.com/Xstoudi/pino-pg).
985
+
698
986
  <a id="pino-redis"></a>
699
987
  ### pino-redis
700
988
 
@@ -707,6 +995,30 @@ $ node app.js | pino-redis -U redis://username:password@localhost:6379
707
995
  [pino-redis]: https://github.com/buianhthang/pino-redis
708
996
  [Redis]: https://redis.io/
709
997
 
998
+ <a id="pino-roll"></a>
999
+ ### pino-roll
1000
+
1001
+ `pino-roll` is a Pino transport that automatically rolls your log files based on size or time frequency.
1002
+
1003
+ ```js
1004
+ import { join } from 'path';
1005
+ import pino from 'pino';
1006
+
1007
+ const transport = pino.transport({
1008
+ target: 'pino-roll',
1009
+ options: { file: join('logs', 'log'), frequency: 'daily', mkdir: true }
1010
+ });
1011
+
1012
+ const logger = pino(transport);
1013
+ ```
1014
+
1015
+ then you can use the logger as usual:
1016
+
1017
+ ```js
1018
+ logger.info('Hello from pino-roll!');
1019
+ ```
1020
+ For full documentation check the [README](https://github.com/mcollina/pino-roll?tab=readme-ov-file#pino-roll).
1021
+
710
1022
  <a id="pino-sentry"></a>
711
1023
  ### pino-sentry
712
1024
 
@@ -721,6 +1033,27 @@ For full documentation of command line switches see the [pino-sentry README](htt
721
1033
  [pino-sentry]: https://www.npmjs.com/package/pino-sentry
722
1034
  [Sentry]: https://sentry.io/
723
1035
 
1036
+ <a id="pino-sentry-transport"></a>
1037
+ ### pino-sentry-transport
1038
+
1039
+ [pino-sentry-transport][pino-sentry-transport] is a Pino v7+ compatible transport to forward log events to [Sentry][Sentry]
1040
+ from a dedicated worker:
1041
+
1042
+ ```js
1043
+ const pino = require('pino')
1044
+ const transport = pino.transport({
1045
+ target: 'pino-sentry-transport',
1046
+ options: {
1047
+ sentry: {
1048
+ dsn: 'https://******@sentry.io/12345',
1049
+ }
1050
+ }
1051
+ })
1052
+ pino(transport)
1053
+ ```
1054
+
1055
+ [pino-sentry-transport]: https://github.com/tomer-yechiel/pino-sentry-transport
1056
+ [Sentry]: https://sentry.io/
724
1057
 
725
1058
  <a id="pino-seq"></a>
726
1059
  ### pino-seq
@@ -752,55 +1085,32 @@ pino(transport)
752
1085
  [pino-seq-transport]: https://github.com/autotelic/pino-seq-transport
753
1086
  [Seq]: https://datalust.co/seq
754
1087
 
755
- <a id="pino-sentry-transport"></a>
756
- ### pino-sentry-transport
1088
+ <a id="pino-slack-webhook"></a>
1089
+ ### pino-slack-webhook
757
1090
 
758
- [pino-sentry-transport][pino-sentry-transport] is a Pino v7+ compatible transport to forward log events to [Sentry][Sentry]
1091
+ [pino-slack-webhook][pino-slack-webhook] is a Pino v7+ compatible transport to forward log events to [Slack][Slack]
759
1092
  from a dedicated worker:
760
1093
 
761
1094
  ```js
762
1095
  const pino = require('pino')
763
1096
  const transport = pino.transport({
764
- target: 'pino-sentry-transport',
1097
+ target: '@youngkiu/pino-slack-webhook',
765
1098
  options: {
766
- sentry: {
767
- dsn: 'https://******@sentry.io/12345',
768
- }
1099
+ webhookUrl: 'https://hooks.slack.com/services/xxx/xxx/xxx',
1100
+ channel: '#pino-log',
1101
+ username: 'webhookbot',
1102
+ icon_emoji: ':ghost:'
769
1103
  }
770
1104
  })
771
1105
  pino(transport)
772
1106
  ```
773
1107
 
774
- [pino-sentry-transport]: https://github.com/tomer-yechiel/pino-sentry-transport
775
- [Sentry]: https://sentry.io/
776
-
777
-
778
- <a id="pino-airbrake-transport"></a>
779
- ### pino-airbrake-transport
780
-
781
- [pino-airbrake-transport][pino-airbrake-transport] is a Pino v7+ compatible transport to forward log events to [Airbrake][Airbrake]
782
- from a dedicated worker:
1108
+ [pino-slack-webhook]: https://github.com/youngkiu/pino-slack-webhook
1109
+ [Slack]: https://slack.com/
783
1110
 
784
- ```js
785
- const pino = require('pino')
786
- const transport = pino.transport({
787
- target: 'pino-airbrake-transport',
788
- options: {
789
- airbrake: {
790
- projectId: 1,
791
- projectKey: "REPLACE_ME",
792
- environment: "production",
793
- // additional options for airbrake
794
- performanceStats: false,
795
- },
796
- },
797
- level: "error", // minimum log level that should be sent to airbrake
798
- })
799
- pino(transport)
800
- ```
1111
+ [pino-pretty]: https://github.com/pinojs/pino-pretty
801
1112
 
802
- [pino-airbrake-transport]: https://github.com/enricodeleo/pino-airbrake-transport
803
- [Airbrake]: https://airbrake.io/
1113
+ For full documentation of command line switches read the [README](https://github.com/abeai/pino-websocket#readme).
804
1114
 
805
1115
  <a id="pino-socket"></a>
806
1116
  ### pino-socket
@@ -824,69 +1134,6 @@ Logs from the application should be observed on both consoles.
824
1134
 
825
1135
  [pino-socket]: https://www.npmjs.com/package/pino-socket
826
1136
 
827
- <a id="pino-datadog-transport"></a>
828
- ### pino-datadog-transport
829
-
830
- [pino-datadog-transport][pino-datadog-transport] is a Pino v7+ compatible transport to forward log events to [Datadog][Datadog]
831
- from a dedicated worker:
832
-
833
- ```js
834
- const pino = require('pino')
835
- const transport = pino.transport({
836
- target: 'pino-datadog-transport',
837
- options: {
838
- ddClientConf: {
839
- authMethods: {
840
- apiKeyAuth: <your datadog API key>
841
- }
842
- },
843
- },
844
- level: "error", // minimum log level that should be sent to datadog
845
- })
846
- pino(transport)
847
- ```
848
-
849
- [pino-datadog-transport]: https://github.com/theogravity/pino-datadog-transport
850
- [Datadog]: https://www.datadoghq.com/
851
-
852
- #### Logstash
853
-
854
- The [pino-socket][pino-socket] module can also be used to upload logs to
855
- [Logstash][logstash] via:
856
-
857
- ```
858
- $ node app.js | pino-socket -a 127.0.0.1 -p 5000 -m tcp
859
- ```
860
-
861
- Assuming logstash is running on the same host and configured as
862
- follows:
863
-
864
- ```
865
- input {
866
- tcp {
867
- port => 5000
868
- }
869
- }
870
-
871
- filter {
872
- json {
873
- source => "message"
874
- }
875
- }
876
-
877
- output {
878
- elasticsearch {
879
- hosts => "127.0.0.1:9200"
880
- }
881
- }
882
- ```
883
-
884
- See <https://www.elastic.co/guide/en/kibana/current/setup.html> to learn
885
- how to setup [Kibana][kibana].
886
-
887
- For Docker users, see
888
- https://github.com/deviantony/docker-elk to setup an ELK stack.
889
-
890
1137
  <a id="pino-stackdriver"></a>
891
1138
  ### pino-stackdriver
892
1139
  The [pino-stackdriver](https://www.npmjs.com/package/pino-stackdriver) module is a transport that will forward logs to the [Google Stackdriver](https://cloud.google.com/logging/) log service through its API.
@@ -922,145 +1169,69 @@ Example output for the "hello world" log:
922
1169
  [rfc3164]: https://tools.ietf.org/html/rfc3164
923
1170
  [logstash]: https://www.elastic.co/products/logstash
924
1171
 
1172
+ <a id="pino-telegram-webhook"></a>
1173
+ ### pino-telegram-webhook
925
1174
 
926
- <a id="pino-websocket"></a>
927
- ### pino-websocket
928
-
929
- [pino-websocket](https://www.npmjs.com/package/@abeai/pino-websocket) is a transport that will forward each log line to a websocket server.
930
-
931
- ```sh
932
- $ node app.js | pino-websocket -a my-websocket-server.example.com -p 3004
933
- ```
934
-
935
- For full documentation of command line switches read the [README](https://github.com/abeai/pino-websocket#readme).
936
-
937
- <a id="pino-slack-webhook"></a>
938
- ### pino-slack-webhook
939
-
940
- [pino-slack-webhook][pino-slack-webhook] is a Pino v7+ compatible transport to forward log events to [Slack][Slack]
941
- from a dedicated worker:
1175
+ [pino-telegram-webhook](https://github.com/Jhon-Mosk/pino-telegram-webhook) is a Pino v7+ transport for sending messages to [Telegram](https://telegram.org/).
942
1176
 
943
1177
  ```js
944
- const pino = require('pino')
945
- const transport = pino.transport({
946
- target: '@youngkiu/pino-slack-webhook',
947
- options: {
948
- webhookUrl: 'https://hooks.slack.com/services/xxx/xxx/xxx',
949
- channel: '#pino-log',
950
- username: 'webhookbot',
951
- icon_emoji: ':ghost:'
952
- }
953
- })
954
- pino(transport)
955
- ```
956
-
957
- [pino-slack-webhook]: https://github.com/youngkiu/pino-slack-webhook
958
- [Slack]: https://slack.com/
1178
+ const pino = require('pino');
959
1179
 
960
- [pino-pretty]: https://github.com/pinojs/pino-pretty
961
-
962
- For full documentation of command line switches read the [README](https://github.com/abeai/pino-websocket#readme).
963
-
964
- <a id="pino-axiom"></a>
965
- ### pino-axiom
966
-
967
- [pino-axiom](https://www.npmjs.com/package/pino-axiom) is a transport that will forward logs to [Axiom](https://axiom.co).
968
-
969
- ```javascript
970
- const pino = require('pino')
971
- const transport = pino.transport({
972
- target: 'pino-axiom',
973
- options: {
974
- orgId: 'YOUR-ORG-ID',
975
- token: 'YOUR-TOKEN',
976
- dataset: 'YOUR-DATASET',
1180
+ const logger = pino({
1181
+ transport: {
1182
+ target: 'pino-telegram-webhook',
1183
+ level: 'error',
1184
+ options: {
1185
+ chatId: -1234567890,
1186
+ botToken: "123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11",
1187
+ extra: {
1188
+ parse_mode: "HTML",
1189
+ },
1190
+ },
977
1191
  },
978
1192
  })
979
- pino(transport)
980
- ```
981
-
982
- <a id="pino-opentelemetry-transport"></a>
983
- ### pino-opentelemetry-transport
984
-
985
- [pino-opentelemetry-transport](https://www.npmjs.com/package/pino-opentelemetry-transport) is a transport that will forward logs to an [OpenTelemetry log collector](https://opentelemetry.io/docs/collector/) using [OpenTelemetry JS instrumentation](https://opentelemetry.io/docs/instrumentation/js/).
986
-
987
- ```javascript
988
- const pino = require('pino')
989
-
990
- const transport = pino.transport({
991
- target: 'pino-opentelemetry-transport',
992
- options: {
993
- resourceAttributes: {
994
- 'service.name': 'test-service',
995
- 'service.version': '1.0.0'
996
- }
997
- }
998
- })
999
1193
 
1000
- pino(transport)
1194
+ logger.error('<b>test log!</b>');
1001
1195
  ```
1002
1196
 
1003
- Documentation on running a minimal example is available in the [README](https://github.com/Vunovati/pino-opentelemetry-transport#minimalistic-example).
1197
+ The `extra` parameter is optional. Parameters that the method [`sendMessage`](https://core.telegram.org/bots/api#sendmessage) supports can be passed to it.
1004
1198
 
1005
- <a id="@axiomhq/pino"></a>
1006
- ### @axiomhq/pino
1007
-
1008
- [@axiomhq/pino](https://www.npmjs.com/package/@axiomhq/pino) is the official [Axiom](https://axiom.co/) transport for Pino, using [axiom-js](https://github.com/axiomhq/axiom-js).
1009
-
1010
- ```javascript
1011
- import pino from 'pino';
1012
-
1013
- const logger = pino(
1014
- { level: 'info' },
1015
- pino.transport({
1016
- target: '@axiomhq/pino',
1017
- options: {
1018
- dataset: process.env.AXIOM_DATASET,
1019
- token: process.env.AXIOM_TOKEN,
1020
- },
1021
- }),
1022
- );
1023
- ```
1199
+ <a id="pino-websocket"></a>
1200
+ ### pino-websocket
1024
1201
 
1025
- then you can use the logger as usual:
1202
+ [pino-websocket](https://www.npmjs.com/package/@abeai/pino-websocket) is a transport that will forward each log line to a websocket server.
1026
1203
 
1027
- ```js
1028
- logger.info('Hello from pino!');
1204
+ ```sh
1205
+ $ node app.js | pino-websocket -a my-websocket-server.example.com -p 3004
1029
1206
  ```
1030
1207
 
1031
- For further examples, head over to the [examples](https://github.com/axiomhq/axiom-js/tree/main/examples/pino) directory.
1032
-
1033
- <a id="pino-discord-webhook"></a>
1034
- ### pino-discord-webhook
1035
-
1036
- [pino-discord-webhook](https://github.com/fabulousgk/pino-discord-webhook) is a Pino v7+ compatible transport to forward log events to a [Discord](http://discord.com) webhook from a dedicated worker.
1037
-
1038
- ```js
1039
- import pino from 'pino'
1040
-
1041
- const logger = pino({
1042
- transport: {
1043
- target: 'pino-discord-webhook',
1044
- options: {
1045
- webhookUrl: 'https://discord.com/api/webhooks/xxxx/xxxx',
1046
- }
1047
- }
1048
- })
1049
- ```
1208
+ For full documentation of command line switches read the [README](https://github.com/abeai/pino-websocket#readme).
1050
1209
 
1051
- <a id="pino-logfmt"></a>
1052
- ### pino-logfmt
1210
+ <a id="pino-yc-transport"></a>
1211
+ ### pino-yc-transport
1053
1212
 
1054
- [pino-logfmt](https://github.com/botflux/pino-logfmt) is a Pino v7+ transport that formats logs into [logfmt](https://brandur.org/logfmt). This transport can output the formatted logs to stdout or file.
1213
+ [pino-yc-transport](https://github.com/Jhon-Mosk/pino-yc-transport) is a Pino v7+ transport for writing to [Yandex Cloud Logging](https://yandex.cloud/ru/services/logging) from serveless functions or containers.
1055
1214
 
1056
1215
  ```js
1057
- import pino from 'pino'
1216
+ const pino = require("pino");
1058
1217
 
1059
- const logger = pino({
1218
+ const config = {
1219
+ level: "debug",
1060
1220
  transport: {
1061
- target: 'pino-logfmt'
1062
- }
1063
- })
1221
+ target: "pino-yc-transport",
1222
+ },
1223
+ };
1224
+
1225
+ const logger = pino(config);
1226
+
1227
+ logger.debug("some message")
1228
+ logger.debug({ foo: "bar" });
1229
+ logger.debug("some message %o, %s", { foo: "bar" }, "baz");
1230
+ logger.info("info");
1231
+ logger.warn("warn");
1232
+ logger.error("error");
1233
+ logger.error(new Error("error"));
1234
+ logger.fatal("fatal");
1064
1235
  ```
1065
1236
 
1066
1237
  <a id="communication-between-pino-and-transport"></a>