@adonis-agora/telescope 0.13.0 → 0.14.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 (79) hide show
  1. package/CHANGELOG.md +44 -0
  2. package/dist/providers/telescope_provider.d.ts.map +1 -1
  3. package/dist/providers/telescope_provider.js +5 -1
  4. package/dist/providers/telescope_provider.js.map +1 -1
  5. package/dist/providers/telescope_ui_provider.d.ts.map +1 -1
  6. package/dist/providers/telescope_ui_provider.js +7 -0
  7. package/dist/providers/telescope_ui_provider.js.map +1 -1
  8. package/dist/providers/telescope_watchers_provider.d.ts +25 -0
  9. package/dist/providers/telescope_watchers_provider.d.ts.map +1 -1
  10. package/dist/providers/telescope_watchers_provider.js +66 -5
  11. package/dist/providers/telescope_watchers_provider.js.map +1 -1
  12. package/dist/src/ai/index.d.ts +1 -1
  13. package/dist/src/ai/index.js +1 -1
  14. package/dist/src/alerts/index.d.ts +1 -1
  15. package/dist/src/alerts/index.js +1 -1
  16. package/dist/src/extension/registry.d.ts +14 -1
  17. package/dist/src/extension/registry.d.ts.map +1 -1
  18. package/dist/src/extension/registry.js +38 -0
  19. package/dist/src/extension/registry.js.map +1 -1
  20. package/dist/src/extension/types.d.ts +22 -0
  21. package/dist/src/extension/types.d.ts.map +1 -1
  22. package/dist/src/extension/types.js.map +1 -1
  23. package/dist/src/index.d.ts +6 -4
  24. package/dist/src/index.d.ts.map +1 -1
  25. package/dist/src/index.js +3 -2
  26. package/dist/src/index.js.map +1 -1
  27. package/dist/src/mcp/index.d.ts +1 -1
  28. package/dist/src/mcp/index.js +1 -1
  29. package/dist/src/metrics/metrics_service.d.ts +36 -2
  30. package/dist/src/metrics/metrics_service.d.ts.map +1 -1
  31. package/dist/src/metrics/metrics_service.js +47 -5
  32. package/dist/src/metrics/metrics_service.js.map +1 -1
  33. package/dist/src/metrics/screens.d.ts +41 -0
  34. package/dist/src/metrics/screens.d.ts.map +1 -0
  35. package/dist/src/metrics/screens.js +70 -0
  36. package/dist/src/metrics/screens.js.map +1 -0
  37. package/dist/src/profiling/index.d.ts +1 -1
  38. package/dist/src/profiling/index.js +1 -1
  39. package/dist/src/registry.d.ts +2 -0
  40. package/dist/src/registry.d.ts.map +1 -1
  41. package/dist/src/registry.js +4 -0
  42. package/dist/src/registry.js.map +1 -1
  43. package/dist/src/request_watcher.d.ts +39 -0
  44. package/dist/src/request_watcher.d.ts.map +1 -1
  45. package/dist/src/request_watcher.js +45 -0
  46. package/dist/src/request_watcher.js.map +1 -1
  47. package/dist/src/store.d.ts +46 -0
  48. package/dist/src/store.d.ts.map +1 -1
  49. package/dist/src/stores/lucid.d.ts +18 -1
  50. package/dist/src/stores/lucid.d.ts.map +1 -1
  51. package/dist/src/stores/lucid.js +40 -0
  52. package/dist/src/stores/lucid.js.map +1 -1
  53. package/dist/src/stores/memory.d.ts +7 -1
  54. package/dist/src/stores/memory.d.ts.map +1 -1
  55. package/dist/src/stores/memory.js +35 -0
  56. package/dist/src/stores/memory.js.map +1 -1
  57. package/dist/src/ui/api.d.ts +16 -1
  58. package/dist/src/ui/api.d.ts.map +1 -1
  59. package/dist/src/ui/api.js +53 -5
  60. package/dist/src/ui/api.js.map +1 -1
  61. package/dist/src/ui/index.d.ts +1 -1
  62. package/dist/src/ui/index.js +1 -1
  63. package/dist/src/watchers/define_config.d.ts +28 -0
  64. package/dist/src/watchers/define_config.d.ts.map +1 -1
  65. package/dist/src/watchers/define_config.js +10 -0
  66. package/dist/src/watchers/define_config.js.map +1 -1
  67. package/dist/src/watchers/index.d.ts +4 -4
  68. package/dist/src/watchers/index.d.ts.map +1 -1
  69. package/dist/src/watchers/index.js +2 -3
  70. package/dist/src/watchers/index.js.map +1 -1
  71. package/dist/src/watchers/logs_watcher.d.ts +0 -19
  72. package/dist/src/watchers/logs_watcher.d.ts.map +1 -1
  73. package/dist/src/watchers/logs_watcher.js +22 -0
  74. package/dist/src/watchers/logs_watcher.js.map +1 -1
  75. package/dist/src/watchers/redis_watcher.d.ts +78 -1
  76. package/dist/src/watchers/redis_watcher.d.ts.map +1 -1
  77. package/dist/src/watchers/redis_watcher.js +124 -1
  78. package/dist/src/watchers/redis_watcher.js.map +1 -1
  79. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"api.js","sourceRoot":"","sources":["../../../src/ui/api.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"api.js","sourceRoot":"","sources":["../../../src/ui/api.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,cAAc,EAA8B,MAAM,+BAA+B,CAAC;AAC3F,OAAO,EAAE,YAAY,EAA4B,MAAM,qBAAqB,CAAC;AAM7E,OAAO,EAAyC,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAkC3F,wFAAwF;AACxF,MAAM,aAAa,GAAG,EAAE,CAAC;AACzB,kFAAkF;AAClF,MAAM,SAAS,GAAG,GAAG,CAAC;AAEtB;;;;;GAKG;AACH,MAAM,OAAO,YAAY;IASJ,OAAO;IART,OAAO,CAAiB;IACxB,KAAK,CAAe;IACrC,+EAA+E;IAC9D,MAAM,CAAuC;IAC9D,qFAAqF;IACpE,gBAAgB,CAAmB;IAEpD,YACmB,OAAyB,EAC1C,cAAc,GAA0B,EAAE,EAC1C,aAAa,GAAwD,SAAS,EAC9E,YAAY,GAAwB,EAAE,EACtC,gBAAgB,GAAqB,EAAE;uBAJtB,OAAO;QAMxB,IAAI,CAAC,OAAO,GAAG,IAAI,cAAc,CAAC,OAAO,CAAC,cAAc,EAAE,cAAc,CAAC,CAAC;QAC1E,IAAI,CAAC,KAAK,GAAG,IAAI,YAAY,CAAC,OAAO,CAAC,cAAc,EAAE,YAAY,CAAC,CAAC;QACpE,IAAI,CAAC,MAAM,GAAG,EAAE,OAAO,EAAE,KAAK,EAAE,GAAG,aAAa,EAAE,CAAC;QACnD,IAAI,CAAC,gBAAgB,GAAG,gBAAgB,CAAC;IAC3C,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,IAAI,CAAC,GAAkB;QAC3B,MAAM,KAAK,GAAG,UAAU,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QACtC,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,IAAI,aAAa,CAAC;QAC3C,gFAAgF;QAChF,8EAA8E;QAC9E,gDAAgD;QAChD,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,GAAG,KAAK,EAAE,KAAK,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,CAAC;QACrE,MAAM,OAAO,GAAG,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;QACpC,MAAM,OAAO,GAAG,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;QACtD,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,MAAM,IAAI,CAAC,CAAC,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC;QAEzD,OAAO,GAAG,CAAC,QAAQ;aAChB,MAAM,CAAC,GAAG,CAAC;aACX,MAAM,CAAC,cAAc,EAAE,kBAAkB,CAAC;aAC1C,IAAI,CAAC;YACJ,IAAI,EAAE,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC;YAC5B,IAAI,EAAE,EAAE,KAAK,EAAE,OAAO,CAAC,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,QAAQ,CAAC,KAAK,CAAC,EAAE;SAC9E,CAAC,CAAC;IACP,CAAC;IAED,gFAAgF;IAChF,KAAK,CAAC,IAAI,CAAC,GAAkB,EAAE,EAAU;QACvC,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAC1C,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;YACnB,OAAO,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,iBAAiB,EAAE,CAAC,CAAC;QACrE,CAAC;QACD,OAAO,GAAG,CAAC,QAAQ;aAChB,MAAM,CAAC,GAAG,CAAC;aACX,MAAM,CAAC,cAAc,EAAE,kBAAkB,CAAC;aAC1C,IAAI,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;IAC3B,CAAC;IAED,iFAAiF;IACjF,KAAK,CAAC,KAAK,CAAC,GAAkB,EAAE,OAAe;QAC7C,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;QACpD,OAAO,GAAG,CAAC,QAAQ;aAChB,MAAM,CAAC,GAAG,CAAC;aACX,MAAM,CAAC,cAAc,EAAE,kBAAkB,CAAC;aAC1C,IAAI,CAAC,EAAE,IAAI,EAAE,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,IAAI,EAAE,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;IACtF,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,KAAK,CAAC,GAAkB;QAC5B,MAAM,KAAK,GAAG,UAAU,CAAC,UAAU,CAAC,GAAG,CAAC,OAAO,EAAE,OAAO,CAAC,IAAI,EAAE,EAAE,EAAE,CAAC,CAAC;QACrE,MAAM,IAAI,GAAG,UAAU,CAAC,GAAG,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;QAC7C,MAAM,CAAC,KAAK,EAAE,WAAW,EAAE,OAAO,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;YACtD,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE;YACpB,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,KAAK,CAAC;YAC5F,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC;SAC5B,CAAC,CAAC;QACH,OAAO,GAAG,CAAC,QAAQ;aAChB,MAAM,CAAC,GAAG,CAAC;aACX,MAAM,CAAC,cAAc,EAAE,kBAAkB,CAAC;aAC1C,IAAI,CAAC,EAAE,IAAI,EAAE,EAAE,KAAK,EAAE,WAAW,EAAE,OAAO,EAAE,EAAE,CAAC,CAAC;IACrD,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,YAAY,CAAC,GAAkB;QACnC,MAAM,IAAI,GAAG,UAAU,CAAC,GAAG,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;QAC7C,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;YACvB,OAAO,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,oCAAoC,EAAE,CAAC,CAAC;QACxF,CAAC;QACD,MAAM,QAAQ,GAAG,UAAU,CAAC,GAAG,CAAC,OAAO,EAAE,UAAU,CAAC,IAAI,SAAS,CAAC;QAClE,MAAM,OAAO,GAAG,UAAU,CAAC,GAAG,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC;QACnD,MAAM,aAAa,GAAG,UAAU,CAAC,GAAG,CAAC,OAAO,EAAE,eAAe,CAAC,CAAC;QAC/D,IAAI,CAAC;YACH,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC;gBACvC,IAAI;gBACJ,GAAG,CAAC,aAAa,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,aAAa,EAAE,UAAU,CAAC,aAAa,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBACzF,QAAQ;gBACR,GAAG,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;aAC9C,CAAC,CAAC;YACH,OAAO,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,cAAc,EAAE,kBAAkB,CAAC,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC;QAC5F,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,OAAO,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,SAAS,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAClE,CAAC;IACH,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,iBAAiB,CAAC,GAAkB;QACxC,MAAM,QAAQ,GAAG,UAAU,CAAC,GAAG,CAAC,OAAO,EAAE,UAAU,CAAC,IAAI,SAAS,CAAC;QAClE,MAAM,OAAO,GAAG,UAAU,CAAC,GAAG,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC;QACnD,MAAM,IAAI,GAAG,UAAU,CAAC,GAAG,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;QAC7C,IAAI,CAAC;YACH,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC;gBAC5C,QAAQ;gBACR,GAAG,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBAC7C,GAAG,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;aACxC,CAAC,CAAC;YACH,OAAO,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,cAAc,EAAE,kBAAkB,CAAC,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC;QAC5F,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,OAAO,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,SAAS,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAClE,CAAC;IACH,CAAC;IAED;;;;;;;OAOG;IACH,KAAK,CAAC,aAAa,CAAC,GAAkB;QACpC,MAAM,KAAK,GAAG,UAAU,CAAC,UAAU,CAAC,GAAG,CAAC,OAAO,EAAE,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC;QACjE,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,GAAG,CAAC,OAAO,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAC3E,MAAM,MAAM,GAAG,CAAC,IAAI,GAAG,CAAC,CAAC,GAAG,KAAK,CAAC;QAElC,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,KAAK,GAAG,CAAC,EAAE,MAAM,CAAC,CAAC;QAC7D,MAAM,OAAO,GAAG,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;QACpC,MAAM,IAAI,GAAG,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;QAEnD,OAAO,GAAG,CAAC,QAAQ;aAChB,MAAM,CAAC,GAAG,CAAC;aACX,MAAM,CAAC,cAAc,EAAE,kBAAkB,CAAC;aAC1C,IAAI,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,KAAK,EAAE,IAAI,CAAC,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,CAAC,CAAC;IACxE,CAAC;IAED;;;;;;OAMG;IACH,KAAK,CAAC,cAAc,CAAC,GAAkB;QACrC,MAAM,QAAQ,GAAG,UAAU,CAAC,GAAG,CAAC,OAAO,EAAE,UAAU,CAAC,IAAI,SAAS,CAAC;QAClE,MAAM,KAAK,GAAG,UAAU,CAAC,UAAU,CAAC,GAAG,CAAC,OAAO,EAAE,OAAO,CAAC,IAAI,EAAE,EAAE,GAAG,CAAC,CAAC;QACtE,MAAM,IAAI,GAAG,UAAU,CAAC,GAAG,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;QAC7C,IAAI,IAAI,KAAK,SAAS,IAAI,IAAI,KAAK,MAAM,IAAI,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,OAAO,EAAE,CAAC;YAChF,OAAO,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,mCAAmC,EAAE,CAAC,CAAC;QACvF,CAAC;QACD,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC;YACzC,QAAQ;YACR,KAAK;YACL,GAAG,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SACxC,CAAC,CAAC;QACH,OAAO,GAAG,CAAC,QAAQ;aAChB,MAAM,CAAC,GAAG,CAAC;aACX,MAAM,CAAC,cAAc,EAAE,kBAAkB,CAAC;aAC1C,IAAI,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,KAAK,EAAE,IAAI,CAAC,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,IAAI,IAAI,IAAI,EAAE,EAAE,CAAC,CAAC;IAChF,CAAC;IAED,0FAA0F;IAC1F,KAAK,CAAC,gBAAgB,CAAC,GAAkB,EAAE,OAAe;QACxD,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC;QACtD,IAAI,IAAI,KAAK,IAAI,EAAE,CAAC;YAClB,OAAO,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,iBAAiB,EAAE,CAAC,CAAC;QACrE,CAAC;QACD,OAAO,GAAG,CAAC,QAAQ;aAChB,MAAM,CAAC,GAAG,CAAC;aACX,MAAM,CAAC,cAAc,EAAE,kBAAkB,CAAC;aAC1C,IAAI,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,OAAO,EAAE,EAAE,CAAC,CAAC;IACvC,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,eAAe,CAAC,GAAkB,EAAE,OAAe;QACvD,MAAM,SAAS,GAAG,UAAU,CAAC,GAAG,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC;QACvD,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC;QAChE,OAAO,GAAG,CAAC,QAAQ;aAChB,MAAM,CAAC,GAAG,CAAC;aACX,MAAM,CAAC,cAAc,EAAE,kBAAkB,CAAC;aAC1C,IAAI,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,OAAO,EAAE,KAAK,EAAE,IAAI,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;IAC3D,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,YAAY,CAAC,GAAkB;QACnC,MAAM,QAAQ,GAAG,UAAU,CAAC,GAAG,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC;QACrD,MAAM,IAAI,GAAG,UAAU,CAAC,GAAG,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;QAC7C,IAAI,CAAC;YACH,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC;gBACtC,GAAG,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBAC/C,GAAG,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;aACxC,CAAC,CAAC;YACH,OAAO,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,cAAc,EAAE,kBAAkB,CAAC,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC;QAC5F,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,OAAO,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,SAAS,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAClE,CAAC;IACH,CAAC;IAED;;;;;;;OAOG;IACH,KAAK,CAAC,SAAS,CAAC,GAAkB;QAChC,MAAM,KAAK,GAAG,IAAI,CAAC,gBAAgB,CAAC,KAAK,CAAC;QAC1C,MAAM,QAAQ,GAAG,IAAI,CAAC,gBAAgB,CAAC,QAAQ,IAAI,EAAE,CAAC;QACtD,MAAM,KAAK,GAA4B,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC;aAC5D,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;aACpF,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC;QACrC,MAAM,IAAI,GAAkB;YAC1B,OAAO,EAAE,KAAK,EAAE,OAAO,IAAI,KAAK;YAChC,OAAO,EAAE,KAAK,EAAE,OAAO,IAAI,CAAC;YAC5B,QAAQ,EAAE,KAAK,EAAE,QAAQ,IAAI,IAAI;YACjC,UAAU,EAAE,KAAK,EAAE,UAAU,IAAI,CAAC;YAClC,QAAQ,EAAE,KAAK;SAChB,CAAC;QACF,OAAO,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,cAAc,EAAE,kBAAkB,CAAC,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC;IAC5F,CAAC;IAED,2EAA2E;IAC3E;;;;;;;;;;;;;;OAcG;IACH,KAAK,CAAC,aAAa,CAAC,GAAkB,EAAE,EAAU,EAAE,WAAoB;QACtE,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;YACzB,OAAO,GAAG,CAAC,QAAQ;iBAChB,MAAM,CAAC,GAAG,CAAC;iBACX,IAAI,CAAC,EAAE,KAAK,EAAE,uEAAuE,EAAE,CAAC,CAAC;QAC9F,CAAC;QACD,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAC1C,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,CAAC,IAAI,KAAK,SAAS,CAAC,OAAO,EAAE,CAAC;YACvD,OAAO,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,gCAAgC,EAAE,CAAC,CAAC;QACpF,CAAC;QACD,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,GAAG,aAAa,EAAE,GAAG,IAAI,CAAC,MAAM,CAAC;QAC5D,MAAM,MAAM,GAAiB,MAAM,aAAa,CAAC,KAAK,CAAC,OAA8B,EAAE;YACrF,GAAG,aAAa;YAChB,GAAG,CAAC,WAAW,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SACtD,CAAC,CAAC;QACH,OAAO,GAAG,CAAC,QAAQ;aAChB,MAAM,CAAC,GAAG,CAAC;aACX,MAAM,CAAC,cAAc,EAAE,kBAAkB,CAAC;aAC1C,IAAI,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC;IAC5B,CAAC;CACF;AAED,SAAS,SAAS,CAAC,GAAY;IAC7B,OAAO,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;AAC1D,CAAC;AAwBD,oDAAoD;AACpD,MAAM,UAAU,SAAS,CAAC,KAAY;IACpC,MAAM,SAAS,GAAG,WAAW,CAAC,KAAK,CAAC,CAAC;IACrC,OAAO;QACL,EAAE,EAAE,KAAK,CAAC,EAAE;QACZ,IAAI,EAAE,KAAK,CAAC,IAAI;QAChB,UAAU,EAAE,KAAK,CAAC,UAAU;QAC5B,IAAI,EAAE,KAAK,CAAC,IAAI;QAChB,OAAO,EAAE,KAAK,CAAC,OAAO;QACtB,UAAU,EAAE,KAAK,CAAC,UAAU;QAC5B,QAAQ,EAAE,KAAK,CAAC,QAAQ;QACxB,SAAS,EACP,KAAK,CAAC,SAAS,YAAY,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,SAAS,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,SAAS,CAAC;QAC3F,OAAO,EAAE,SAAS,CAAC,KAAK,CAAC;QACzB,GAAG,CAAC,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KAClD,CAAC;AACJ,CAAC;AAED,sFAAsF;AACtF,SAAS,WAAW,CAAC,KAAY;IAC/B,MAAM,OAAO,GAAG,KAAK,CAAC,OAAgD,CAAC;IACvE,MAAM,IAAI,GAAG,OAAO,EAAE,IAAI,CAAC;IAC3B,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,IAAI,KAAK,IAAI;QAAE,OAAO,SAAS,CAAC;IAChE,MAAM,MAAM,GAAG,IAAyC,CAAC;IACzD,IAAI,OAAO,MAAM,CAAC,KAAK,KAAK,QAAQ,IAAI,MAAM,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC;QAAE,OAAO,MAAM,CAAC,KAAK,CAAC;IACrF,OAAO,OAAO,MAAM,CAAC,EAAE,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC;AAC/D,CAAC;AAED,+DAA+D;AAC/D,SAAS,SAAS,CAAC,KAAY;IAC7B,MAAM,OAAO,GAAG,KAAK,CAAC,OAAqD,CAAC;IAC5E,IAAI,OAAO,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE,CAAC;QAC3C,MAAM,MAAM,GAAG,OAAO,OAAO,CAAC,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC;QAC/E,MAAM,GAAG,GAAG,OAAO,OAAO,CAAC,GAAG,KAAK,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,SAAS,CAAC;QACtE,IAAI,MAAM,IAAI,GAAG,EAAE,CAAC;YAClB,MAAM,MAAM,GAAG,OAAO,OAAO,CAAC,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAChF,OAAO,GAAG,MAAM,IAAI,GAAG,GAAG,MAAM,EAAE,CAAC;QACrC,CAAC;QACD,MAAM,KAAK,GAAG,OAAO,OAAO,CAAC,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC;QAC5E,MAAM,GAAG,GAAG,OAAO,OAAO,CAAC,GAAG,KAAK,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,SAAS,CAAC;QACtE,IAAI,KAAK;YAAE,OAAO,GAAG,CAAC,CAAC,CAAC,GAAG,GAAG,IAAI,KAAK,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC;QAClD,MAAM,OAAO,GAAG,OAAO,OAAO,CAAC,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC;QAClF,IAAI,OAAO;YAAE,OAAO,OAAO,CAAC;IAC9B,CAAC;IACD,OAAO,KAAK,CAAC,UAAU,IAAI,KAAK,CAAC,IAAI,CAAC;AACxC,CAAC;AAED,mEAAmE;AACnE,MAAM,UAAU,UAAU,CAAC,OAAkB;IAC3C,MAAM,KAAK,GAAe,EAAE,KAAK,EAAE,UAAU,CAAC,UAAU,CAAC,OAAO,EAAE,OAAO,CAAC,IAAI,aAAa,CAAC,EAAE,CAAC;IAC/F,MAAM,IAAI,GAAG,UAAU,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;IACzC,IAAI,IAAI,KAAK,SAAS;QAAE,KAAK,CAAC,IAAI,GAAG,IAAI,CAAC;IAC1C,MAAM,GAAG,GAAG,UAAU,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;IACvC,IAAI,GAAG,KAAK,SAAS;QAAE,KAAK,CAAC,GAAG,GAAG,GAAG,CAAC;IACvC,MAAM,OAAO,GAAG,UAAU,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC;IAC/C,IAAI,OAAO,KAAK,SAAS;QAAE,KAAK,CAAC,OAAO,GAAG,OAAO,CAAC;IACnD,MAAM,MAAM,GAAG,UAAU,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;IAC7C,IAAI,MAAM,KAAK,SAAS;QAAE,KAAK,CAAC,MAAM,GAAG,MAAM,CAAC;IAChD,MAAM,MAAM,GAAG,UAAU,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;IAC7C,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;QACzB,MAAM,IAAI,GAAG,IAAI,IAAI,CAAC,MAAM,CAAC,CAAC;QAC9B,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;YAAE,KAAK,CAAC,MAAM,GAAG,IAAI,CAAC;IACzD,CAAC;IACD,MAAM,IAAI,GAAG,UAAU,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;IACzC,IAAI,IAAI,KAAK,SAAS,IAAI,IAAI,GAAG,CAAC,EAAE,CAAC;QACnC,KAAK,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,IAAI,aAAa,CAAC,CAAC;IACzE,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED,8EAA8E;AAC9E,SAAS,QAAQ,CAAC,KAAiB;IACjC,MAAM,GAAG,GAA4B,EAAE,CAAC;IACxC,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QACjD,GAAG,CAAC,GAAG,CAAC,GAAG,KAAK,YAAY,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC;IACjE,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AAED,SAAS,UAAU,CAAC,KAAa,EAAE,GAAG,GAAW,SAAS;IACxD,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,KAAK,IAAI,CAAC;QAAE,OAAO,aAAa,CAAC;IAChE,OAAO,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,GAAG,CAAC,CAAC;AAC1C,CAAC;AAED,SAAS,UAAU,CAAC,OAAkB,EAAE,GAAW;IACjD,MAAM,KAAK,GAAG,OAAO,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC;IAChC,IAAI,OAAO,KAAK,KAAK,QAAQ;QAAE,OAAO,SAAS,CAAC;IAChD,MAAM,OAAO,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC;IAC7B,OAAO,OAAO,KAAK,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC;AAC9C,CAAC;AAED,SAAS,UAAU,CAAC,OAAkB,EAAE,GAAW;IACjD,MAAM,KAAK,GAAG,OAAO,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC;IAChC,IAAI,OAAO,KAAK,KAAK,QAAQ;QAAE,OAAO,KAAK,CAAC;IAC5C,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC;QACrD,MAAM,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;QAC7B,OAAO,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC;IACnD,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC"}
@@ -1,5 +1,5 @@
1
1
  /** Keep in sync with this package's `version` in package.json. */
2
- export declare const VERSION = "0.13.0";
2
+ export declare const VERSION = "0.14.0";
3
3
  export type { AccessDeniedInfo, AccessDeniedPageOptions, AccessDeniedReason, } from './access_denied_page.js';
4
4
  export { CONSOLE as ACCESS_DENIED_CONSOLE, escapeHtml, renderAccessDeniedPage, resolveAccessDeniedPage, } from './access_denied_page.js';
5
5
  export type { EntrySummary, RetentionInfo, RetentionOptions, RetentionPruneOptions, RetentionSamplingRate, } from './api.js';
@@ -1,5 +1,5 @@
1
1
  /** Keep in sync with this package's `version` in package.json. */
2
- export const VERSION = '0.13.0';
2
+ export const VERSION = '0.14.0';
3
3
  // — the built-in "access denied" page (what a browser sees on a refused page navigation) —
4
4
  export { CONSOLE as ACCESS_DENIED_CONSOLE, escapeHtml, renderAccessDeniedPage, resolveAccessDeniedPage, } from './access_denied_page.js';
5
5
  // — JSON API —
@@ -66,6 +66,31 @@ export interface QueryWatcherConfig {
66
66
  */
67
67
  normalize?: boolean;
68
68
  }
69
+ /**
70
+ * Tuning for the `redis` watcher. See `RedisWatcherOptions` for the full rationale —
71
+ * the short version is that recording every redis command is how telescope's own
72
+ * table becomes the busiest one in the database.
73
+ */
74
+ export interface RedisWatcherConfig {
75
+ /** Command names (case-insensitive) that are never recorded. */
76
+ ignoreCommands?: string[];
77
+ /** Key patterns never recorded — a string matches as a PREFIX, a RegExp as-is. */
78
+ ignoreKeys?: Array<string | RegExp>;
79
+ /** Connection names (exact, case-insensitive) whose commands are NOT recorded. */
80
+ ignoreConnections?: string[];
81
+ /** Record only this fraction of commands, 0..1. Default 1. */
82
+ sampleRate?: number;
83
+ /** Warn once when recording exceeds this many entries/minute. Default 600; 0 disables. */
84
+ floodWarnPerMinute?: number;
85
+ }
86
+ /** The fully-resolved `redis` watcher config (no optionals). */
87
+ export interface ResolvedRedisWatcherConfig {
88
+ ignoreCommands: string[];
89
+ ignoreKeys: Array<string | RegExp>;
90
+ ignoreConnections: string[];
91
+ sampleRate: number;
92
+ floodWarnPerMinute: number;
93
+ }
69
94
  /** The fully-resolved `query` watcher config (no optionals). */
70
95
  export interface ResolvedQueryWatcherConfig {
71
96
  slowMs: number;
@@ -153,6 +178,8 @@ export interface TelescopeWatchersConfig {
153
178
  watchers?: WatcherName[];
154
179
  /** Tuning for the Lucid `query` watcher (slow threshold, bindings, ignore-connections, normalize). */
155
180
  query?: QueryWatcherConfig;
181
+ /** Tuning for the `redis` watcher (ignore commands/keys/connections, sampling). */
182
+ redis?: RedisWatcherConfig;
156
183
  /** Tuning for the `http-client` watcher (slow threshold, ignore-hosts, body sizes). */
157
184
  httpClient?: HttpClientWatcherConfig;
158
185
  /** Tuning for the `profiling` watcher (slow-span threshold, min duration floor). */
@@ -167,6 +194,7 @@ export interface ResolvedTelescopeWatchersConfig {
167
194
  enabled: boolean;
168
195
  watchers: Set<WatcherName>;
169
196
  query: ResolvedQueryWatcherConfig;
197
+ redis: ResolvedRedisWatcherConfig;
170
198
  httpClient: ResolvedHttpClientWatcherConfig;
171
199
  profiling: ResolvedProfilingWatcherConfig;
172
200
  schedule: ResolvedScheduleWatcherConfig;
@@ -1 +1 @@
1
- {"version":3,"file":"define_config.d.ts","sourceRoot":"","sources":["../../../src/watchers/define_config.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"define_config.d.ts","sourceRoot":"","sources":["../../../src/watchers/define_config.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAEH,sDAAsD;AACtD,MAAM,MAAM,WAAW,GACnB,OAAO,GACP,MAAM,GACN,OAAO,GACP,aAAa,GACb,MAAM,GACN,OAAO,GACP,QAAQ,GACR,OAAO,GACP,WAAW,GACX,UAAU,GACV,eAAe,CAAC;AAEpB;;;;;GAKG;AACH,MAAM,WAAW,uBAAuB;IACtC,2EAA2E;IAC3E,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,wFAAwF;IACxF,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;IACvB,oFAAoF;IACpF,aAAa,CAAC,EAAE,OAAO,CAAC;CACzB;AAED,sEAAsE;AACtE,MAAM,WAAW,+BAA+B;IAC9C,MAAM,EAAE,MAAM,CAAC;IACf,WAAW,EAAE,MAAM,EAAE,CAAC;IACtB,aAAa,EAAE,OAAO,CAAC;CACxB;AAKD;;;;GAIG;AACH,MAAM,WAAW,kBAAkB;IACjC;8BAC0B;IAC1B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB;;;;;OAKG;IACH,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B;4EACwE;IACxE,iBAAiB,CAAC,EAAE,MAAM,EAAE,CAAC;IAC7B;;;;;OAKG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB;AAED;;;;GAIG;AACH,MAAM,WAAW,kBAAkB;IACjC,gEAAgE;IAChE,cAAc,CAAC,EAAE,MAAM,EAAE,CAAC;IAC1B,kFAAkF;IAClF,UAAU,CAAC,EAAE,KAAK,CAAC,MAAM,GAAG,MAAM,CAAC,CAAC;IACpC,kFAAkF;IAClF,iBAAiB,CAAC,EAAE,MAAM,EAAE,CAAC;IAC7B,8DAA8D;IAC9D,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,0FAA0F;IAC1F,kBAAkB,CAAC,EAAE,MAAM,CAAC;CAC7B;AAKD,gEAAgE;AAChE,MAAM,WAAW,0BAA0B;IACzC,cAAc,EAAE,MAAM,EAAE,CAAC;IACzB,UAAU,EAAE,KAAK,CAAC,MAAM,GAAG,MAAM,CAAC,CAAC;IACnC,iBAAiB,EAAE,MAAM,EAAE,CAAC;IAC5B,UAAU,EAAE,MAAM,CAAC;IACnB,kBAAkB,EAAE,MAAM,CAAC;CAC5B;AAED,gEAAgE;AAChE,MAAM,WAAW,0BAA0B;IACzC,MAAM,EAAE,MAAM,CAAC;IACf,eAAe,EAAE,OAAO,CAAC;IACzB,iBAAiB,EAAE,MAAM,EAAE,CAAC;IAC5B,SAAS,EAAE,OAAO,CAAC;CACpB;AAMD;;;;GAIG;AACH,MAAM,WAAW,sBAAsB;IACrC,iEAAiE;IACjE,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,0FAA0F;IAC1F,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAED,oEAAoE;AACpE,MAAM,WAAW,8BAA8B;IAC7C,MAAM,EAAE,MAAM,CAAC;IACf,aAAa,EAAE,MAAM,CAAC;CACvB;AAKD;;;;GAIG;AACH,MAAM,WAAW,qBAAqB;IACpC,iEAAiE;IACjE,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,mEAAmE;AACnE,MAAM,WAAW,6BAA6B;IAC5C,MAAM,EAAE,MAAM,CAAC;CAChB;AAKD;;;;;;GAMG;AACH,MAAM,WAAW,yBAAyB;IACxC;;;;OAIG;IACH,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;IAClB;yCACqC;IACrC,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,gEAAgE;AAChE,MAAM,WAAW,iCAAiC;IAChD,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,OAAO,EAAE,MAAM,GAAG,SAAS,CAAC;CAC7B;AAED;;;;GAIG;AACH,MAAM,WAAW,uBAAuB;IACtC;;;OAGG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;IAElB;;;;;;;;;;;;;OAaG;IACH,QAAQ,CAAC,EAAE,WAAW,EAAE,CAAC;IAEzB,sGAAsG;IACtG,KAAK,CAAC,EAAE,kBAAkB,CAAC;IAE3B,mFAAmF;IACnF,KAAK,CAAC,EAAE,kBAAkB,CAAC;IAE3B,uFAAuF;IACvF,UAAU,CAAC,EAAE,uBAAuB,CAAC;IAErC,oFAAoF;IACpF,SAAS,CAAC,EAAE,sBAAsB,CAAC;IAEnC,8DAA8D;IAC9D,QAAQ,CAAC,EAAE,qBAAqB,CAAC;IAEjC,2FAA2F;IAC3F,YAAY,CAAC,EAAE,yBAAyB,CAAC;CAC1C;AAED,8EAA8E;AAC9E,MAAM,WAAW,+BAA+B;IAC9C,OAAO,EAAE,OAAO,CAAC;IACjB,QAAQ,EAAE,GAAG,CAAC,WAAW,CAAC,CAAC;IAC3B,KAAK,EAAE,0BAA0B,CAAC;IAClC,KAAK,EAAE,0BAA0B,CAAC;IAClC,UAAU,EAAE,+BAA+B,CAAC;IAC5C,SAAS,EAAE,8BAA8B,CAAC;IAC1C,QAAQ,EAAE,6BAA6B,CAAC;IACxC,YAAY,EAAE,iCAAiC,CAAC;CACjD;AAED,mFAAmF;AACnF,eAAO,MAAM,gBAAgB,EAAE,WAAW,EAAc,CAAC;AAEzD;;;GAGG;AACH,wBAAgB,YAAY,CAAC,MAAM,EAAE,uBAAuB,GAAG,uBAAuB,CAErF;AAED,qDAAqD;AACrD,wBAAgB,aAAa,CAC3B,MAAM,GAAE,uBAA4B,GACnC,+BAA+B,CAwCjC"}
@@ -19,6 +19,8 @@
19
19
  */
20
20
  /** Default outbound slow-call threshold (ms). */
21
21
  const DEFAULT_HTTP_CLIENT_SLOW_MS = 1000;
22
+ /** Default flood threshold for the redis watcher (entries/minute). */
23
+ const DEFAULT_REDIS_FLOOD_WARN_PER_MINUTE = 600;
22
24
  /** Default slow-query threshold (ms). Databases are hotter than outbound HTTP, so
23
25
  * this is lower than the http-client default. */
24
26
  const DEFAULT_QUERY_SLOW_MS = 500;
@@ -40,6 +42,7 @@ export function resolveConfig(config = {}) {
40
42
  const query = config.query ?? {};
41
43
  const httpClient = config.httpClient ?? {};
42
44
  const profiling = config.profiling ?? {};
45
+ const redis = config.redis ?? {};
43
46
  const schedule = config.schedule ?? {};
44
47
  const queueManager = config.queueManager ?? {};
45
48
  return {
@@ -51,6 +54,13 @@ export function resolveConfig(config = {}) {
51
54
  ignoreConnections: query.ignoreConnections ?? [],
52
55
  normalize: query.normalize ?? true,
53
56
  },
57
+ redis: {
58
+ ignoreCommands: redis.ignoreCommands ?? [],
59
+ ignoreKeys: redis.ignoreKeys ?? [],
60
+ ignoreConnections: redis.ignoreConnections ?? [],
61
+ sampleRate: redis.sampleRate ?? 1,
62
+ floodWarnPerMinute: redis.floodWarnPerMinute ?? DEFAULT_REDIS_FLOOD_WARN_PER_MINUTE,
63
+ },
54
64
  httpClient: {
55
65
  slowMs: httpClient.slowMs ?? DEFAULT_HTTP_CLIENT_SLOW_MS,
56
66
  ignoreHosts: httpClient.ignoreHosts ?? [],
@@ -1 +1 @@
1
- {"version":3,"file":"define_config.js","sourceRoot":"","sources":["../../../src/watchers/define_config.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAsCH,iDAAiD;AACjD,MAAM,2BAA2B,GAAG,IAAI,CAAC;AAsCzC;kDACkD;AAClD,MAAM,qBAAqB,GAAG,GAAG,CAAC;AAoBlC,sDAAsD;AACtD,MAAM,yBAAyB,GAAG,GAAG,CAAC;AAiBtC,2DAA2D;AAC3D,MAAM,wBAAwB,GAAG,IAAI,CAAC;AAkFtC,mFAAmF;AACnF,MAAM,CAAC,MAAM,gBAAgB,GAAkB,CAAC,OAAO,CAAC,CAAC;AAEzD;;;GAGG;AACH,MAAM,UAAU,YAAY,CAAC,MAA+B;IAC1D,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,qDAAqD;AACrD,MAAM,UAAU,aAAa,CAC3B,MAAM,GAA4B,EAAE;IAEpC,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,IAAI,EAAE,CAAC;IACjC,MAAM,UAAU,GAAG,MAAM,CAAC,UAAU,IAAI,EAAE,CAAC;IAC3C,MAAM,SAAS,GAAG,MAAM,CAAC,SAAS,IAAI,EAAE,CAAC;IACzC,MAAM,QAAQ,GAAG,MAAM,CAAC,QAAQ,IAAI,EAAE,CAAC;IACvC,MAAM,YAAY,GAAG,MAAM,CAAC,YAAY,IAAI,EAAE,CAAC;IAC/C,OAAO;QACL,OAAO,EAAE,MAAM,CAAC,OAAO,IAAI,IAAI;QAC/B,QAAQ,EAAE,IAAI,GAAG,CAAC,MAAM,CAAC,QAAQ,IAAI,gBAAgB,CAAC;QACtD,KAAK,EAAE;YACL,MAAM,EAAE,KAAK,CAAC,MAAM,IAAI,qBAAqB;YAC7C,eAAe,EAAE,KAAK,CAAC,eAAe,IAAI,KAAK;YAC/C,iBAAiB,EAAE,KAAK,CAAC,iBAAiB,IAAI,EAAE;YAChD,SAAS,EAAE,KAAK,CAAC,SAAS,IAAI,IAAI;SACnC;QACD,UAAU,EAAE;YACV,MAAM,EAAE,UAAU,CAAC,MAAM,IAAI,2BAA2B;YACxD,WAAW,EAAE,UAAU,CAAC,WAAW,IAAI,EAAE;YACzC,aAAa,EAAE,UAAU,CAAC,aAAa,IAAI,KAAK;SACjD;QACD,SAAS,EAAE;YACT,MAAM,EAAE,SAAS,CAAC,MAAM,IAAI,yBAAyB;YACrD,aAAa,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,SAAS,CAAC,aAAa,IAAI,CAAC,CAAC;SACzD;QACD,QAAQ,EAAE;YACR,MAAM,EAAE,QAAQ,CAAC,MAAM,IAAI,wBAAwB;SACpD;QACD,YAAY,EAAE;YACZ,MAAM,EAAE,YAAY,CAAC,MAAM,IAAI,EAAE;YACjC,OAAO,EAAE,YAAY,CAAC,OAAO;SAC9B;KACF,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"define_config.js","sourceRoot":"","sources":["../../../src/watchers/define_config.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAsCH,iDAAiD;AACjD,MAAM,2BAA2B,GAAG,IAAI,CAAC;AAgDzC,sEAAsE;AACtE,MAAM,mCAAmC,GAAG,GAAG,CAAC;AAmBhD;kDACkD;AAClD,MAAM,qBAAqB,GAAG,GAAG,CAAC;AAoBlC,sDAAsD;AACtD,MAAM,yBAAyB,GAAG,GAAG,CAAC;AAiBtC,2DAA2D;AAC3D,MAAM,wBAAwB,GAAG,IAAI,CAAC;AAsFtC,mFAAmF;AACnF,MAAM,CAAC,MAAM,gBAAgB,GAAkB,CAAC,OAAO,CAAC,CAAC;AAEzD;;;GAGG;AACH,MAAM,UAAU,YAAY,CAAC,MAA+B;IAC1D,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,qDAAqD;AACrD,MAAM,UAAU,aAAa,CAC3B,MAAM,GAA4B,EAAE;IAEpC,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,IAAI,EAAE,CAAC;IACjC,MAAM,UAAU,GAAG,MAAM,CAAC,UAAU,IAAI,EAAE,CAAC;IAC3C,MAAM,SAAS,GAAG,MAAM,CAAC,SAAS,IAAI,EAAE,CAAC;IACzC,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,IAAI,EAAE,CAAC;IACjC,MAAM,QAAQ,GAAG,MAAM,CAAC,QAAQ,IAAI,EAAE,CAAC;IACvC,MAAM,YAAY,GAAG,MAAM,CAAC,YAAY,IAAI,EAAE,CAAC;IAC/C,OAAO;QACL,OAAO,EAAE,MAAM,CAAC,OAAO,IAAI,IAAI;QAC/B,QAAQ,EAAE,IAAI,GAAG,CAAC,MAAM,CAAC,QAAQ,IAAI,gBAAgB,CAAC;QACtD,KAAK,EAAE;YACL,MAAM,EAAE,KAAK,CAAC,MAAM,IAAI,qBAAqB;YAC7C,eAAe,EAAE,KAAK,CAAC,eAAe,IAAI,KAAK;YAC/C,iBAAiB,EAAE,KAAK,CAAC,iBAAiB,IAAI,EAAE;YAChD,SAAS,EAAE,KAAK,CAAC,SAAS,IAAI,IAAI;SACnC;QACD,KAAK,EAAE;YACL,cAAc,EAAE,KAAK,CAAC,cAAc,IAAI,EAAE;YAC1C,UAAU,EAAE,KAAK,CAAC,UAAU,IAAI,EAAE;YAClC,iBAAiB,EAAE,KAAK,CAAC,iBAAiB,IAAI,EAAE;YAChD,UAAU,EAAE,KAAK,CAAC,UAAU,IAAI,CAAC;YACjC,kBAAkB,EAAE,KAAK,CAAC,kBAAkB,IAAI,mCAAmC;SACpF;QACD,UAAU,EAAE;YACV,MAAM,EAAE,UAAU,CAAC,MAAM,IAAI,2BAA2B;YACxD,WAAW,EAAE,UAAU,CAAC,WAAW,IAAI,EAAE;YACzC,aAAa,EAAE,UAAU,CAAC,aAAa,IAAI,KAAK;SACjD;QACD,SAAS,EAAE;YACT,MAAM,EAAE,SAAS,CAAC,MAAM,IAAI,yBAAyB;YACrD,aAAa,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,SAAS,CAAC,aAAa,IAAI,CAAC,CAAC;SACzD;QACD,QAAQ,EAAE;YACR,MAAM,EAAE,QAAQ,CAAC,MAAM,IAAI,wBAAwB;SACpD;QACD,YAAY,EAAE;YACZ,MAAM,EAAE,YAAY,CAAC,MAAM,IAAI,EAAE;YACjC,OAAO,EAAE,YAAY,CAAC,OAAO;SAC9B;KACF,CAAC;AACJ,CAAC"}
@@ -1,9 +1,9 @@
1
1
  /** Keep in sync with this package's `version` in package.json. */
2
- export declare const VERSION = "0.13.0";
2
+ export declare const VERSION = "0.14.0";
3
3
  export type { CacheEntryContent, CacheEventLike, CacheOperation } from './cache_watcher.js';
4
4
  export { buildCacheEntry, CACHE_EVENTS, CacheWatcher } from './cache_watcher.js';
5
5
  export { nextCronRunMs } from './cron_next_run.js';
6
- export type { HttpClientWatcherConfig, ProfilingWatcherConfig, QueryWatcherConfig, QueueManagerWatcherConfig, ResolvedHttpClientWatcherConfig, ResolvedProfilingWatcherConfig, ResolvedQueryWatcherConfig, ResolvedQueueManagerWatcherConfig, ResolvedScheduleWatcherConfig, ResolvedTelescopeWatchersConfig, ScheduleWatcherConfig, TelescopeWatchersConfig, WatcherName, } from './define_config.js';
6
+ export type { HttpClientWatcherConfig, ProfilingWatcherConfig, QueryWatcherConfig, QueueManagerWatcherConfig, RedisWatcherConfig, ResolvedHttpClientWatcherConfig, ResolvedProfilingWatcherConfig, ResolvedQueryWatcherConfig, ResolvedQueueManagerWatcherConfig, ResolvedRedisWatcherConfig, ResolvedScheduleWatcherConfig, ResolvedTelescopeWatchersConfig, ScheduleWatcherConfig, TelescopeWatchersConfig, WatcherName, } from './define_config.js';
7
7
  export { DEFAULT_WATCHERS, defineConfig, resolveConfig, } from './define_config.js';
8
8
  export type { EmitterLike, Watcher } from './emitter.js';
9
9
  export type { EmitterAnyLike, EventEntryContent } from './events_watcher.js';
@@ -25,8 +25,8 @@ export { isQueueAction, isQueueState, QUEUE_ACTIONS, QUEUE_STATES, QueueManagerD
25
25
  export type { AcquiredJobLike, JobEntryContent, JobExecuteMessageLike, JobStatus, QueueWatcherOptions, } from './queue_watcher.js';
26
26
  export { buildJobEntry, QUEUE_EXECUTE_CHANNEL, QueueWatcher } from './queue_watcher.js';
27
27
  export { resolveStore, safeRecord } from './record.js';
28
- export type { RedisClientLike, RedisCommandLike, RedisConnectionLike, RedisEntryContent, RedisManagerLike, } from './redis_watcher.js';
29
- export { buildRedisEntry, RedisWatcher } from './redis_watcher.js';
28
+ export type { RedisClientLike, RedisCommandLike, RedisConnectionLike, RedisEntryContent, RedisManagerLike, RedisWatcherOptions, } from './redis_watcher.js';
29
+ export { buildRedisEntry, formatFloodWarning, RedisWatcher } from './redis_watcher.js';
30
30
  export type { RegisteredSchedule, ScheduledRun, ScheduledTaskOptions, ScheduleEntryContent, ScheduleKind, ScheduleRegistration, ScheduleRunStatus, ScheduleWatcherOptions, } from './schedule_watcher.js';
31
31
  export { buildScheduleEntry, listRegisteredSchedules, recordScheduledRun, registerSchedule, SCHEDULED_TASK_ENTRY_TYPE, ScheduleWatcher, scheduleTask, toRegisteredSchedule, unregisterSchedule, } from './schedule_watcher.js';
32
32
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/watchers/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/watchers/index.ts"],"names":[],"mappings":"AAAA,kEAAkE;AAClE,eAAO,MAAM,OAAO,WAAW,CAAC;AAEhC,YAAY,EAAE,iBAAiB,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAE5F,OAAO,EAAE,eAAe,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AACjF,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,YAAY,EACV,uBAAuB,EACvB,sBAAsB,EACtB,kBAAkB,EAClB,yBAAyB,EACzB,kBAAkB,EAClB,+BAA+B,EAC/B,8BAA8B,EAC9B,0BAA0B,EAC1B,iCAAiC,EACjC,0BAA0B,EAC1B,6BAA6B,EAC7B,+BAA+B,EAC/B,qBAAqB,EACrB,uBAAuB,EACvB,WAAW,GACZ,MAAM,oBAAoB,CAAC;AAE5B,OAAO,EACL,gBAAgB,EAChB,YAAY,EACZ,aAAa,GACd,MAAM,oBAAoB,CAAC;AAE5B,YAAY,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AACzD,YAAY,EAAE,cAAc,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAE7E,OAAO,EACL,eAAe,EACf,sBAAsB,EACtB,aAAa,EACb,QAAQ,GACT,MAAM,qBAAqB,CAAC;AAC7B,YAAY,EACV,sBAAsB,EACtB,wBAAwB,EACxB,YAAY,GACb,MAAM,0BAA0B,CAAC;AAGlC,OAAO,EACL,oBAAoB,EACpB,iBAAiB,EACjB,eAAe,EACf,iBAAiB,GAClB,MAAM,0BAA0B,CAAC;AAClC,YAAY,EACV,eAAe,EACf,UAAU,EACV,QAAQ,EACR,kBAAkB,GACnB,MAAM,mBAAmB,CAAC;AAE3B,OAAO,EAAE,aAAa,EAAE,UAAU,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AACvF,YAAY,EACV,gBAAgB,EAChB,wBAAwB,EACxB,iBAAiB,GAClB,MAAM,0BAA0B,CAAC;AAElC,OAAO,EAAE,eAAe,EAAE,cAAc,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAC9F,YAAY,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AAE7E,OAAO,EAAE,cAAc,EAAE,eAAe,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AACjF,OAAO,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AACjE,YAAY,EACV,gBAAgB,EAChB,mBAAmB,EACnB,WAAW,EACX,cAAc,EACd,aAAa,EACb,uBAAuB,GACxB,MAAM,wBAAwB,CAAC;AAEhC,OAAO,EACL,iBAAiB,EACjB,kBAAkB,EAClB,gBAAgB,EAChB,OAAO,EACP,YAAY,GACb,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AACzD,YAAY,EACV,OAAO,EACP,eAAe,EACf,gBAAgB,EAChB,iBAAiB,EACjB,WAAW,EACX,QAAQ,EACR,cAAc,EACd,kBAAkB,EAClB,SAAS,EACT,YAAY,EACZ,yBAAyB,EACzB,UAAU,EACV,YAAY,GACb,MAAM,oBAAoB,CAAC;AAE5B,OAAO,EACL,aAAa,EACb,YAAY,EACZ,aAAa,EACb,YAAY,EACZ,kBAAkB,GACnB,MAAM,oBAAoB,CAAC;AAC5B,YAAY,EACV,eAAe,EACf,eAAe,EACf,qBAAqB,EACrB,SAAS,EACT,mBAAmB,GACpB,MAAM,oBAAoB,CAAC;AAE5B,OAAO,EAAE,aAAa,EAAE,qBAAqB,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAExF,OAAO,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAEvD,YAAY,EACV,eAAe,EACf,gBAAgB,EAChB,mBAAmB,EACnB,iBAAiB,EACjB,gBAAgB,EAChB,mBAAmB,GACpB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,eAAe,EAAE,kBAAkB,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AACvF,YAAY,EACV,kBAAkB,EAClB,YAAY,EACZ,oBAAoB,EACpB,oBAAoB,EACpB,YAAY,EACZ,oBAAoB,EACpB,iBAAiB,EACjB,sBAAsB,GACvB,MAAM,uBAAuB,CAAC;AAE/B,OAAO,EACL,kBAAkB,EAClB,uBAAuB,EACvB,kBAAkB,EAClB,gBAAgB,EAChB,yBAAyB,EACzB,eAAe,EACf,YAAY,EACZ,oBAAoB,EACpB,kBAAkB,GACnB,MAAM,uBAAuB,CAAC"}
@@ -1,5 +1,5 @@
1
1
  /** Keep in sync with this package's `version` in package.json. */
2
- export const VERSION = '0.13.0';
2
+ export const VERSION = '0.14.0';
3
3
  // — cache watcher —
4
4
  export { buildCacheEntry, CACHE_EVENTS, CacheWatcher } from './cache_watcher.js';
5
5
  export { nextCronRunMs } from './cron_next_run.js';
@@ -25,8 +25,7 @@ export { isQueueAction, isQueueState, QUEUE_ACTIONS, QUEUE_STATES, QueueManagerD
25
25
  export { buildJobEntry, QUEUE_EXECUTE_CHANNEL, QueueWatcher } from './queue_watcher.js';
26
26
  // — runtime recording (advanced) —
27
27
  export { resolveStore, safeRecord } from './record.js';
28
- // — redis watcher (optional peer: @adonisjs/redis) —
29
- export { buildRedisEntry, RedisWatcher } from './redis_watcher.js';
28
+ export { buildRedisEntry, formatFloodWarning, RedisWatcher } from './redis_watcher.js';
30
29
  // — schedule watcher (scheduled-task runs; explicit wrapper integration) —
31
30
  export { buildScheduleEntry, listRegisteredSchedules, recordScheduledRun, registerSchedule, SCHEDULED_TASK_ENTRY_TYPE, ScheduleWatcher, scheduleTask, toRegisteredSchedule, unregisterSchedule, } from './schedule_watcher.js';
32
31
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/watchers/index.ts"],"names":[],"mappings":"AAAA,kEAAkE;AAClE,MAAM,CAAC,MAAM,OAAO,GAAG,QAAQ,CAAC;AAGhC,oBAAoB;AACpB,OAAO,EAAE,eAAe,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AACjF,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAgBnD,aAAa;AACb,OAAO,EACL,gBAAgB,EAChB,YAAY,EACZ,aAAa,GACd,MAAM,oBAAoB,CAAC;AAI5B,mDAAmD;AACnD,OAAO,EACL,eAAe,EACf,sBAAsB,EACtB,aAAa,EACb,QAAQ,GACT,MAAM,qBAAqB,CAAC;AAO7B,qCAAqC;AACrC,OAAO,EACL,oBAAoB,EACpB,iBAAiB,EACjB,eAAe,EACf,iBAAiB,GAClB,MAAM,0BAA0B,CAAC;AAOlC,mBAAmB;AACnB,OAAO,EAAE,aAAa,EAAE,UAAU,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAMvF,iDAAiD;AACjD,OAAO,EAAE,eAAe,EAAE,cAAc,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAE9F,mBAAmB;AACnB,OAAO,EAAE,cAAc,EAAE,eAAe,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AACjF,OAAO,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AASjE,mEAAmE;AACnE,OAAO,EACL,iBAAiB,EACjB,kBAAkB,EAClB,gBAAgB,EAChB,OAAO,EACP,YAAY,GACb,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAgBzD,8EAA8E;AAC9E,OAAO,EACL,aAAa,EACb,YAAY,EACZ,aAAa,EACb,YAAY,EACZ,kBAAkB,GACnB,MAAM,oBAAoB,CAAC;AAQ5B,0DAA0D;AAC1D,OAAO,EAAE,aAAa,EAAE,qBAAqB,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AACxF,mCAAmC;AACnC,OAAO,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAQvD,qDAAqD;AACrD,OAAO,EAAE,eAAe,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAWnE,2EAA2E;AAC3E,OAAO,EACL,kBAAkB,EAClB,uBAAuB,EACvB,kBAAkB,EAClB,gBAAgB,EAChB,yBAAyB,EACzB,eAAe,EACf,YAAY,EACZ,oBAAoB,EACpB,kBAAkB,GACnB,MAAM,uBAAuB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/watchers/index.ts"],"names":[],"mappings":"AAAA,kEAAkE;AAClE,MAAM,CAAC,MAAM,OAAO,GAAG,QAAQ,CAAC;AAGhC,oBAAoB;AACpB,OAAO,EAAE,eAAe,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AACjF,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAkBnD,aAAa;AACb,OAAO,EACL,gBAAgB,EAChB,YAAY,EACZ,aAAa,GACd,MAAM,oBAAoB,CAAC;AAI5B,mDAAmD;AACnD,OAAO,EACL,eAAe,EACf,sBAAsB,EACtB,aAAa,EACb,QAAQ,GACT,MAAM,qBAAqB,CAAC;AAO7B,qCAAqC;AACrC,OAAO,EACL,oBAAoB,EACpB,iBAAiB,EACjB,eAAe,EACf,iBAAiB,GAClB,MAAM,0BAA0B,CAAC;AAOlC,mBAAmB;AACnB,OAAO,EAAE,aAAa,EAAE,UAAU,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAMvF,iDAAiD;AACjD,OAAO,EAAE,eAAe,EAAE,cAAc,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAE9F,mBAAmB;AACnB,OAAO,EAAE,cAAc,EAAE,eAAe,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AACjF,OAAO,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AASjE,mEAAmE;AACnE,OAAO,EACL,iBAAiB,EACjB,kBAAkB,EAClB,gBAAgB,EAChB,OAAO,EACP,YAAY,GACb,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAgBzD,8EAA8E;AAC9E,OAAO,EACL,aAAa,EACb,YAAY,EACZ,aAAa,EACb,YAAY,EACZ,kBAAkB,GACnB,MAAM,oBAAoB,CAAC;AAQ5B,0DAA0D;AAC1D,OAAO,EAAE,aAAa,EAAE,qBAAqB,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AACxF,mCAAmC;AACnC,OAAO,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAUvD,OAAO,EAAE,eAAe,EAAE,kBAAkB,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAWvF,2EAA2E;AAC3E,OAAO,EACL,kBAAkB,EAClB,uBAAuB,EACvB,kBAAkB,EAClB,gBAAgB,EAChB,yBAAyB,EACzB,eAAe,EACf,YAAY,EACZ,oBAAoB,EACpB,kBAAkB,GACnB,MAAM,uBAAuB,CAAC"}
@@ -33,25 +33,6 @@ export interface LogsWatcherOptions {
33
33
  /** Extra tags appended to every recorded log entry. */
34
34
  tags?: readonly string[];
35
35
  }
36
- /**
37
- * Records AdonisJS `Logger` output as `EntryType.Log` entries, correlated to the
38
- * active request via the trace id.
39
- *
40
- * ## How it taps the logger (non-invasive, reversible)
41
- * Rather than monkey-patching a global or a prototype, `start(logger)` tees the
42
- * level methods on the ONE logger instance resolved from the container. Each teed
43
- * method calls the original first (host output is untouched) and then records.
44
- * `stop()` restores the originals, so the tap fully unwinds on shutdown.
45
- *
46
- * Pino has no supported post-construction transport/hook for a live instance, so
47
- * instance-scoped method-teeing is the least-invasive option that captures logs
48
- * written through the app logger without owning its construction. The tee is
49
- * idempotent per instance (a `Symbol.for` marker) and a reentrancy guard prevents
50
- * an infinite record→log loop.
51
- *
52
- * Recording is fire-and-forget and fully guarded — a telescope failure can never
53
- * break the host's logging.
54
- */
55
36
  export declare class LogsWatcher {
56
37
  readonly type: "log";
57
38
  private readonly minLevelIndex;
@@ -1 +1 @@
1
- {"version":3,"file":"logs_watcher.d.ts","sourceRoot":"","sources":["../../../src/watchers/logs_watcher.ts"],"names":[],"mappings":"AACA,OAAO,EAAa,KAAK,WAAW,EAAE,MAAM,aAAa,CAAC;AAG1D,iFAAiF;AACjF,eAAO,MAAM,UAAU,YAAI,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,CAAU,CAAC;AACxF,MAAM,MAAM,QAAQ,GAAG,CAAC,OAAO,UAAU,CAAC,CAAC,MAAM,CAAC,CAAC;AAEnD;;2CAE2C;AAC3C,KAAK,SAAS,GAAG,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,IAAI,CAAC;AAE9C;;;;;GAKG;AACH,MAAM,MAAM,UAAU,GAAG;KACtB,KAAK,IAAI,QAAQ,CAAC,CAAC,EAAE,SAAS;CAChC,CAAC;AAEF,0CAA0C;AAC1C,MAAM,WAAW,eAAe;IAC9B,8CAA8C;IAC9C,KAAK,EAAE,QAAQ,CAAC;IAChB,8EAA8E;IAC9E,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,oFAAoF;IACpF,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAAC;IACxC,kDAAkD;IAClD,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;CACxB;AAED,uCAAuC;AACvC,MAAM,WAAW,kBAAkB;IACjC,8EAA8E;IAC9E,QAAQ,CAAC,EAAE,QAAQ,CAAC;IACpB,uDAAuD;IACvD,IAAI,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;CAC1B;AAkBD;;;;;;;;;;;;;;;;;;GAkBG;AACH,qBAAa,WAAW;IACtB,QAAQ,CAAC,IAAI,QAAiB;IAC9B,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAS;IACvC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAoB;IAC9C,OAAO,CAAC,MAAM,CAA2B;IACzC,sFAAsF;IACtF,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAkB;IAE7C,YAAY,OAAO,GAAE,kBAAuB,EAG3C;IAED;;;;;;;;;;OAUG;IACH,KAAK,CAAC,MAAM,EAAE,UAAU,GAAG,IAAI,CAgD9B;IAED;;;;OAIG;IACH,IAAI,IAAI,IAAI,CAUX;IAED,oEAAoE;IACpE,OAAO,CAAC,MAAM;CAGf;AAUD;;;;;GAKG;AACH,wBAAgB,UAAU,CAAC,IAAI,EAAE,OAAO,EAAE,GAAG;IAC3C,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAAC;CACzC,CAQA;AAeD;kEACkE;AAClE,wBAAgB,aAAa,CAC3B,KAAK,EAAE,QAAQ,EACf,IAAI,EAAE,OAAO,EAAE,EACf,SAAS,GAAE,SAAS,MAAM,EAAO,GAChC,WAAW,CAAC,eAAe,CAAC,CAW9B"}
1
+ {"version":3,"file":"logs_watcher.d.ts","sourceRoot":"","sources":["../../../src/watchers/logs_watcher.ts"],"names":[],"mappings":"AACA,OAAO,EAAa,KAAK,WAAW,EAAE,MAAM,aAAa,CAAC;AAG1D,iFAAiF;AACjF,eAAO,MAAM,UAAU,YAAI,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,CAAU,CAAC;AACxF,MAAM,MAAM,QAAQ,GAAG,CAAC,OAAO,UAAU,CAAC,CAAC,MAAM,CAAC,CAAC;AAEnD;;2CAE2C;AAC3C,KAAK,SAAS,GAAG,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,IAAI,CAAC;AAE9C;;;;;GAKG;AACH,MAAM,MAAM,UAAU,GAAG;KACtB,KAAK,IAAI,QAAQ,CAAC,CAAC,EAAE,SAAS;CAChC,CAAC;AAEF,0CAA0C;AAC1C,MAAM,WAAW,eAAe;IAC9B,8CAA8C;IAC9C,KAAK,EAAE,QAAQ,CAAC;IAChB,8EAA8E;IAC9E,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,oFAAoF;IACpF,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAAC;IACxC,kDAAkD;IAClD,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;CACxB;AAED,uCAAuC;AACvC,MAAM,WAAW,kBAAkB;IACjC,8EAA8E;IAC9E,QAAQ,CAAC,EAAE,QAAQ,CAAC;IACpB,uDAAuD;IACvD,IAAI,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;CAC1B;AA+CD,qBAAa,WAAW;IACtB,QAAQ,CAAC,IAAI,QAAiB;IAC9B,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAS;IACvC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAoB;IAC9C,OAAO,CAAC,MAAM,CAA2B;IACzC,sFAAsF;IACtF,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAkB;IAE7C,YAAY,OAAO,GAAE,kBAAuB,EAG3C;IAED;;;;;;;;;;OAUG;IACH,KAAK,CAAC,MAAM,EAAE,UAAU,GAAG,IAAI,CA4D9B;IAED;;;;OAIG;IACH,IAAI,IAAI,IAAI,CAUX;IAED,oEAAoE;IACpE,OAAO,CAAC,MAAM;CAGf;AAUD;;;;;GAKG;AACH,wBAAgB,UAAU,CAAC,IAAI,EAAE,OAAO,EAAE,GAAG;IAC3C,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAAC;CACzC,CAQA;AAeD;kEACkE;AAClE,wBAAgB,aAAa,CAC3B,KAAK,EAAE,QAAQ,EACf,IAAI,EAAE,OAAO,EAAE,EACf,SAAS,GAAE,SAAS,MAAM,EAAO,GAChC,WAAW,CAAC,eAAe,CAAC,CAW9B"}
@@ -31,6 +31,17 @@ let recording = false;
31
31
  * Recording is fire-and-forget and fully guarded — a telescope failure can never
32
32
  * break the host's logging.
33
33
  */
34
+ /** A short, safe description of a non-logger value, for the warning above. */
35
+ function describeForWarning(value) {
36
+ if (value === null)
37
+ return 'null';
38
+ if (value === undefined)
39
+ return 'undefined';
40
+ if (typeof value === 'object' && typeof value.then === 'function') {
41
+ return 'a Promise';
42
+ }
43
+ return `a ${typeof value}`;
44
+ }
34
45
  export class LogsWatcher {
35
46
  type = EntryType.Log;
36
47
  minLevelIndex;
@@ -97,6 +108,17 @@ export class LogsWatcher {
97
108
  "either `watchers: ['logs']` in config/telescope.ts (which also accepts a `logs` " +
98
109
  "options block) or `watchers: ['logs']` in config/telescope_watchers.ts.");
99
110
  }
111
+ else {
112
+ // Nothing to tee and nobody else holding the tap means we were handed
113
+ // something that is not a logger at all. This used to return in silence, and
114
+ // the silence is what made a caller passing an unawaited
115
+ // `container.make('logger')` promise cost weeks of an empty Logs screen: no
116
+ // error, no warning, just a watcher that never fired.
117
+ console.warn("Telescope: the 'logs' watcher was given a value with no log-level methods " +
118
+ `(got ${describeForWarning(logger)}), so NO logs will be recorded. ` +
119
+ 'If you are wiring this by hand, note that `container.make("logger")` ' +
120
+ 'returns a Promise and has to be awaited.');
121
+ }
100
122
  return;
101
123
  }
102
124
  this.logger = logger;
@@ -1 +1 @@
1
- {"version":3,"file":"logs_watcher.js","sourceRoot":"","sources":["../../../src/watchers/logs_watcher.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"logs_watcher.js","sourceRoot":"","sources":["../../../src/watchers/logs_watcher.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AACxD,OAAO,EAAE,SAAS,EAAoB,MAAM,aAAa,CAAC;AAC1D,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAEzC,iFAAiF;AACjF,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,CAAU,CAAC;AAsCxF;gDACgD;AAChD,MAAM,IAAI,GAAG,MAAM,CAAC,GAAG,CAAC,gCAAgC,CAAC,CAAC;AAO1D;;;;GAIG;AACH,IAAI,SAAS,GAAG,KAAK,CAAC;AAEtB;;;;;;;;;;;;;;;;;;GAkBG;AACH,8EAA8E;AAC9E,SAAS,kBAAkB,CAAC,KAAc;IACxC,IAAI,KAAK,KAAK,IAAI;QAAE,OAAO,MAAM,CAAC;IAClC,IAAI,KAAK,KAAK,SAAS;QAAE,OAAO,WAAW,CAAC;IAC5C,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,OAAQ,KAA4B,CAAC,IAAI,KAAK,UAAU,EAAE,CAAC;QAC1F,OAAO,WAAW,CAAC;IACrB,CAAC;IACD,OAAO,KAAK,OAAO,KAAK,EAAE,CAAC;AAC7B,CAAC;AAED,MAAM,OAAO,WAAW;IACb,IAAI,GAAG,SAAS,CAAC,GAAG,CAAC;IACb,aAAa,CAAS;IACtB,SAAS,CAAoB;IACtC,MAAM,GAAsB,IAAI,CAAC;IACzC,sFAAsF;IACrE,UAAU,GAAe,EAAE,CAAC;IAE7C,YAAY,OAAO,GAAuB,EAAE;QAC1C,IAAI,CAAC,aAAa,GAAG,UAAU,CAAC,OAAO,CAAC,OAAO,CAAC,QAAQ,IAAI,OAAO,CAAC,CAAC;QACrE,IAAI,CAAC,SAAS,GAAG,OAAO,CAAC,IAAI,IAAI,EAAE,CAAC;IACtC,CAAC;IAED;;;;;;;;;;OAUG;IACH,KAAK,CAAC,MAAkB;QACtB,IAAI,IAAI,CAAC,MAAM;YAAE,OAAO;QACxB,MAAM,OAAO,GAAG,IAAI,CAAC;QACrB,IAAI,WAAW,GAAG,KAAK,CAAC;QAExB,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,UAAU,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE,CAAC;YACvD,MAAM,KAAK,GAAa,UAAU,CAAC,KAAK,CAAa,CAAC;YACtD,MAAM,QAAQ,GAAG,MAAM,CAAC,KAAK,CAA2B,CAAC;YACzD,IAAI,OAAO,QAAQ,KAAK,UAAU;gBAAE,SAAS;YAC7C,IAAI,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;gBACnB,WAAW,GAAG,IAAI,CAAC;gBACnB,SAAS;YACX,CAAC;YAED,MAAM,IAAI,GAAG,SAAS,SAAS,CAAgB,GAAG,IAAe;gBAC/D,oEAAoE;gBACpE,qDAAqD;gBACrD,IAAI,SAAS,EAAE,CAAC;oBACd,QAAQ,CAAC,KAAK,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;oBAC3B,OAAO;gBACT,CAAC;gBACD,QAAQ,CAAC,KAAK,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;gBAC3B,IAAI,KAAK,GAAG,OAAO,CAAC,aAAa;oBAAE,OAAO;gBAC1C,SAAS,GAAG,IAAI,CAAC;gBACjB,IAAI,CAAC;oBACH,OAAO,CAAC,MAAM,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;gBAC9B,CAAC;wBAAS,CAAC;oBACT,SAAS,GAAG,KAAK,CAAC;gBACpB,CAAC;YACH,CAAe,CAAC;YAChB,IAAI,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;YAClB,IAAI,CAAC,qBAAqB,GAAG,QAAQ,CAAC;YACtC,MAAM,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC;YACrB,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC9B,CAAC;QAED,IAAI,IAAI,CAAC,UAAU,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACjC,IAAI,WAAW,EAAE,CAAC;gBAChB,OAAO,CAAC,IAAI,CACV,+EAA+E;oBAC7E,+EAA+E;oBAC/E,kFAAkF;oBAClF,yEAAyE,CAC5E,CAAC;YACJ,CAAC;iBAAM,CAAC;gBACN,sEAAsE;gBACtE,6EAA6E;gBAC7E,yDAAyD;gBACzD,4EAA4E;gBAC5E,sDAAsD;gBACtD,OAAO,CAAC,IAAI,CACV,4EAA4E;oBAC1E,QAAQ,kBAAkB,CAAC,MAAM,CAAC,kCAAkC;oBACpE,uEAAuE;oBACvE,0CAA0C,CAC7C,CAAC;YACJ,CAAC;YACD,OAAO;QACT,CAAC;QACD,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;IACvB,CAAC;IAED;;;;OAIG;IACH,IAAI;QACF,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;QAC3B,IAAI,CAAC,MAAM;YAAE,OAAO;QACpB,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC;QACnB,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC;YAC9C,MAAM,OAAO,GAAG,MAAM,CAAC,KAAK,CAA2B,CAAC;YACxD,IAAI,OAAO,EAAE,CAAC,IAAI,CAAC,IAAI,OAAO,CAAC,qBAAqB,EAAE,CAAC;gBACrD,MAAM,CAAC,KAAK,CAAC,GAAG,OAAO,CAAC,qBAAqB,CAAC;YAChD,CAAC;QACH,CAAC;IACH,CAAC;IAED,oEAAoE;IAC5D,MAAM,CAAC,KAAe,EAAE,IAAe;QAC7C,UAAU,CAAC,aAAa,CAAC,KAAK,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,aAAa,CAAC,CAAC;IACxE,CAAC;CACF;AAED;sFACsF;AACtF,SAAS,aAAa,CAAC,KAAc;IACnC,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI;QAAE,OAAO,KAAK,CAAC;IAC9D,MAAM,KAAK,GAAG,MAAM,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC;IAC3C,OAAO,KAAK,KAAK,MAAM,CAAC,SAAS,IAAI,KAAK,KAAK,IAAI,CAAC;AACtD,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,UAAU,CAAC,IAAe;IAIxC,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,GAAG,IAAI,CAAC;IAC7B,IAAI,aAAa,CAAC,KAAK,CAAC,EAAE,CAAC;QACzB,MAAM,OAAO,GAAG,YAAY,CAAC,KAAK,CAAC,CAAC;QACpC,MAAM,OAAO,GAAG,OAAO,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC;QAC3D,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC;IAC9B,CAAC;IACD,OAAO,EAAE,OAAO,EAAE,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;AAC9E,CAAC;AAED;qEACqE;AACrE,SAAS,YAAY,CAAC,MAA+B;IACnD,MAAM,GAAG,GAA4B,EAAE,CAAC;IACxC,IAAI,KAAK,GAAG,CAAC,CAAC;IACd,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC;QACtC,IAAI,KAAK,IAAI,EAAE;YAAE,MAAM;QACvB,GAAG,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC;QACvB,KAAK,EAAE,CAAC;IACV,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AAED;kEACkE;AAClE,MAAM,UAAU,aAAa,CAC3B,KAAe,EACf,IAAe,EACf,SAAS,GAAsB,EAAE;IAEjC,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC;IAC9C,MAAM,OAAO,GAAG,cAAc,EAAE,CAAC;IACjC,MAAM,OAAO,GAAoB,EAAE,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC;IACtE,OAAO;QACL,IAAI,EAAE,SAAS,CAAC,GAAG;QACnB,UAAU,EAAE,OAAO,KAAK,EAAE;QAC1B,OAAO;QACP,OAAO;QACP,IAAI,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,EAAE,EAAE,GAAG,SAAS,CAAC;KAC5C,CAAC;AACJ,CAAC"}
@@ -51,6 +51,52 @@ export interface RedisEntryContent {
51
51
  /** The active trace id at command time, or `null`. */
52
52
  traceId: string | null;
53
53
  }
54
+ /**
55
+ * Tuning for the redis watcher.
56
+ *
57
+ * Redis is the highest-frequency thing most apps touch, and a watcher that records
58
+ * EVERY command turns telescope's own table into the busiest table in the database.
59
+ * The observed case that motivated these options: `@adonisjs/limiter` issues
60
+ * ~5 commands (`MULTI`/`GET`/`PTTL`/`EVALSHA`/`EXEC`) per rate-limited request, and
61
+ * recording them produced 211 entries/minute — 93% of a 532k-row table, none of it
62
+ * about the application.
63
+ *
64
+ * Nothing is filtered by DEFAULT: what counts as noise is the app's call, and a lib
65
+ * that silently drops a command someone is debugging is worse than a loud table. The
66
+ * default is instead {@link floodWarnPerMinute}, which makes the cost announce itself.
67
+ */
68
+ export interface RedisWatcherOptions {
69
+ /**
70
+ * Command names (case-insensitive) that are never recorded — e.g.
71
+ * `['MULTI', 'EXEC', 'PTTL']` to drop transaction bookkeeping while keeping the
72
+ * reads and writes it wraps.
73
+ */
74
+ ignoreCommands?: string[];
75
+ /**
76
+ * Key patterns whose commands are never recorded. A string matches as a PREFIX
77
+ * (`'myapp:rlflx:'` drops every rate-limiter key); a RegExp is tested as-is. Only
78
+ * the first argument is examined, which is the key for every keyed redis command.
79
+ */
80
+ ignoreKeys?: Array<string | RegExp>;
81
+ /** Connection names (exact, case-insensitive) whose commands are NOT recorded —
82
+ * e.g. drop the connection telescope's own redis store uses. */
83
+ ignoreConnections?: string[];
84
+ /**
85
+ * Record only this fraction of commands, 0..1. Default `1` (record all).
86
+ *
87
+ * Sampling is per-COMMAND, so a sampled trace shows some of its redis calls and
88
+ * not others — good for volume, bad for reading one request end-to-end. Prefer
89
+ * {@link ignoreKeys} when you know what the noise is; reach for sampling when you
90
+ * do not.
91
+ */
92
+ sampleRate?: number;
93
+ /**
94
+ * Warn (once) on stderr when recording exceeds this many entries per minute,
95
+ * naming the loudest command and key prefix so the fix is a paste. Default 600.
96
+ * Set `0` to disable.
97
+ */
98
+ floodWarnPerMinute?: number;
99
+ }
54
100
  /**
55
101
  * Records every Redis command issued through `@adonisjs/redis` as a `redis`
56
102
  * telescope entry — the command name, args, connection and round-trip duration,
@@ -82,9 +128,27 @@ export declare class RedisWatcher {
82
128
  /** Clients we patched, with their connection name, for clean restore on stop. */
83
129
  private readonly wrapped;
84
130
  private unsubscribeManager;
131
+ private readonly ignoreCommands;
132
+ private readonly ignoreKeys;
133
+ private readonly ignoreConnections;
134
+ private readonly sampleRate;
135
+ private readonly floodWarnPerMinute;
136
+ /** Flood accounting: entries recorded in the current minute, plus the loudest
137
+ * command/key seen, so the warning can name the actual culprit. */
138
+ private windowStartedAt;
139
+ private windowCount;
140
+ private readonly windowCommands;
141
+ private readonly windowKeyPrefixes;
142
+ private floodWarned;
85
143
  /** Construct with the resolved `@adonisjs/redis` manager (or `null` when the
86
144
  * optional peer is absent — the watcher then no-ops). */
87
- constructor(manager: unknown);
145
+ constructor(manager: unknown, options?: RedisWatcherOptions);
146
+ /**
147
+ * Whether this command is recorded. Ordered cheapest-first: the connection and
148
+ * command checks are set lookups, the key check walks the (usually empty) pattern
149
+ * list, and sampling comes last so a filtered-out command never burns entropy.
150
+ */
151
+ shouldRecord(command: RedisCommandLike, connection: string | null): boolean;
88
152
  /** Instrument current + future connections. Idempotent. A no-op when the peer
89
153
  * is absent. */
90
154
  start(): void;
@@ -96,7 +160,20 @@ export declare class RedisWatcher {
96
160
  * method or is already wrapped. */
97
161
  private wrap;
98
162
  private record;
163
+ /**
164
+ * Count what we record in a rolling one-minute window and, the first time it
165
+ * crosses the threshold, warn ONCE naming the loudest command and key prefix.
166
+ *
167
+ * This exists because the failure mode is silent: nothing breaks, the app is fine,
168
+ * and you only discover the watcher is writing 300k rows/day when a console screen
169
+ * gets slow enough to complain about. Naming the culprit turns the fix into a paste
170
+ * instead of an investigation.
171
+ */
172
+ private accountForFlood;
99
173
  }
174
+ /** The flood warning text. Exported for tests — the VALUE here is that the message
175
+ * names the culprit and the exact option, so it is worth pinning. */
176
+ export declare function formatFloodWarning(count: number, commands: Map<string, number>, keyPrefixes: Map<string, number>): string;
100
177
  /** Map a captured Redis command to a telescope {@link RecordInput}. Exported so
101
178
  * the entry shape can be unit-tested without a real ioredis client. */
102
179
  export declare function buildRedisEntry(command: RedisCommandLike, connection: string | null, durationMs: number | null): RecordInput<RedisEntryContent>;
@@ -1 +1 @@
1
- {"version":3,"file":"redis_watcher.d.ts","sourceRoot":"","sources":["../../../src/watchers/redis_watcher.ts"],"names":[],"mappings":"AACA,OAAO,EAAa,KAAK,WAAW,EAAE,MAAM,aAAa,CAAC;AAG1D;;;;GAIG;AACH,MAAM,WAAW,gBAAgB;IAC/B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,OAAO,EAAE,CAAC;CAClB;AAED;;;;;;GAMG;AACH,MAAM,WAAW,eAAe;IAC9B,WAAW,CAAC,OAAO,EAAE,gBAAgB,EAAE,GAAG,IAAI,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC;CACrE;AAED;;;;GAIG;AACH,MAAM,WAAW,mBAAmB;IAClC,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,sBAAsB,CAAC,EAAE,OAAO,CAAC;CAClC;AAED;;;;;GAKG;AACH,MAAM,WAAW,gBAAgB;IAC/B,iBAAiB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,mBAAmB,CAAC,GAAG,SAAS,CAAC;IACpE,EAAE,CAAC,CAAC,KAAK,EAAE,YAAY,EAAE,QAAQ,EAAE,CAAC,UAAU,EAAE,mBAAmB,KAAK,IAAI,GAAG,MAAM,IAAI,CAAC;CAC3F;AAED,4CAA4C;AAC5C,MAAM,WAAW,iBAAiB;IAChC,oDAAoD;IACpD,OAAO,EAAE,MAAM,CAAC;IAChB,sEAAsE;IACtE,IAAI,EAAE,OAAO,EAAE,CAAC;IAChB,sDAAsD;IACtD,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,+DAA+D;IAC/D,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,sDAAsD;IACtD,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;CACxB;AAoCD;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,qBAAa,YAAY;IACvB,QAAQ,CAAC,IAAI,UAAmB;IAChC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAA0B;IAClD,iFAAiF;IACjF,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAwE;IAChG,OAAO,CAAC,kBAAkB,CAA6B;IAEvD;8DAC0D;IAC1D,YAAY,OAAO,EAAE,OAAO,EAE3B;IAED;qBACiB;IACjB,KAAK,IAAI,IAAI,CAcZ;IAED,iFAAiF;IACjF,IAAI,IAAI,IAAI,CAYX;IAED,uDAAuD;IACvD,OAAO,CAAC,UAAU;IAOlB;wCACoC;IACpC,OAAO,CAAC,IAAI;IAgCZ,OAAO,CAAC,MAAM;CAOf;AAOD;wEACwE;AACxE,wBAAgB,eAAe,CAC7B,OAAO,EAAE,gBAAgB,EACzB,UAAU,EAAE,MAAM,GAAG,IAAI,EACzB,UAAU,EAAE,MAAM,GAAG,IAAI,GACxB,WAAW,CAAC,iBAAiB,CAAC,CAoBhC"}
1
+ {"version":3,"file":"redis_watcher.d.ts","sourceRoot":"","sources":["../../../src/watchers/redis_watcher.ts"],"names":[],"mappings":"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"}
@@ -24,6 +24,19 @@ function isThenable(value) {
24
24
  'then' in value &&
25
25
  typeof value.then === 'function');
26
26
  }
27
+ /** Default flood threshold (entries/minute) — see {@link RedisWatcherOptions.floodWarnPerMinute}. */
28
+ const DEFAULT_FLOOD_WARN_PER_MINUTE = 600;
29
+ /** The first argument of a redis command, as a string, or `null` when unkeyed. */
30
+ function firstKey(command) {
31
+ const args = command.args;
32
+ if (!Array.isArray(args) || args.length === 0)
33
+ return null;
34
+ const key = args[0];
35
+ if (typeof key === 'string')
36
+ return key;
37
+ // ioredis passes Buffers for binary-safe keys; only decode when it is cheap.
38
+ return typeof Buffer !== 'undefined' && Buffer.isBuffer(key) ? key.toString('utf8') : null;
39
+ }
27
40
  /**
28
41
  * Records every Redis command issued through `@adonisjs/redis` as a `redis`
29
42
  * telescope entry — the command name, args, connection and round-trip duration,
@@ -55,10 +68,53 @@ export class RedisWatcher {
55
68
  /** Clients we patched, with their connection name, for clean restore on stop. */
56
69
  wrapped = [];
57
70
  unsubscribeManager = null;
71
+ ignoreCommands;
72
+ ignoreKeys;
73
+ ignoreConnections;
74
+ sampleRate;
75
+ floodWarnPerMinute;
76
+ /** Flood accounting: entries recorded in the current minute, plus the loudest
77
+ * command/key seen, so the warning can name the actual culprit. */
78
+ windowStartedAt = now();
79
+ windowCount = 0;
80
+ windowCommands = new Map();
81
+ windowKeyPrefixes = new Map();
82
+ floodWarned = false;
58
83
  /** Construct with the resolved `@adonisjs/redis` manager (or `null` when the
59
84
  * optional peer is absent — the watcher then no-ops). */
60
- constructor(manager) {
85
+ constructor(manager, options = {}) {
61
86
  this.manager = isManager(manager) ? manager : null;
87
+ this.ignoreCommands = new Set((options.ignoreCommands ?? []).map((c) => c.toUpperCase()));
88
+ this.ignoreKeys = options.ignoreKeys ?? [];
89
+ this.ignoreConnections = new Set((options.ignoreConnections ?? []).map((c) => c.toLowerCase()));
90
+ // Clamp rather than throw: a bad sampleRate should not take the app down at boot.
91
+ this.sampleRate = Math.min(1, Math.max(0, options.sampleRate ?? 1));
92
+ this.floodWarnPerMinute = Math.max(0, options.floodWarnPerMinute ?? DEFAULT_FLOOD_WARN_PER_MINUTE);
93
+ }
94
+ /**
95
+ * Whether this command is recorded. Ordered cheapest-first: the connection and
96
+ * command checks are set lookups, the key check walks the (usually empty) pattern
97
+ * list, and sampling comes last so a filtered-out command never burns entropy.
98
+ */
99
+ shouldRecord(command, connection) {
100
+ if (connection !== null && this.ignoreConnections.has(connection.toLowerCase()))
101
+ return false;
102
+ const name = typeof command.name === 'string' ? command.name.toUpperCase() : '';
103
+ if (this.ignoreCommands.has(name))
104
+ return false;
105
+ if (this.ignoreKeys.length > 0) {
106
+ const key = firstKey(command);
107
+ if (key !== null) {
108
+ for (const pattern of this.ignoreKeys) {
109
+ const hit = typeof pattern === 'string' ? key.startsWith(pattern) : pattern.test(key);
110
+ if (hit)
111
+ return false;
112
+ }
113
+ }
114
+ }
115
+ if (this.sampleRate < 1 && Math.random() >= this.sampleRate)
116
+ return false;
117
+ return true;
62
118
  }
63
119
  /** Instrument current + future connections. Idempotent. A no-op when the peer
64
120
  * is absent. */
@@ -114,6 +170,11 @@ export class RedisWatcher {
114
170
  client.__telescopeOriginalSendCommand__ = original;
115
171
  this.wrapped.push({ client, connection });
116
172
  client.sendCommand = function patchedSendCommand(command, ...rest) {
173
+ // Decided BEFORE the call so a filtered command costs one set lookup and
174
+ // never allocates a finalize closure or attaches to the command's promise.
175
+ if (!watcher.shouldRecord(command, connection)) {
176
+ return original.call(client, command, ...rest);
177
+ }
117
178
  const startedAt = now();
118
179
  const result = original.call(client, command, ...rest);
119
180
  if (isThenable(result)) {
@@ -129,8 +190,70 @@ export class RedisWatcher {
129
190
  };
130
191
  }
131
192
  record(command, connection, durationMs) {
193
+ this.accountForFlood(command);
132
194
  safeRecord(buildRedisEntry(command, connection, durationMs), 'RedisWatcher');
133
195
  }
196
+ /**
197
+ * Count what we record in a rolling one-minute window and, the first time it
198
+ * crosses the threshold, warn ONCE naming the loudest command and key prefix.
199
+ *
200
+ * This exists because the failure mode is silent: nothing breaks, the app is fine,
201
+ * and you only discover the watcher is writing 300k rows/day when a console screen
202
+ * gets slow enough to complain about. Naming the culprit turns the fix into a paste
203
+ * instead of an investigation.
204
+ */
205
+ accountForFlood(command) {
206
+ if (this.floodWarnPerMinute === 0 || this.floodWarned)
207
+ return;
208
+ const elapsed = now() - this.windowStartedAt;
209
+ if (elapsed >= 60_000) {
210
+ this.windowStartedAt = now();
211
+ this.windowCount = 0;
212
+ this.windowCommands.clear();
213
+ this.windowKeyPrefixes.clear();
214
+ }
215
+ this.windowCount++;
216
+ const name = typeof command.name === 'string' ? command.name.toUpperCase() : '(unknown)';
217
+ this.windowCommands.set(name, (this.windowCommands.get(name) ?? 0) + 1);
218
+ const key = firstKey(command);
219
+ if (key !== null) {
220
+ // Group by the first two colon-segments — `app:rlflx:foo` → `app:rlflx`, which
221
+ // is the granularity someone would actually paste into `ignoreKeys`.
222
+ const prefix = key.split(':').slice(0, 2).join(':');
223
+ this.windowKeyPrefixes.set(prefix, (this.windowKeyPrefixes.get(prefix) ?? 0) + 1);
224
+ }
225
+ if (this.windowCount < this.floodWarnPerMinute)
226
+ return;
227
+ this.floodWarned = true;
228
+ console.warn(formatFloodWarning(this.windowCount, this.windowCommands, this.windowKeyPrefixes));
229
+ }
230
+ }
231
+ /** Largest-count entry of a tally, or `null` when empty. */
232
+ function topOf(tally) {
233
+ let top = null;
234
+ for (const [name, count] of tally) {
235
+ if (top === null || count > top.count)
236
+ top = { name, count };
237
+ }
238
+ return top;
239
+ }
240
+ /** The flood warning text. Exported for tests — the VALUE here is that the message
241
+ * names the culprit and the exact option, so it is worth pinning. */
242
+ export function formatFloodWarning(count, commands, keyPrefixes) {
243
+ const command = topOf(commands);
244
+ const prefix = topOf(keyPrefixes);
245
+ const lines = [
246
+ `Telescope: the redis watcher recorded ${count} entries in the last minute. ` +
247
+ 'At that rate it will dominate your telescope table and slow the console down.',
248
+ ];
249
+ if (command)
250
+ lines.push(` loudest command: ${command.name} (${command.count})`);
251
+ if (prefix) {
252
+ lines.push(` loudest key prefix: ${prefix.name} (${prefix.count})`);
253
+ lines.push(` to drop it: redis: { ignoreKeys: ['${prefix.name}:'] } in config/telescope_watchers.ts`);
254
+ }
255
+ lines.push(' (or set redis.floodWarnPerMinute: 0 to silence this warning)');
256
+ return lines.join('\n');
134
257
  }
135
258
  /** Narrow an arbitrary value to a {@link RedisManagerLike}. */
136
259
  function isManager(value) {