@vibesdotdev/logging 0.0.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 (393) hide show
  1. package/README.md +80 -0
  2. package/SPEC.md +65 -0
  3. package/dist/audit/audit.descriptor.d.ts +11 -0
  4. package/dist/audit/audit.descriptor.d.ts.map +1 -0
  5. package/dist/audit/audit.descriptor.js +40 -0
  6. package/dist/audit/audit.descriptor.js.map +1 -0
  7. package/dist/audit/audit.storage.schema.d.ts +79 -0
  8. package/dist/audit/audit.storage.schema.d.ts.map +1 -0
  9. package/dist/audit/audit.storage.schema.js +33 -0
  10. package/dist/audit/audit.storage.schema.js.map +1 -0
  11. package/dist/audit/index.d.ts +2 -0
  12. package/dist/audit/index.d.ts.map +1 -0
  13. package/dist/audit/index.js +2 -0
  14. package/dist/audit/index.js.map +1 -0
  15. package/dist/cli/logs.descriptor.d.ts +9 -0
  16. package/dist/cli/logs.descriptor.d.ts.map +1 -0
  17. package/dist/cli/logs.descriptor.js +16 -0
  18. package/dist/cli/logs.descriptor.js.map +1 -0
  19. package/dist/cli/logs.list.descriptor.d.ts +9 -0
  20. package/dist/cli/logs.list.descriptor.d.ts.map +1 -0
  21. package/dist/cli/logs.list.descriptor.js +23 -0
  22. package/dist/cli/logs.list.descriptor.js.map +1 -0
  23. package/dist/cli/logs.list.impl.d.ts +13 -0
  24. package/dist/cli/logs.list.impl.d.ts.map +1 -0
  25. package/dist/cli/logs.list.impl.js +81 -0
  26. package/dist/cli/logs.list.impl.js.map +1 -0
  27. package/dist/cli/logs.rotate.descriptor.d.ts +9 -0
  28. package/dist/cli/logs.rotate.descriptor.d.ts.map +1 -0
  29. package/dist/cli/logs.rotate.descriptor.js +34 -0
  30. package/dist/cli/logs.rotate.descriptor.js.map +1 -0
  31. package/dist/cli/logs.rotate.impl.d.ts +17 -0
  32. package/dist/cli/logs.rotate.impl.d.ts.map +1 -0
  33. package/dist/cli/logs.rotate.impl.js +48 -0
  34. package/dist/cli/logs.rotate.impl.js.map +1 -0
  35. package/dist/cli/logs.search.descriptor.d.ts +9 -0
  36. package/dist/cli/logs.search.descriptor.d.ts.map +1 -0
  37. package/dist/cli/logs.search.descriptor.js +55 -0
  38. package/dist/cli/logs.search.descriptor.js.map +1 -0
  39. package/dist/cli/logs.search.impl.d.ts +22 -0
  40. package/dist/cli/logs.search.impl.d.ts.map +1 -0
  41. package/dist/cli/logs.search.impl.js +145 -0
  42. package/dist/cli/logs.search.impl.js.map +1 -0
  43. package/dist/cli/logs.tail.descriptor.d.ts +9 -0
  44. package/dist/cli/logs.tail.descriptor.d.ts.map +1 -0
  45. package/dist/cli/logs.tail.descriptor.js +43 -0
  46. package/dist/cli/logs.tail.descriptor.js.map +1 -0
  47. package/dist/cli/logs.tail.impl.d.ts +19 -0
  48. package/dist/cli/logs.tail.impl.d.ts.map +1 -0
  49. package/dist/cli/logs.tail.impl.js +78 -0
  50. package/dist/cli/logs.tail.impl.js.map +1 -0
  51. package/dist/cli/logs.view.descriptor.d.ts +9 -0
  52. package/dist/cli/logs.view.descriptor.d.ts.map +1 -0
  53. package/dist/cli/logs.view.descriptor.js +51 -0
  54. package/dist/cli/logs.view.descriptor.js.map +1 -0
  55. package/dist/cli/logs.view.impl.d.ts +21 -0
  56. package/dist/cli/logs.view.impl.d.ts.map +1 -0
  57. package/dist/cli/logs.view.impl.js +85 -0
  58. package/dist/cli/logs.view.impl.js.map +1 -0
  59. package/dist/cli/types.d.ts +57 -0
  60. package/dist/cli/types.d.ts.map +1 -0
  61. package/dist/cli/types.js +9 -0
  62. package/dist/cli/types.js.map +1 -0
  63. package/dist/contexts/audit.d.ts +34 -0
  64. package/dist/contexts/audit.d.ts.map +1 -0
  65. package/dist/contexts/audit.js +13 -0
  66. package/dist/contexts/audit.js.map +1 -0
  67. package/dist/contexts/fallback-logger.d.ts +3 -0
  68. package/dist/contexts/fallback-logger.d.ts.map +1 -0
  69. package/dist/contexts/fallback-logger.js +67 -0
  70. package/dist/contexts/fallback-logger.js.map +1 -0
  71. package/dist/contexts/index.d.ts +8 -0
  72. package/dist/contexts/index.d.ts.map +1 -0
  73. package/dist/contexts/index.js +9 -0
  74. package/dist/contexts/index.js.map +1 -0
  75. package/dist/contexts/logger.d.ts +26 -0
  76. package/dist/contexts/logger.d.ts.map +1 -0
  77. package/dist/contexts/logger.js +88 -0
  78. package/dist/contexts/logger.js.map +1 -0
  79. package/dist/core/index.d.ts +9 -0
  80. package/dist/core/index.d.ts.map +1 -0
  81. package/dist/core/index.js +10 -0
  82. package/dist/core/index.js.map +1 -0
  83. package/dist/core/logger.d.ts +3 -0
  84. package/dist/core/logger.d.ts.map +1 -0
  85. package/dist/core/logger.js +118 -0
  86. package/dist/core/logger.js.map +1 -0
  87. package/dist/core/namespace.d.ts +69 -0
  88. package/dist/core/namespace.d.ts.map +1 -0
  89. package/dist/core/namespace.js +136 -0
  90. package/dist/core/namespace.js.map +1 -0
  91. package/dist/core/parsing.d.ts +3 -0
  92. package/dist/core/parsing.d.ts.map +1 -0
  93. package/dist/core/parsing.js +25 -0
  94. package/dist/core/parsing.js.map +1 -0
  95. package/dist/core/types.d.ts +69 -0
  96. package/dist/core/types.d.ts.map +1 -0
  97. package/dist/core/types.js +7 -0
  98. package/dist/core/types.js.map +1 -0
  99. package/dist/docs/levels.docs.descriptor.d.ts +4 -0
  100. package/dist/docs/levels.docs.descriptor.d.ts.map +1 -0
  101. package/dist/docs/levels.docs.descriptor.js +342 -0
  102. package/dist/docs/levels.docs.descriptor.js.map +1 -0
  103. package/dist/docs/structured.docs.descriptor.d.ts +4 -0
  104. package/dist/docs/structured.docs.descriptor.d.ts.map +1 -0
  105. package/dist/docs/structured.docs.descriptor.js +442 -0
  106. package/dist/docs/structured.docs.descriptor.js.map +1 -0
  107. package/dist/docs/transports.docs.descriptor.d.ts +4 -0
  108. package/dist/docs/transports.docs.descriptor.d.ts.map +1 -0
  109. package/dist/docs/transports.docs.descriptor.js +426 -0
  110. package/dist/docs/transports.docs.descriptor.js.map +1 -0
  111. package/dist/formatters/index.d.ts +7 -0
  112. package/dist/formatters/index.d.ts.map +1 -0
  113. package/dist/formatters/index.js +8 -0
  114. package/dist/formatters/index.js.map +1 -0
  115. package/dist/formatters/json/json.formatters.descriptor.d.ts +9 -0
  116. package/dist/formatters/json/json.formatters.descriptor.d.ts.map +1 -0
  117. package/dist/formatters/json/json.formatters.descriptor.js +22 -0
  118. package/dist/formatters/json/json.formatters.descriptor.js.map +1 -0
  119. package/dist/formatters/json/json.impl.d.ts +22 -0
  120. package/dist/formatters/json/json.impl.d.ts.map +1 -0
  121. package/dist/formatters/json/json.impl.js +32 -0
  122. package/dist/formatters/json/json.impl.js.map +1 -0
  123. package/dist/formatters/json5/json5.descriptor.d.ts +9 -0
  124. package/dist/formatters/json5/json5.descriptor.d.ts.map +1 -0
  125. package/dist/formatters/json5/json5.descriptor.js +22 -0
  126. package/dist/formatters/json5/json5.descriptor.js.map +1 -0
  127. package/dist/formatters/json5/json5.impl.d.ts +23 -0
  128. package/dist/formatters/json5/json5.impl.d.ts.map +1 -0
  129. package/dist/formatters/json5/json5.impl.js +34 -0
  130. package/dist/formatters/json5/json5.impl.js.map +1 -0
  131. package/dist/formatters/jsonl/jsonl.descriptor.d.ts +10 -0
  132. package/dist/formatters/jsonl/jsonl.descriptor.d.ts.map +1 -0
  133. package/dist/formatters/jsonl/jsonl.descriptor.js +23 -0
  134. package/dist/formatters/jsonl/jsonl.descriptor.js.map +1 -0
  135. package/dist/formatters/jsonl/jsonl.impl.d.ts +21 -0
  136. package/dist/formatters/jsonl/jsonl.impl.d.ts.map +1 -0
  137. package/dist/formatters/jsonl/jsonl.impl.js +30 -0
  138. package/dist/formatters/jsonl/jsonl.impl.js.map +1 -0
  139. package/dist/formatters/pretty/pretty.descriptor.d.ts +9 -0
  140. package/dist/formatters/pretty/pretty.descriptor.d.ts.map +1 -0
  141. package/dist/formatters/pretty/pretty.descriptor.js +23 -0
  142. package/dist/formatters/pretty/pretty.descriptor.js.map +1 -0
  143. package/dist/formatters/pretty/pretty.impl.cli.d.ts +23 -0
  144. package/dist/formatters/pretty/pretty.impl.cli.d.ts.map +1 -0
  145. package/dist/formatters/pretty/pretty.impl.cli.js +81 -0
  146. package/dist/formatters/pretty/pretty.impl.cli.js.map +1 -0
  147. package/dist/index.d.ts +67 -0
  148. package/dist/index.d.ts.map +1 -0
  149. package/dist/index.js +97 -0
  150. package/dist/index.js.map +1 -0
  151. package/dist/kinds/audit.d.ts +85 -0
  152. package/dist/kinds/audit.d.ts.map +1 -0
  153. package/dist/kinds/audit.js +71 -0
  154. package/dist/kinds/audit.js.map +1 -0
  155. package/dist/kinds/contexts.d.ts +21 -0
  156. package/dist/kinds/contexts.d.ts.map +1 -0
  157. package/dist/kinds/contexts.js +8 -0
  158. package/dist/kinds/contexts.js.map +1 -0
  159. package/dist/kinds/formatter.d.ts +42 -0
  160. package/dist/kinds/formatter.d.ts.map +1 -0
  161. package/dist/kinds/formatter.js +69 -0
  162. package/dist/kinds/formatter.js.map +1 -0
  163. package/dist/kinds/index.d.ts +13 -0
  164. package/dist/kinds/index.d.ts.map +1 -0
  165. package/dist/kinds/index.js +13 -0
  166. package/dist/kinds/index.js.map +1 -0
  167. package/dist/kinds/logger.contracts.d.ts +16 -0
  168. package/dist/kinds/logger.contracts.d.ts.map +1 -0
  169. package/dist/kinds/logger.contracts.js +9 -0
  170. package/dist/kinds/logger.contracts.js.map +1 -0
  171. package/dist/kinds/logger.d.ts +15 -0
  172. package/dist/kinds/logger.d.ts.map +1 -0
  173. package/dist/kinds/logger.impl.d.ts +40 -0
  174. package/dist/kinds/logger.impl.d.ts.map +1 -0
  175. package/dist/kinds/logger.impl.js +139 -0
  176. package/dist/kinds/logger.impl.js.map +1 -0
  177. package/dist/kinds/logger.js +28 -0
  178. package/dist/kinds/logger.js.map +1 -0
  179. package/dist/kinds/logger.utils.d.ts +15 -0
  180. package/dist/kinds/logger.utils.d.ts.map +1 -0
  181. package/dist/kinds/logger.utils.js +55 -0
  182. package/dist/kinds/logger.utils.js.map +1 -0
  183. package/dist/kinds/output.contracts.d.ts +50 -0
  184. package/dist/kinds/output.contracts.d.ts.map +1 -0
  185. package/dist/kinds/output.contracts.js +10 -0
  186. package/dist/kinds/output.contracts.js.map +1 -0
  187. package/dist/kinds/output.d.ts +20 -0
  188. package/dist/kinds/output.d.ts.map +1 -0
  189. package/dist/kinds/output.impl.d.ts +22 -0
  190. package/dist/kinds/output.impl.d.ts.map +1 -0
  191. package/dist/kinds/output.impl.js +84 -0
  192. package/dist/kinds/output.impl.js.map +1 -0
  193. package/dist/kinds/output.js +29 -0
  194. package/dist/kinds/output.js.map +1 -0
  195. package/dist/kinds/output.types.d.ts +92 -0
  196. package/dist/kinds/output.types.d.ts.map +1 -0
  197. package/dist/kinds/output.types.js +7 -0
  198. package/dist/kinds/output.types.js.map +1 -0
  199. package/dist/kinds/sink.d.ts +40 -0
  200. package/dist/kinds/sink.d.ts.map +1 -0
  201. package/dist/kinds/sink.js +61 -0
  202. package/dist/kinds/sink.js.map +1 -0
  203. package/dist/logger.context.descriptor.d.ts +21 -0
  204. package/dist/logger.context.descriptor.d.ts.map +1 -0
  205. package/dist/logger.context.descriptor.js +12 -0
  206. package/dist/logger.context.descriptor.js.map +1 -0
  207. package/dist/logging.cli.plugin.d.ts +20 -0
  208. package/dist/logging.cli.plugin.d.ts.map +1 -0
  209. package/dist/logging.cli.plugin.js +39 -0
  210. package/dist/logging.cli.plugin.js.map +1 -0
  211. package/dist/logging.plugin.d.ts +16 -0
  212. package/dist/logging.plugin.d.ts.map +1 -0
  213. package/dist/logging.plugin.js +83 -0
  214. package/dist/logging.plugin.js.map +1 -0
  215. package/dist/outputs/index.d.ts +7 -0
  216. package/dist/outputs/index.d.ts.map +1 -0
  217. package/dist/outputs/index.js +8 -0
  218. package/dist/outputs/index.js.map +1 -0
  219. package/dist/outputs/remote/remote.descriptor.d.ts +10 -0
  220. package/dist/outputs/remote/remote.descriptor.d.ts.map +1 -0
  221. package/dist/outputs/remote/remote.descriptor.js +24 -0
  222. package/dist/outputs/remote/remote.descriptor.js.map +1 -0
  223. package/dist/outputs/remote/remote.impl.d.ts +50 -0
  224. package/dist/outputs/remote/remote.impl.d.ts.map +1 -0
  225. package/dist/outputs/remote/remote.impl.js +178 -0
  226. package/dist/outputs/remote/remote.impl.js.map +1 -0
  227. package/dist/outputs.context.descriptor.d.ts +19 -0
  228. package/dist/outputs.context.descriptor.d.ts.map +1 -0
  229. package/dist/outputs.context.descriptor.js +9 -0
  230. package/dist/outputs.context.descriptor.js.map +1 -0
  231. package/dist/outputs.context.impl.d.ts +9 -0
  232. package/dist/outputs.context.impl.d.ts.map +1 -0
  233. package/dist/outputs.context.impl.js +18 -0
  234. package/dist/outputs.context.impl.js.map +1 -0
  235. package/dist/paths.d.ts +8 -0
  236. package/dist/paths.d.ts.map +1 -0
  237. package/dist/paths.js +10 -0
  238. package/dist/paths.js.map +1 -0
  239. package/dist/schemas/audit.d.ts +133 -0
  240. package/dist/schemas/audit.d.ts.map +1 -0
  241. package/dist/schemas/audit.js +80 -0
  242. package/dist/schemas/audit.js.map +1 -0
  243. package/dist/schemas/entry.d.ts +74 -0
  244. package/dist/schemas/entry.d.ts.map +1 -0
  245. package/dist/schemas/entry.js +62 -0
  246. package/dist/schemas/entry.js.map +1 -0
  247. package/dist/schemas/formatter.d.ts +46 -0
  248. package/dist/schemas/formatter.d.ts.map +1 -0
  249. package/dist/schemas/formatter.js +31 -0
  250. package/dist/schemas/formatter.js.map +1 -0
  251. package/dist/schemas/index.d.ts +12 -0
  252. package/dist/schemas/index.d.ts.map +1 -0
  253. package/dist/schemas/index.js +18 -0
  254. package/dist/schemas/index.js.map +1 -0
  255. package/dist/schemas/logger.d.ts +48 -0
  256. package/dist/schemas/logger.d.ts.map +1 -0
  257. package/dist/schemas/logger.js +27 -0
  258. package/dist/schemas/logger.js.map +1 -0
  259. package/dist/schemas/output.d.ts +68 -0
  260. package/dist/schemas/output.d.ts.map +1 -0
  261. package/dist/schemas/output.js +48 -0
  262. package/dist/schemas/output.js.map +1 -0
  263. package/dist/schemas/sink.d.ts +52 -0
  264. package/dist/schemas/sink.d.ts.map +1 -0
  265. package/dist/schemas/sink.js +30 -0
  266. package/dist/schemas/sink.js.map +1 -0
  267. package/dist/sinks/buffer/buffer.descriptor.d.ts +4 -0
  268. package/dist/sinks/buffer/buffer.descriptor.d.ts.map +1 -0
  269. package/dist/sinks/buffer/buffer.descriptor.js +11 -0
  270. package/dist/sinks/buffer/buffer.descriptor.js.map +1 -0
  271. package/dist/sinks/buffer/buffer.impl.cli.d.ts +21 -0
  272. package/dist/sinks/buffer/buffer.impl.cli.d.ts.map +1 -0
  273. package/dist/sinks/buffer/buffer.impl.cli.js +34 -0
  274. package/dist/sinks/buffer/buffer.impl.cli.js.map +1 -0
  275. package/dist/sinks/console/console.descriptor.d.ts +10 -0
  276. package/dist/sinks/console/console.descriptor.d.ts.map +1 -0
  277. package/dist/sinks/console/console.descriptor.js +17 -0
  278. package/dist/sinks/console/console.descriptor.js.map +1 -0
  279. package/dist/sinks/console/console.impl.browser.d.ts +21 -0
  280. package/dist/sinks/console/console.impl.browser.d.ts.map +1 -0
  281. package/dist/sinks/console/console.impl.browser.js +57 -0
  282. package/dist/sinks/console/console.impl.browser.js.map +1 -0
  283. package/dist/sinks/console/console.impl.cli.d.ts +21 -0
  284. package/dist/sinks/console/console.impl.cli.d.ts.map +1 -0
  285. package/dist/sinks/console/console.impl.cli.js +57 -0
  286. package/dist/sinks/console/console.impl.cli.js.map +1 -0
  287. package/dist/sinks/index.d.ts +8 -0
  288. package/dist/sinks/index.d.ts.map +1 -0
  289. package/dist/sinks/index.js +8 -0
  290. package/dist/sinks/index.js.map +1 -0
  291. package/dist/sinks/memory/memory.descriptor.d.ts +10 -0
  292. package/dist/sinks/memory/memory.descriptor.d.ts.map +1 -0
  293. package/dist/sinks/memory/memory.descriptor.js +17 -0
  294. package/dist/sinks/memory/memory.descriptor.js.map +1 -0
  295. package/dist/sinks/memory/memory.impl.d.ts +50 -0
  296. package/dist/sinks/memory/memory.impl.d.ts.map +1 -0
  297. package/dist/sinks/memory/memory.impl.js +88 -0
  298. package/dist/sinks/memory/memory.impl.js.map +1 -0
  299. package/dist/sinks/stdout/stdout.descriptor.d.ts +4 -0
  300. package/dist/sinks/stdout/stdout.descriptor.d.ts.map +1 -0
  301. package/dist/sinks/stdout/stdout.descriptor.js +11 -0
  302. package/dist/sinks/stdout/stdout.descriptor.js.map +1 -0
  303. package/dist/sinks/stdout/stdout.impl.cli.d.ts +10 -0
  304. package/dist/sinks/stdout/stdout.impl.cli.d.ts.map +1 -0
  305. package/dist/sinks/stdout/stdout.impl.cli.js +21 -0
  306. package/dist/sinks/stdout/stdout.impl.cli.js.map +1 -0
  307. package/dist/sinks.context.descriptor.d.ts +19 -0
  308. package/dist/sinks.context.descriptor.d.ts.map +1 -0
  309. package/dist/sinks.context.descriptor.js +9 -0
  310. package/dist/sinks.context.descriptor.js.map +1 -0
  311. package/dist/sinks.context.impl.d.ts +9 -0
  312. package/dist/sinks.context.impl.d.ts.map +1 -0
  313. package/dist/sinks.context.impl.js +18 -0
  314. package/dist/sinks.context.impl.js.map +1 -0
  315. package/package.json +331 -0
  316. package/src/audit/audit.descriptor.ts +45 -0
  317. package/src/audit/audit.storage.schema.ts +57 -0
  318. package/src/audit/index.ts +8 -0
  319. package/src/cli/logs.descriptor.ts +19 -0
  320. package/src/cli/logs.list.descriptor.ts +28 -0
  321. package/src/cli/logs.list.impl.ts +93 -0
  322. package/src/cli/logs.rotate.descriptor.ts +40 -0
  323. package/src/cli/logs.rotate.impl.ts +61 -0
  324. package/src/cli/logs.search.descriptor.ts +61 -0
  325. package/src/cli/logs.search.impl.ts +173 -0
  326. package/src/cli/logs.tail.descriptor.ts +49 -0
  327. package/src/cli/logs.tail.impl.ts +105 -0
  328. package/src/cli/logs.view.descriptor.ts +57 -0
  329. package/src/cli/logs.view.impl.ts +108 -0
  330. package/src/cli/types.ts +59 -0
  331. package/src/contexts/audit.ts +36 -0
  332. package/src/contexts/fallback-logger.ts +80 -0
  333. package/src/contexts/index.ts +23 -0
  334. package/src/contexts/logger.ts +119 -0
  335. package/src/core/index.ts +32 -0
  336. package/src/core/logger.ts +150 -0
  337. package/src/core/namespace.ts +195 -0
  338. package/src/core/parsing.ts +21 -0
  339. package/src/core/types.ts +82 -0
  340. package/src/docs/levels.docs.descriptor.ts +344 -0
  341. package/src/docs/structured.docs.descriptor.ts +444 -0
  342. package/src/docs/transports.docs.descriptor.ts +428 -0
  343. package/src/formatters/index.ts +6 -0
  344. package/src/formatters/json/json.formatters.descriptor.ts +25 -0
  345. package/src/formatters/json/json.impl.ts +41 -0
  346. package/src/formatters/json5/json5.descriptor.ts +25 -0
  347. package/src/formatters/json5/json5.impl.ts +43 -0
  348. package/src/formatters/jsonl/jsonl.descriptor.ts +26 -0
  349. package/src/formatters/jsonl/jsonl.impl.ts +39 -0
  350. package/src/formatters/pretty/pretty.descriptor.ts +26 -0
  351. package/src/formatters/pretty/pretty.impl.cli.ts +101 -0
  352. package/src/index.ts +190 -0
  353. package/src/kinds/audit.ts +169 -0
  354. package/src/kinds/contexts.ts +22 -0
  355. package/src/kinds/formatter.ts +117 -0
  356. package/src/kinds/index.ts +25 -0
  357. package/src/kinds/logger.contracts.ts +17 -0
  358. package/src/kinds/logger.impl.ts +206 -0
  359. package/src/kinds/logger.ts +46 -0
  360. package/src/kinds/logger.utils.ts +91 -0
  361. package/src/kinds/output.contracts.ts +54 -0
  362. package/src/kinds/output.impl.ts +118 -0
  363. package/src/kinds/output.ts +59 -0
  364. package/src/kinds/output.types.ts +105 -0
  365. package/src/kinds/sink.ts +100 -0
  366. package/src/logger.context.descriptor.ts +13 -0
  367. package/src/logging.cli.plugin.ts +43 -0
  368. package/src/logging.plugin.ts +93 -0
  369. package/src/outputs/index.ts +6 -0
  370. package/src/outputs/remote/remote.descriptor.ts +27 -0
  371. package/src/outputs/remote/remote.impl.ts +218 -0
  372. package/src/outputs.context.descriptor.ts +10 -0
  373. package/src/outputs.context.impl.ts +30 -0
  374. package/src/paths.ts +10 -0
  375. package/src/schemas/audit.ts +98 -0
  376. package/src/schemas/entry.ts +88 -0
  377. package/src/schemas/formatter.ts +37 -0
  378. package/src/schemas/index.ts +80 -0
  379. package/src/schemas/logger.ts +38 -0
  380. package/src/schemas/output.ts +62 -0
  381. package/src/schemas/sink.ts +39 -0
  382. package/src/sinks/buffer/buffer.descriptor.ts +13 -0
  383. package/src/sinks/buffer/buffer.impl.cli.ts +49 -0
  384. package/src/sinks/console/console.descriptor.ts +20 -0
  385. package/src/sinks/console/console.impl.browser.ts +69 -0
  386. package/src/sinks/console/console.impl.cli.ts +71 -0
  387. package/src/sinks/index.ts +8 -0
  388. package/src/sinks/memory/memory.descriptor.ts +20 -0
  389. package/src/sinks/memory/memory.impl.ts +119 -0
  390. package/src/sinks/stdout/stdout.descriptor.ts +13 -0
  391. package/src/sinks/stdout/stdout.impl.cli.ts +27 -0
  392. package/src/sinks.context.descriptor.ts +10 -0
  393. package/src/sinks.context.impl.ts +30 -0
@@ -0,0 +1,136 @@
1
+ /**
2
+ * Namespace Filtering
3
+ *
4
+ * Controls which log entries are emitted based on namespace patterns.
5
+ */
6
+ import { LOG_LEVEL_ORDER } from "../schemas/entry.js";
7
+ const DEFAULT_LEVEL = 'info';
8
+ const REGEX_SPECIAL_CHARS = /[\\^$+?.()|[\]{}]/g;
9
+ /**
10
+ * Compile a glob pattern to regex.
11
+ */
12
+ function compilePattern(pattern) {
13
+ const escaped = pattern.replace(REGEX_SPECIAL_CHARS, '\\$&').replace(/\*/g, '.*');
14
+ return new RegExp(`^${escaped}$`);
15
+ }
16
+ /**
17
+ * Parse a selector string into includes/excludes.
18
+ * Format: "namespace1,namespace2,-excluded1,-excluded2"
19
+ */
20
+ function parseSelectors(raw) {
21
+ const selectors = { includes: [], excludes: [] };
22
+ for (const token of raw.split(',').map((value) => value.trim())) {
23
+ if (!token)
24
+ continue;
25
+ const isExclusion = token.startsWith('-');
26
+ const normalized = isExclusion ? token.slice(1) : token;
27
+ if (!normalized)
28
+ continue;
29
+ const selector = {
30
+ raw: normalized,
31
+ regex: compilePattern(normalized),
32
+ isExclusion
33
+ };
34
+ if (isExclusion) {
35
+ selectors.excludes.push(selector);
36
+ }
37
+ else {
38
+ selectors.includes.push(selector);
39
+ }
40
+ }
41
+ return selectors;
42
+ }
43
+ /**
44
+ * Normalize a level string to LogLevel.
45
+ */
46
+ function normalizeLevel(level) {
47
+ switch ((level || '').toLowerCase()) {
48
+ case 'debug':
49
+ return 'debug';
50
+ case 'warn':
51
+ return 'warn';
52
+ case 'error':
53
+ return 'error';
54
+ default:
55
+ return 'info';
56
+ }
57
+ }
58
+ /**
59
+ * Parse namespace settings from input string.
60
+ */
61
+ export function parseNamespaceSettings({ input, defaultLevel }) {
62
+ const selectors = input ? parseSelectors(input) : { includes: [], excludes: [] };
63
+ return {
64
+ ...selectors,
65
+ defaultLevel: normalizeLevel(defaultLevel)
66
+ };
67
+ }
68
+ /**
69
+ * Parse namespace settings from environment variables.
70
+ */
71
+ export function parseNamespaceSettingsFromEnv(env) {
72
+ const logSelectors = env.VIBES_LOG ?? env.vibes_log ?? undefined;
73
+ const level = env.VIBES_LOG_LEVEL ?? env.vibes_log_level ?? env.LOG_LEVEL ?? env.log_level ?? undefined;
74
+ return parseNamespaceSettings({
75
+ input: logSelectors,
76
+ defaultLevel: level
77
+ });
78
+ }
79
+ /**
80
+ * Check if a namespace matches a selector.
81
+ */
82
+ export function matchesSelector(namespace, selector) {
83
+ return selector.regex.test(namespace);
84
+ }
85
+ /**
86
+ * Check if a namespace is included by settings.
87
+ */
88
+ export function isNamespaceIncluded(namespace, settings) {
89
+ const included = settings.includes.length === 0 ||
90
+ settings.includes.some((selector) => matchesSelector(namespace, selector));
91
+ if (!included)
92
+ return false;
93
+ return !settings.excludes.some((selector) => matchesSelector(namespace, selector));
94
+ }
95
+ /**
96
+ * Determine if a log entry should be emitted.
97
+ */
98
+ export function shouldLog({ namespace, level, settings }) {
99
+ const defaultLevel = settings.defaultLevel ?? DEFAULT_LEVEL;
100
+ const levelIndex = LOG_LEVEL_ORDER[level];
101
+ const baselineIndex = LOG_LEVEL_ORDER[defaultLevel] ?? LOG_LEVEL_ORDER[DEFAULT_LEVEL];
102
+ if (levelIndex >= baselineIndex) {
103
+ return !settings.excludes.some((selector) => matchesSelector(namespace, selector));
104
+ }
105
+ return settings.includes.some((selector) => matchesSelector(namespace, selector));
106
+ }
107
+ /**
108
+ * Default namespace settings.
109
+ */
110
+ export const defaultNamespaceSettings = {
111
+ includes: [],
112
+ excludes: [],
113
+ defaultLevel: DEFAULT_LEVEL
114
+ };
115
+ /**
116
+ * Global active namespace settings.
117
+ * Updated from environment or explicit configuration.
118
+ *
119
+ * Initialization is lazy: defaults are used until explicitly configured
120
+ * via updateNamespaceSettings(). The logging-fs plugin initializes
121
+ * settings from the host environment at startup automatically.
122
+ */
123
+ let activeNamespaceSettings = defaultNamespaceSettings;
124
+ /**
125
+ * Update the active namespace settings.
126
+ */
127
+ export function updateNamespaceSettings(settings) {
128
+ activeNamespaceSettings = settings;
129
+ }
130
+ /**
131
+ * Get the current active namespace settings.
132
+ */
133
+ export function getNamespaceSettings() {
134
+ return activeNamespaceSettings;
135
+ }
136
+ //# sourceMappingURL=namespace.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"namespace.js","sourceRoot":"","sources":["../../src/core/namespace.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ export declare function parseSize(size: string | undefined): number;
2
+ export declare function parseDuration(duration: string | undefined): number;
3
+ //# sourceMappingURL=parsing.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"parsing.d.ts","sourceRoot":"","sources":["../../src/core/parsing.ts"],"names":[],"mappings":"AAAA,wBAAgB,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,CAM1D;AAED,wBAAgB,aAAa,CAAC,QAAQ,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,CAYlE"}
@@ -0,0 +1,25 @@
1
+ export function parseSize(size) {
2
+ if (!size)
3
+ return 10 * 1024 * 1024;
4
+ const units = { B: 1, KB: 1024, MB: 1024 ** 2, GB: 1024 ** 3 };
5
+ const match = size.match(/^(\d+(?:\.\d+)?)\s*(B|KB|MB|GB)$/i);
6
+ if (!match)
7
+ return 10 * 1024 * 1024;
8
+ return Math.floor(parseFloat(match[1]) * (units[match[2].toUpperCase()] ?? 1));
9
+ }
10
+ export function parseDuration(duration) {
11
+ if (!duration)
12
+ return 7 * 24 * 60 * 60 * 1000;
13
+ const units = {
14
+ s: 1000,
15
+ m: 60 * 1000,
16
+ h: 60 * 60 * 1000,
17
+ d: 24 * 60 * 60 * 1000,
18
+ w: 7 * 24 * 60 * 60 * 1000
19
+ };
20
+ const match = duration.match(/^(\d+)\s*(s|m|h|d|w)$/i);
21
+ if (!match)
22
+ return 7 * 24 * 60 * 60 * 1000;
23
+ return parseInt(match[1], 10) * (units[match[2].toLowerCase()] ?? 1);
24
+ }
25
+ //# sourceMappingURL=parsing.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"parsing.js","sourceRoot":"","sources":["../../src/core/parsing.ts"],"names":[],"mappings":"AAAA,MAAM,UAAU,SAAS,CAAC,IAAwB;IACjD,IAAI,CAAC,IAAI;QAAE,OAAO,EAAE,GAAG,IAAI,GAAG,IAAI,CAAC;IACnC,MAAM,KAAK,GAA2B,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,IAAI,IAAI,CAAC,EAAE,EAAE,EAAE,IAAI,IAAI,CAAC,EAAE,CAAC;IACvF,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,mCAAmC,CAAC,CAAC;IAC9D,IAAI,CAAC,KAAK;QAAE,OAAO,EAAE,GAAG,IAAI,GAAG,IAAI,CAAC;IACpC,OAAO,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAChF,CAAC;AAED,MAAM,UAAU,aAAa,CAAC,QAA4B;IACzD,IAAI,CAAC,QAAQ;QAAE,OAAO,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC;IAC9C,MAAM,KAAK,GAA2B;QACrC,CAAC,EAAE,IAAI;QACP,CAAC,EAAE,EAAE,GAAG,IAAI;QACZ,CAAC,EAAE,EAAE,GAAG,EAAE,GAAG,IAAI;QACjB,CAAC,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI;QACtB,CAAC,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI;KAC1B,CAAC;IACF,MAAM,KAAK,GAAG,QAAQ,CAAC,KAAK,CAAC,wBAAwB,CAAC,CAAC;IACvD,IAAI,CAAC,KAAK;QAAE,OAAO,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC;IAC3C,OAAO,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC;AACtE,CAAC"}
@@ -0,0 +1,69 @@
1
+ /**
2
+ * Core Logger Types
3
+ *
4
+ * Interfaces for logger instances and factories.
5
+ */
6
+ import type { LogLevel, LogContext, LoggerChildOptions, RequestLogContext, JobLogContext, PerformanceTracker, PerformanceTrackerParams } from '../schemas/entry.ts';
7
+ import type { SinkImplementation } from '../kinds/sink.ts';
8
+ /**
9
+ * Base logger interface.
10
+ */
11
+ export interface Logger {
12
+ debug(message: string, context?: unknown): void;
13
+ info(message: string, context?: unknown): void;
14
+ warn(message: string, context?: unknown): void;
15
+ error(message: string, context?: unknown): void;
16
+ child?(options: LoggerChildOptions): Logger;
17
+ namespace?: string;
18
+ }
19
+ /**
20
+ * Extended runtime logger with context helpers.
21
+ */
22
+ export interface RuntimeLogger extends Logger {
23
+ /** Create a child logger with additional context */
24
+ child(options: LoggerChildOptions): RuntimeLogger;
25
+ /** Add arbitrary context to this logger */
26
+ withContext(context: LogContext): RuntimeLogger;
27
+ /** Add request-specific context */
28
+ withRequestContext(context: RequestLogContext): RuntimeLogger;
29
+ /** Add job-specific context */
30
+ withJobContext(context: JobLogContext): RuntimeLogger;
31
+ /** Create a performance tracker for timing operations */
32
+ performanceTracker(params: PerformanceTrackerParams): PerformanceTracker;
33
+ /** Logger namespace */
34
+ namespace: string;
35
+ /** Full namespace path (including parent namespaces) */
36
+ fullNamespace: string;
37
+ }
38
+ /**
39
+ * Runtime type identifier.
40
+ */
41
+ export type Runtime = 'server' | 'cli' | 'worker' | 'browser' | 'mcp';
42
+ /**
43
+ * Options for creating a runtime logger.
44
+ */
45
+ export interface RuntimeLoggerOptions {
46
+ /** Base namespace (e.g., 'vibes', 'pm') */
47
+ namespace: string;
48
+ /** Runtime environment */
49
+ runtime?: Runtime;
50
+ /** Override default log level */
51
+ level?: LogLevel;
52
+ /** Static metadata added to all entries */
53
+ staticMetadata?: LogContext;
54
+ /** Custom sink IDs for runtime resolution */
55
+ sinks?: string[];
56
+ /** Direct sink implementations (bypasses runtime resolution) */
57
+ sinkImpls?: SinkImplementation[];
58
+ }
59
+ /**
60
+ * Internal logger configuration.
61
+ */
62
+ export interface RuntimeLoggerConfig {
63
+ namespace: string;
64
+ fullNamespace: string;
65
+ runtime: Runtime;
66
+ staticMetadata: LogContext;
67
+ sinkIds: string[];
68
+ }
69
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/core/types.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EACX,QAAQ,EACR,UAAU,EACV,kBAAkB,EAClB,iBAAiB,EACjB,aAAa,EACb,kBAAkB,EAClB,wBAAwB,EACxB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AAE3D;;GAEG;AACH,MAAM,WAAW,MAAM;IACtB,KAAK,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,OAAO,GAAG,IAAI,CAAC;IAChD,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,OAAO,GAAG,IAAI,CAAC;IAC/C,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,OAAO,GAAG,IAAI,CAAC;IAC/C,KAAK,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,OAAO,GAAG,IAAI,CAAC;IAChD,KAAK,CAAC,CAAC,OAAO,EAAE,kBAAkB,GAAG,MAAM,CAAC;IAC5C,SAAS,CAAC,EAAE,MAAM,CAAC;CACnB;AAED;;GAEG;AACH,MAAM,WAAW,aAAc,SAAQ,MAAM;IAC5C,oDAAoD;IACpD,KAAK,CAAC,OAAO,EAAE,kBAAkB,GAAG,aAAa,CAAC;IAClD,2CAA2C;IAC3C,WAAW,CAAC,OAAO,EAAE,UAAU,GAAG,aAAa,CAAC;IAChD,mCAAmC;IACnC,kBAAkB,CAAC,OAAO,EAAE,iBAAiB,GAAG,aAAa,CAAC;IAC9D,+BAA+B;IAC/B,cAAc,CAAC,OAAO,EAAE,aAAa,GAAG,aAAa,CAAC;IACtD,yDAAyD;IACzD,kBAAkB,CAAC,MAAM,EAAE,wBAAwB,GAAG,kBAAkB,CAAC;IACzE,uBAAuB;IACvB,SAAS,EAAE,MAAM,CAAC;IAClB,wDAAwD;IACxD,aAAa,EAAE,MAAM,CAAC;CACtB;AAED;;GAEG;AACH,MAAM,MAAM,OAAO,GAAG,QAAQ,GAAG,KAAK,GAAG,QAAQ,GAAG,SAAS,GAAG,KAAK,CAAC;AAEtE;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACpC,2CAA2C;IAC3C,SAAS,EAAE,MAAM,CAAC;IAClB,0BAA0B;IAC1B,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,iCAAiC;IACjC,KAAK,CAAC,EAAE,QAAQ,CAAC;IACjB,2CAA2C;IAC3C,cAAc,CAAC,EAAE,UAAU,CAAC;IAC5B,6CAA6C;IAC7C,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;IACjB,gEAAgE;IAChE,SAAS,CAAC,EAAE,kBAAkB,EAAE,CAAC;CACjC;AAED;;GAEG;AACH,MAAM,WAAW,mBAAmB;IACnC,SAAS,EAAE,MAAM,CAAC;IAClB,aAAa,EAAE,MAAM,CAAC;IACtB,OAAO,EAAE,OAAO,CAAC;IACjB,cAAc,EAAE,UAAU,CAAC;IAC3B,OAAO,EAAE,MAAM,EAAE,CAAC;CAClB"}
@@ -0,0 +1,7 @@
1
+ /**
2
+ * Core Logger Types
3
+ *
4
+ * Interfaces for logger instances and factories.
5
+ */
6
+ export {};
7
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/core/types.ts"],"names":[],"mappings":"AAAA;;;;GAIG"}
@@ -0,0 +1,4 @@
1
+ import type { DocsTopicDescriptor } from '@vibesdotdev/docs';
2
+ declare const descriptor: DocsTopicDescriptor;
3
+ export default descriptor;
4
+ //# sourceMappingURL=levels.docs.descriptor.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"levels.docs.descriptor.d.ts","sourceRoot":"","sources":["../../src/docs/levels.docs.descriptor.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AAE7D,QAAA,MAAM,UAAU,EAAE,mBAmVjB,CAAC;AAEF,eAAe,UAAU,CAAC"}
@@ -0,0 +1,342 @@
1
+ const descriptor = {
2
+ kind: 'docs/topic',
3
+ id: 'logging.levels',
4
+ title: 'Log Levels',
5
+ summary: 'Log levels (debug, info, warn, error) and filtering',
6
+ body: {
7
+ type: 'markdown',
8
+ sourceType: 'raw',
9
+ source: `---
10
+ title: Log Levels
11
+ summary: Log levels (debug, info, warn, error) and filtering
12
+ tags: [logging, levels, debug, info, warn, error, filtering]
13
+ parent: logging
14
+ order: 1
15
+ surfaces: [cli, web, in-app]
16
+ hardware: [consumer, cloud]
17
+ ---
18
+
19
+ # Log Levels
20
+
21
+ Log levels categorize log entries by severity. The logging system provides five standard levels with automatic filtering based on configuration.
22
+
23
+ ## Level Hierarchy
24
+
25
+ \`\`\`
26
+ trace < debug < info < warn < error
27
+ \`\`\`
28
+
29
+ Each level includes all levels above it. Setting level to \`warn\` logs \`warn\` and \`error\` only.
30
+
31
+ ## Level Definitions
32
+
33
+ ### Trace (0)
34
+
35
+ Fine-grained debugging information:
36
+
37
+ \`\`\`ts
38
+ logger.trace('Entering function', { fn: 'processUser', userId: '123' });
39
+ \`\`\`
40
+
41
+ **Use for:**
42
+ - Function entry/exit
43
+ - Variable values during debugging
44
+ - Detailed execution flow
45
+
46
+ **Typical output:**
47
+ \`\`\`
48
+ [TRACE] [app:user] Entering function {"fn":"processUser","userId":"123"}
49
+ \`\`\`
50
+
51
+ ### Debug (1)
52
+
53
+ Debugging information for development:
54
+
55
+ \`\`\`ts
56
+ logger.debug('Database query executed', {
57
+ query: 'SELECT * FROM users',
58
+ duration: 45
59
+ });
60
+ \`\`\`
61
+
62
+ **Use for:**
63
+ - SQL queries
64
+ - API requests
65
+ - Configuration values
66
+ - Performance metrics
67
+
68
+ **Typical output:**
69
+ \`\`\`
70
+ [DEBUG] [app:db] Database query executed {"query":"SELECT * FROM users","duration":45}
71
+ \`\`\`
72
+
73
+ ### Info (2)
74
+
75
+ General informational messages:
76
+
77
+ \`\`\`ts
78
+ logger.info('Server started', {
79
+ port: 3000,
80
+ environment: 'development'
81
+ });
82
+ \`\`\`
83
+
84
+ **Use for:**
85
+ - Application lifecycle events
86
+ - User actions (login, logout)
87
+ - System state changes
88
+ - Successful operations
89
+
90
+ **Typical output:**
91
+ \`\`\`
92
+ [INFO] [app:server] Server started {"port":3000,"environment":"development"}
93
+ \`\`\`
94
+
95
+ ### Warn (3)
96
+
97
+ Warning conditions:
98
+
99
+ \`\`\`ts
100
+ logger.warn('High memory usage detected', {
101
+ usage: '85%',
102
+ threshold: '80%'
103
+ });
104
+ \`\`\`
105
+
106
+ **Use for:**
107
+ - Resource warnings
108
+ - Deprecated API usage
109
+ - Recoverable errors
110
+ - Performance degradation
111
+
112
+ **Typical output:**
113
+ \`\`\`
114
+ [WARN] [app:monitor] High memory usage detected {"usage":"85%","threshold":"80%"}
115
+ \`\`\`
116
+
117
+ ### Error (4)
118
+
119
+ Error conditions:
120
+
121
+ \`\`\`ts
122
+ logger.error('Database connection failed', {
123
+ error: error.message,
124
+ host: config.db.host
125
+ });
126
+ \`\`\`
127
+
128
+ **Use for:**
129
+ - Unhandled exceptions
130
+ - Failed operations
131
+ - System errors
132
+ - External service failures
133
+
134
+ **Typical output:**
135
+ \`\`\`
136
+ [ERROR] [app:db] Database connection failed {"error":"ECONNREFUSED","host":"localhost"}
137
+ \`\`\`
138
+
139
+ ## Setting Log Level
140
+
141
+ ### Environment Variable
142
+
143
+ \`\`\`bash
144
+ # Set minimum level
145
+ export LOG_LEVEL=debug
146
+
147
+ # Levels: trace, debug, info, warn, error
148
+ \`\`\`
149
+
150
+ ### Programmatic Configuration
151
+
152
+ \`\`\`ts
153
+ import { logger } from '@vibesdotdev/logging';
154
+
155
+ logger.setLevel('debug');
156
+
157
+ // Only debug, info, warn, error will be logged
158
+ // trace will be filtered out
159
+ \`\`\`
160
+
161
+ ### Config Manifest
162
+
163
+ \`\`\`ts
164
+ const loggingConfig = await runtime.query('config/manifest')
165
+ .filter(d => d.id === 'logging')
166
+ .resolve();
167
+
168
+ const config = await loggingConfig.loadWithDefaults(context);
169
+
170
+ console.log(config.level); // 'info'
171
+ \`\`\`
172
+
173
+ ## Level Filtering
174
+
175
+ ### Filter by Level
176
+
177
+ \`\`\`ts
178
+ logger.setLevel('warn');
179
+
180
+ logger.trace('Will NOT be logged'); // filtered
181
+ logger.debug('Will NOT be logged'); // filtered
182
+ logger.info('Will NOT be logged'); // filtered
183
+ logger.warn('Will be logged'); // ✓
184
+ logger.error('Will be logged'); // ✓
185
+ \`\`\`
186
+
187
+ ### Filter by Namespace
188
+
189
+ \`\`\`ts
190
+ import { createLogger } from '@vibesdotdev/logging';
191
+
192
+ // Create logger with namespace
193
+ const dbLogger = createLogger('app:db');
194
+ const authLogger = createLogger('app:auth');
195
+
196
+ dbLogger.setLevel('debug');
197
+ authLogger.setLevel('error');
198
+
199
+ dbLogger.debug('Query executed'); // logged
200
+ authLogger.debug('Token validated'); // filtered
201
+ \`\`\`
202
+
203
+ ### Filter by Context
204
+
205
+ \`\`\`ts
206
+ logger.debug('Debug message', {
207
+ context: {
208
+ userId: '123',
209
+ requestId: 'req-456'
210
+ }
211
+ });
212
+
213
+ // Output includes context
214
+ // [DEBUG] [app] Debug message {"userId":"123","requestId":"req-456"}
215
+ \`\`\`
216
+
217
+ ## Namespace Patterns
218
+
219
+ ### Namespace Hierarchy
220
+
221
+ \`\`\`ts
222
+ // Namespace structure
223
+ app:server
224
+ app:database
225
+ app:auth
226
+ app:api:users
227
+ app:api:posts
228
+
229
+ // Set level for namespace pattern
230
+ logger.setLevel('app:api:*', 'debug'); // All API logs
231
+ \`\`\`
232
+
233
+ ### Wildcard Patterns
234
+
235
+ \`\`\`ts
236
+ // Wildcard matching
237
+ logger.setLevel('app:*', 'info'); // All app logs
238
+ logger.setLevel('app:api:*', 'debug'); // All API logs
239
+ logger.setLevel('*', 'warn'); // All logs
240
+ \`\`\`
241
+
242
+ ## Level-Specific Methods
243
+
244
+ ### Convenience Methods
245
+
246
+ \`\`\`ts
247
+ logger.trace('Trace message');
248
+ logger.debug('Debug message');
249
+ logger.info('Info message');
250
+ logger.warn('Warning message');
251
+ logger.error('Error message');
252
+ \`\`\`
253
+
254
+ ### Structured Logging
255
+
256
+ \`\`\`ts
257
+ logger.info('User logged in', {
258
+ userId: '123',
259
+ email: 'user@example.com',
260
+ timestamp: new Date().toISOString()
261
+ });
262
+
263
+ logger.error('Payment failed', {
264
+ userId: '123',
265
+ amount: 99.99,
266
+ error: 'Insufficient funds',
267
+ code: 'PAYMENT_FAILED'
268
+ });
269
+ \`\`\`
270
+
271
+ ## Conditional Logging
272
+
273
+ ### Level Guards
274
+
275
+ \`\`\`ts
276
+ if (logger.isLevelEnabled('debug')) {
277
+ // Expensive operation only if debug logging enabled
278
+ const debugData = computeExpensiveDebugData();
279
+ logger.debug('Debug info', debugData);
280
+ }
281
+ \`\`\`
282
+
283
+ ### Dynamic Level Changes
284
+
285
+ \`\`\`ts
286
+ // Temporarily increase verbosity
287
+ const previousLevel = logger.getLevel();
288
+ logger.setLevel('trace');
289
+
290
+ // ... debug-heavy operation ...
291
+
292
+ logger.setLevel(previousLevel); // restore
293
+ \`\`\`
294
+
295
+ ## Audit Logging
296
+
297
+ Audit logs use special level handling:
298
+
299
+ \`\`\`ts
300
+ import { auditLogger } from '@vibesdotdev/logging';
301
+
302
+ // Audit logs always logged regardless of level
303
+ auditLogger.authentication({
304
+ userId: '123',
305
+ action: 'login',
306
+ success: true,
307
+ ipAddress: '192.168.1.1'
308
+ });
309
+
310
+ auditLogger.authorization({
311
+ userId: '123',
312
+ resource: 'users/456',
313
+ action: 'delete',
314
+ allowed: false
315
+ });
316
+ \`\`\`
317
+
318
+ ## Best Practices
319
+
320
+ 1. **Use appropriate levels** — Don't log everything as error
321
+ 2. **Include context** — Help debugging with relevant data
322
+ 3. **Avoid sensitive data** — Never log passwords, tokens, PII
323
+ 4. **Consistent namespaces** — Use hierarchical naming
324
+ 5. **Production level** — Typically 'info' or 'warn'
325
+ 6. **Development level** — Typically 'debug'
326
+
327
+ :::card{title="See also"}
328
+ - [\`logging.transports\`](logging.transports) — Transport layers
329
+ - [\`logging.structured\`](logging.structured) — Structured logging
330
+ - [\`config.environment\`](config.environment) — Environment configuration
331
+ :::
332
+ `
333
+ },
334
+ parent: 'logging',
335
+ order: 1,
336
+ tags: ['logging', 'levels', 'debug', 'info', 'warn', 'error', 'filtering'],
337
+ surfaces: ['cli', 'web', 'in-app'],
338
+ hardware: ['consumer', 'cloud'],
339
+ enabled: true
340
+ };
341
+ export default descriptor;
342
+ //# sourceMappingURL=levels.docs.descriptor.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"levels.docs.descriptor.js","sourceRoot":"","sources":["../../src/docs/levels.docs.descriptor.ts"],"names":[],"mappings":"AAEA,MAAM,UAAU,GAAwB;IACvC,IAAI,EAAE,YAAY;IAClB,EAAE,EAAE,gBAAgB;IACpB,KAAK,EAAE,YAAY;IACnB,OAAO,EAAE,qDAAqD;IAC9D,IAAI,EAAE;QACL,IAAI,EAAE,UAAU;QAChB,UAAU,EAAE,KAAK;QACjB,MAAM,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAmUT;KACC;IACD,MAAM,EAAE,SAAS;IACjB,KAAK,EAAE,CAAC;IACR,IAAI,EAAE,CAAC,SAAS,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,WAAW,CAAC;IAC1E,QAAQ,EAAE,CAAC,KAAK,EAAE,KAAK,EAAE,QAAQ,CAAC;IAClC,QAAQ,EAAE,CAAC,UAAU,EAAE,OAAO,CAAC;IAC/B,OAAO,EAAE,IAAI;CACb,CAAC;AAEF,eAAe,UAAU,CAAC"}
@@ -0,0 +1,4 @@
1
+ import type { DocsTopicDescriptor } from '@vibesdotdev/docs';
2
+ declare const descriptor: DocsTopicDescriptor;
3
+ export default descriptor;
4
+ //# sourceMappingURL=structured.docs.descriptor.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"structured.docs.descriptor.d.ts","sourceRoot":"","sources":["../../src/docs/structured.docs.descriptor.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AAE7D,QAAA,MAAM,UAAU,EAAE,mBAubjB,CAAC;AAEF,eAAe,UAAU,CAAC"}