vafast 0.4.6 → 0.4.8

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 (163) hide show
  1. package/README.md +43 -8
  2. package/dist/base-server-B7MYJNsl.mjs +112 -0
  3. package/dist/{base-server-DMhpmq5v.mjs.map → base-server-B7MYJNsl.mjs.map} +1 -1
  4. package/dist/{base-server-CtA1bZSg.d.mts → base-server-DLxtulAO.d.mts} +2 -2
  5. package/dist/{base64url-DUtluDF0.mjs → base64url-C2zopQdH.mjs} +1 -1
  6. package/dist/{base64url-DUtluDF0.mjs.map → base64url-C2zopQdH.mjs.map} +1 -1
  7. package/dist/{base64url-0N9uQPjZ.d.mts → base64url-Dwi2Afhc.d.mts} +1 -1
  8. package/dist/{component-route-DF5feXJI.d.mts → component-route-nrrO0iSI.d.mts} +2 -2
  9. package/dist/{component-router-uSylkByf.mjs → component-router-RwPL20vN.mjs} +10 -11
  10. package/dist/{component-router-uSylkByf.mjs.map → component-router-RwPL20vN.mjs.map} +1 -1
  11. package/dist/component-server-DomPJ_7S.mjs +119 -0
  12. package/dist/{component-server-DIgykV0F.mjs.map → component-server-DomPJ_7S.mjs.map} +1 -1
  13. package/dist/{component-server-DvcPVnL4.d.mts → component-server-JqpDC7wy.d.mts} +4 -4
  14. package/dist/{create-handler-DRcJRkx9.d.mts → create-handler-DKw-sQOV.d.mts} +2 -2
  15. package/dist/{create-handler-IzOE24L5.mjs → create-handler-RconAcAB.mjs} +5 -6
  16. package/dist/{create-handler-IzOE24L5.mjs.map → create-handler-RconAcAB.mjs.map} +1 -1
  17. package/dist/defineRoute.d.mts +3 -3
  18. package/dist/{dependency-manager-C_qZvkaw.d.mts → dependency-manager-C3_7ic4h.d.mts} +1 -1
  19. package/dist/dependency-manager-DCmh7xFc.mjs +60 -0
  20. package/dist/{dependency-manager-BpN2YufZ.mjs.map → dependency-manager-DCmh7xFc.mjs.map} +1 -1
  21. package/dist/{formats-CYLwo9GJ.d.mts → formats-Dk-DSBY4.d.mts} +1 -1
  22. package/dist/{go-await-2Pzj4snS.mjs → go-await-C4ZdEUwY.mjs} +1 -1
  23. package/dist/{go-await-2Pzj4snS.mjs.map → go-await-C4ZdEUwY.mjs.map} +1 -1
  24. package/dist/{go-await-DRItVwwh.d.mts → go-await-DL1A_-4X.d.mts} +1 -1
  25. package/dist/{handle-D0TFoOiX.d.mts → handle-BhR3oyky.d.mts} +1 -1
  26. package/dist/{handle-s4V-E2RE.mjs → handle-BxJwSvV0.mjs} +2 -2
  27. package/dist/{handle-s4V-E2RE.mjs.map → handle-BxJwSvV0.mjs.map} +1 -1
  28. package/dist/{html-renderer-CMGKJoIy.d.mts → html-renderer-CfKK2BrP.d.mts} +1 -1
  29. package/dist/{html-renderer-CuakkPIt.mjs → html-renderer-DTtJ_Yic.mjs} +26 -27
  30. package/dist/{html-renderer-CuakkPIt.mjs.map → html-renderer-DTtJ_Yic.mjs.map} +1 -1
  31. package/dist/{index-CdOYxwDQ.d.mts → index-CEfOqqvd.d.mts} +5 -5
  32. package/dist/index.d.mts +24 -24
  33. package/dist/index.mjs +20 -23
  34. package/dist/index.mjs.map +1 -1
  35. package/dist/middleware/component-router.d.mts +1 -1
  36. package/dist/middleware/component-router.mjs +1 -2
  37. package/dist/{middleware-CV5o-4wk.mjs → middleware-CewKbtb4.mjs} +51 -58
  38. package/dist/{middleware-CV5o-4wk.mjs.map → middleware-CewKbtb4.mjs.map} +1 -1
  39. package/dist/{middleware-5PjaxPMA.d.mts → middleware-KXEoefLX.d.mts} +2 -2
  40. package/dist/middleware.d.mts +3 -3
  41. package/dist/middleware.mjs +1 -2
  42. package/dist/monitoring/index.d.mts +8 -33
  43. package/dist/monitoring/index.mjs +1 -27
  44. package/dist/monitoring/native-monitor.d.mts +148 -27
  45. package/dist/monitoring/native-monitor.mjs +320 -116
  46. package/dist/monitoring/native-monitor.mjs.map +1 -1
  47. package/dist/node-server/index.d.mts +1 -1
  48. package/dist/node-server/index.mjs +3 -3
  49. package/dist/node-server/request.mjs +1 -1
  50. package/dist/node-server/response.mjs +1 -1
  51. package/dist/node-server/serve.d.mts +1 -1
  52. package/dist/node-server/serve.mjs +2 -2
  53. package/dist/{parsers-7lvt3Oss.d.mts → parsers-BerGr2_q.d.mts} +1 -1
  54. package/dist/{parsers-BQ63b0YE.mjs → parsers-DpH_mD0H.mjs} +1 -1
  55. package/dist/{parsers-BQ63b0YE.mjs.map → parsers-DpH_mD0H.mjs.map} +1 -1
  56. package/dist/path-matcher-CGczAIl_.mjs +61 -0
  57. package/dist/{path-matcher-BNaaJgI3.mjs.map → path-matcher-CGczAIl_.mjs.map} +1 -1
  58. package/dist/radix-tree-qqSjnVXF.mjs +163 -0
  59. package/dist/{radix-tree-Qxr-QpCx.mjs.map → radix-tree-qqSjnVXF.mjs.map} +1 -1
  60. package/dist/{request-B886yCvG.mjs → request-B-Nct5f7.mjs} +1 -1
  61. package/dist/{request-B886yCvG.mjs.map → request-B-Nct5f7.mjs.map} +1 -1
  62. package/dist/{request-validator-DLFtm4uV.mjs → request-validator-Bz9X48FX.mjs} +3 -3
  63. package/dist/{request-validator-DLFtm4uV.mjs.map → request-validator-Bz9X48FX.mjs.map} +1 -1
  64. package/dist/{request-validator-42lY21gn.d.mts → request-validator-Coo8dI-p.d.mts} +2 -2
  65. package/dist/{response-CxYf6Ep3.d.mts → response-BMfdEcTm.d.mts} +2 -2
  66. package/dist/{response-30WnzABq.mjs → response-BnkYA4pj.mjs} +1 -1
  67. package/dist/{response-30WnzABq.mjs.map → response-BnkYA4pj.mjs.map} +1 -1
  68. package/dist/{route-CUbNpSwz.d.mts → route-6A7umH7b.d.mts} +2 -2
  69. package/dist/{route-B3ONOzxQ.mjs → route-Ds53PR4M.mjs} +1 -1
  70. package/dist/{route-B3ONOzxQ.mjs.map → route-Ds53PR4M.mjs.map} +1 -1
  71. package/dist/{route-registry-CYD7m6QP.d.mts → route-registry-CmABJA2V.d.mts} +2 -2
  72. package/dist/route-registry-emTmRrWQ.mjs +226 -0
  73. package/dist/{route-registry-BVvbghgH.mjs.map → route-registry-emTmRrWQ.mjs.map} +1 -1
  74. package/dist/router/index.d.mts +2 -2
  75. package/dist/router/index.mjs +3 -9
  76. package/dist/router/radix-tree.d.mts +3 -3
  77. package/dist/router/radix-tree.mjs +1 -2
  78. package/dist/{router-B9HUUCkR.mjs → router-xWzwz_1a.mjs} +2 -5
  79. package/dist/{router-B9HUUCkR.mjs.map → router-xWzwz_1a.mjs.map} +1 -1
  80. package/dist/router.d.mts +3 -3
  81. package/dist/router.mjs +1 -2
  82. package/dist/{schema-DOKg31ZX.d.mts → schema-B6DFN5c2.d.mts} +1 -1
  83. package/dist/{serve-DgWBnexE.mjs → serve-48LEIkPa.mjs} +3 -3
  84. package/dist/{serve-DgWBnexE.mjs.map → serve-48LEIkPa.mjs.map} +1 -1
  85. package/dist/{serve-B5WmhK6m.d.mts → serve-AG80VaIr.d.mts} +1 -1
  86. package/dist/serve.d.mts +1 -1
  87. package/dist/serve.mjs +2 -2
  88. package/dist/server/base-server.d.mts +3 -3
  89. package/dist/server/base-server.mjs +1 -2
  90. package/dist/server/component-server.d.mts +4 -4
  91. package/dist/server/component-server.mjs +2 -3
  92. package/dist/server/index.d.mts +6 -6
  93. package/dist/server/index.mjs +6 -7
  94. package/dist/server/server-factory.d.mts +6 -6
  95. package/dist/server/server-factory.mjs +5 -6
  96. package/dist/server/server.d.mts +4 -4
  97. package/dist/server/server.mjs +2 -3
  98. package/dist/server-C75o1b-a.mjs +70 -0
  99. package/dist/server-C75o1b-a.mjs.map +1 -0
  100. package/dist/{server-CWIZP6nb.d.mts → server-DGA3dd5s.d.mts} +3 -3
  101. package/dist/server-L_FNwdap.mjs +137 -0
  102. package/dist/{server-C3yoZXNs.mjs.map → server-L_FNwdap.mjs.map} +1 -1
  103. package/dist/{sse-BDIptC85.d.mts → sse-BgLhEo43.d.mts} +2 -2
  104. package/dist/{sse-CCVfFW6s.mjs → sse-CBl-szg1.mjs} +3 -3
  105. package/dist/{sse-CCVfFW6s.mjs.map → sse-CBl-szg1.mjs.map} +1 -1
  106. package/dist/types/component-route.d.mts +1 -1
  107. package/dist/types/index.d.mts +5 -5
  108. package/dist/types/index.mjs +1 -1
  109. package/dist/types/route.d.mts +1 -1
  110. package/dist/types/route.mjs +1 -1
  111. package/dist/types/schema.d.mts +1 -1
  112. package/dist/types/types.d.mts +1 -1
  113. package/dist/{types-mpeSaHdI.d.mts → types-D1PUFkda.d.mts} +1 -1
  114. package/dist/utils/base64url.d.mts +1 -1
  115. package/dist/utils/base64url.mjs +1 -1
  116. package/dist/utils/create-handler.d.mts +2 -2
  117. package/dist/utils/create-handler.mjs +4 -4
  118. package/dist/utils/dependency-manager.d.mts +1 -1
  119. package/dist/utils/dependency-manager.mjs +1 -2
  120. package/dist/utils/formats.d.mts +1 -1
  121. package/dist/utils/go-await.d.mts +1 -1
  122. package/dist/utils/go-await.mjs +1 -1
  123. package/dist/utils/handle.d.mts +1 -1
  124. package/dist/utils/handle.mjs +2 -2
  125. package/dist/utils/html-renderer.d.mts +1 -1
  126. package/dist/utils/html-renderer.mjs +1 -2
  127. package/dist/utils/index.d.mts +16 -16
  128. package/dist/utils/index.mjs +13 -21
  129. package/dist/utils/parsers.d.mts +1 -1
  130. package/dist/utils/parsers.mjs +1 -1
  131. package/dist/utils/path-matcher.mjs +1 -2
  132. package/dist/utils/request-validator.d.mts +2 -2
  133. package/dist/utils/request-validator.mjs +3 -3
  134. package/dist/utils/response.d.mts +4 -4
  135. package/dist/utils/response.mjs +1 -2
  136. package/dist/utils/route-registry.d.mts +3 -3
  137. package/dist/utils/route-registry.mjs +1 -2
  138. package/dist/utils/sse.d.mts +2 -2
  139. package/dist/utils/sse.mjs +3 -3
  140. package/dist/utils/validators/validators.d.mts +1 -1
  141. package/dist/utils/validators/validators.mjs +1 -1
  142. package/dist/{validators-CPmnj_y9.d.mts → validators-Ch71zkT8.d.mts} +1 -1
  143. package/dist/{validators-WXQ49LcR.mjs → validators-DBkyw6BG.mjs} +1 -1
  144. package/dist/{validators-WXQ49LcR.mjs.map → validators-DBkyw6BG.mjs.map} +1 -1
  145. package/package.json +6 -1
  146. package/dist/base-server-DMhpmq5v.mjs +0 -113
  147. package/dist/chunk-DW4-Jl94.mjs +0 -37
  148. package/dist/component-server-DIgykV0F.mjs +0 -124
  149. package/dist/dependency-manager-BpN2YufZ.mjs +0 -61
  150. package/dist/monitoring/index.mjs.map +0 -1
  151. package/dist/monitoring/types.d.mts +0 -150
  152. package/dist/path-matcher-BNaaJgI3.mjs +0 -62
  153. package/dist/radix-tree-Qxr-QpCx.mjs +0 -157
  154. package/dist/route-registry-BVvbghgH.mjs +0 -225
  155. package/dist/router/index.mjs.map +0 -1
  156. package/dist/schema-CflsMJuG.mjs +0 -1
  157. package/dist/server-BttM6Ssc.mjs +0 -88
  158. package/dist/server-BttM6Ssc.mjs.map +0 -1
  159. package/dist/server-C3yoZXNs.mjs +0 -136
  160. package/dist/utils/index.mjs.map +0 -1
  161. /package/dist/{component-route-BKUFoJ5P.mjs → component-route-DNgAj6VC.mjs} +0 -0
  162. /package/dist/{index-CTHojwxd.d.mts → index-CREkvfw9.d.mts} +0 -0
  163. /package/dist/{monitoring/types.mjs → schema-1fwiv7cm.mjs} +0 -0
@@ -1,4 +1,4 @@
1
- import "./schema-DOKg31ZX.mjs";
2
- import "./index-CTHojwxd.mjs";
3
- import { n as composeMiddleware, t as VafastError } from "./middleware-5PjaxPMA.mjs";
1
+ import "./schema-B6DFN5c2.mjs";
2
+ import "./index-CREkvfw9.mjs";
3
+ import { n as composeMiddleware, t as VafastError } from "./middleware-KXEoefLX.mjs";
4
4
  export { VafastError, composeMiddleware };
@@ -1,4 +1,3 @@
1
- import { n as composeMiddleware, r as init_middleware, t as VafastError } from "./middleware-CV5o-4wk.mjs";
1
+ import { n as composeMiddleware, t as VafastError } from "./middleware-CewKbtb4.mjs";
2
2
 
3
- init_middleware();
4
3
  export { VafastError, composeMiddleware };
@@ -1,33 +1,8 @@
1
- import "../schema-DOKg31ZX.mjs";
2
- import "../index-CTHojwxd.mjs";
3
- import "../base-server-CtA1bZSg.mjs";
4
- import "../server-CWIZP6nb.mjs";
5
- import "../component-server-DvcPVnL4.mjs";
6
- import "../index-CdOYxwDQ.mjs";
7
- import { AggregatedMetrics, BaseMetrics, MonitoringConfig, MonitoringEvent, PerformanceMetrics, PerformanceReport } from "./types.mjs";
8
- import { MonitoredServer, NativeMonitoringConfig, NativeMonitoringMetrics, createMonitoredServer, withMonitoring } from "./native-monitor.mjs";
9
-
10
- //#region src/monitoring/index.d.ts
11
- declare const defaultMonitoringConfig: {
12
- enabled: boolean;
13
- console: boolean;
14
- slowThreshold: number;
15
- errorThreshold: number;
16
- tags: {
17
- framework: string;
18
- version: string;
19
- };
20
- };
21
- declare function createMonitoringConfig(config?: Partial<typeof defaultMonitoringConfig>): {
22
- enabled: boolean;
23
- console: boolean;
24
- slowThreshold: number;
25
- errorThreshold: number;
26
- tags: {
27
- framework: string;
28
- version: string;
29
- };
30
- };
31
- //#endregion
32
- export { AggregatedMetrics, BaseMetrics, MonitoredServer, MonitoringConfig, MonitoringEvent, NativeMonitoringConfig, NativeMonitoringMetrics, PerformanceMetrics, PerformanceReport, createMonitoredServer, createMonitoringConfig, defaultMonitoringConfig, withMonitoring };
33
- //# sourceMappingURL=index.d.mts.map
1
+ import "../schema-B6DFN5c2.mjs";
2
+ import "../index-CREkvfw9.mjs";
3
+ import "../base-server-DLxtulAO.mjs";
4
+ import "../server-DGA3dd5s.mjs";
5
+ import "../component-server-JqpDC7wy.mjs";
6
+ import "../index-CEfOqqvd.mjs";
7
+ import { MemoryInfo, MonitoredServer, MonitoringConfig, MonitoringMetrics, MonitoringStatus, PathStats, StatusCodeDistribution, TimeWindowStats, createMonitoredServer, withMonitoring } from "./native-monitor.mjs";
8
+ export { type MemoryInfo, type MonitoredServer, type MonitoringConfig, type MonitoringMetrics, type MonitoringStatus, type PathStats, type StatusCodeDistribution, type TimeWindowStats, createMonitoredServer, withMonitoring };
@@ -1,29 +1,3 @@
1
- import "../middleware-CV5o-4wk.mjs";
2
- import "../server-C3yoZXNs.mjs";
3
- import "../dependency-manager-BpN2YufZ.mjs";
4
- import "../component-server-DIgykV0F.mjs";
5
- import "../server-BttM6Ssc.mjs";
6
- import "./types.mjs";
7
1
  import { createMonitoredServer, withMonitoring } from "./native-monitor.mjs";
8
2
 
9
- //#region src/monitoring/index.ts
10
- const defaultMonitoringConfig = {
11
- enabled: true,
12
- console: true,
13
- slowThreshold: 1e3,
14
- errorThreshold: .05,
15
- tags: {
16
- framework: "vafast",
17
- version: "2.0.0"
18
- }
19
- };
20
- function createMonitoringConfig(config = {}) {
21
- return {
22
- ...defaultMonitoringConfig,
23
- ...config
24
- };
25
- }
26
-
27
- //#endregion
28
- export { createMonitoredServer, createMonitoringConfig, defaultMonitoringConfig, withMonitoring };
29
- //# sourceMappingURL=index.mjs.map
3
+ export { createMonitoredServer, withMonitoring };
@@ -1,48 +1,169 @@
1
- import "../schema-DOKg31ZX.mjs";
2
- import "../index-CTHojwxd.mjs";
3
- import "../base-server-CtA1bZSg.mjs";
4
- import { t as Server } from "../server-CWIZP6nb.mjs";
5
- import "../component-server-DvcPVnL4.mjs";
6
- import "../index-CdOYxwDQ.mjs";
1
+ import "../schema-B6DFN5c2.mjs";
2
+ import "../index-CREkvfw9.mjs";
3
+ import "../base-server-DLxtulAO.mjs";
4
+ import { t as Server } from "../server-DGA3dd5s.mjs";
5
+ import "../component-server-JqpDC7wy.mjs";
6
+ import "../index-CEfOqqvd.mjs";
7
7
 
8
8
  //#region src/monitoring/native-monitor.d.ts
9
- /**
10
- * 原生监控装饰器
11
- *
12
- * 通过装饰器模式为 Server 添加监控能力,完全不入侵原类
13
- *
14
- * @author Framework Team
15
- * @version 2.0.0
16
- * @license MIT
17
- */
18
- interface NativeMonitoringConfig {
9
+
10
+ /** 监控配置 */
11
+ interface MonitoringConfig {
12
+ /** 是否启用监控,默认 true */
19
13
  enabled?: boolean;
14
+ /** 是否输出到控制台,默认 true */
20
15
  console?: boolean;
16
+ /** 慢请求阈值(毫秒),默认 1000 */
21
17
  slowThreshold?: number;
22
- errorThreshold?: number;
18
+ /** 最大记录数,默认 1000 */
19
+ maxRecords?: number;
20
+ /** 采样率 0-1,默认 1(全部记录) */
21
+ samplingRate?: number;
22
+ /** 排除的路径(不记录) */
23
+ excludePaths?: string[];
24
+ /** 自定义标签 */
23
25
  tags?: Record<string, string>;
26
+ /** 请求完成回调 */
27
+ onRequest?: (metrics: MonitoringMetrics) => void;
28
+ /** 慢请求回调 */
29
+ onSlowRequest?: (metrics: MonitoringMetrics) => void;
24
30
  }
25
- interface NativeMonitoringMetrics {
31
+ /** 监控指标 */
32
+ interface MonitoringMetrics {
26
33
  requestId: string;
27
34
  method: string;
28
35
  path: string;
29
36
  statusCode: number;
30
37
  totalTime: number;
31
38
  timestamp: number;
39
+ memoryUsage: MemoryInfo;
40
+ }
41
+ /** 内存信息 */
42
+ interface MemoryInfo {
43
+ heapUsed: number;
44
+ heapTotal: number;
45
+ }
46
+ /** 路径统计 */
47
+ interface PathStats {
48
+ count: number;
49
+ totalTime: number;
50
+ avgTime: number;
51
+ minTime: number;
52
+ maxTime: number;
53
+ errorCount: number;
54
+ }
55
+ /** 时间窗口统计 */
56
+ interface TimeWindowStats {
57
+ /** 请求数 */
58
+ requests: number;
59
+ /** 成功数 */
60
+ successful: number;
61
+ /** 失败数 */
62
+ failed: number;
63
+ /** 错误率 */
64
+ errorRate: number;
65
+ /** 平均响应时间 */
66
+ avgTime: number;
67
+ /** RPS(每秒请求数) */
68
+ rps: number;
69
+ }
70
+ /** 状态码分布 */
71
+ interface StatusCodeDistribution {
72
+ /** 2xx 成功 */
73
+ "2xx": number;
74
+ /** 3xx 重定向 */
75
+ "3xx": number;
76
+ /** 4xx 客户端错误 */
77
+ "4xx": number;
78
+ /** 5xx 服务器错误 */
79
+ "5xx": number;
80
+ /** 详细分布 */
81
+ detail: Record<number, number>;
82
+ }
83
+ /** 监控状态 */
84
+ interface MonitoringStatus {
85
+ enabled: boolean;
86
+ /** 服务运行时间(毫秒) */
87
+ uptime: number;
88
+ totalRequests: number;
89
+ successfulRequests: number;
90
+ failedRequests: number;
91
+ errorRate: number;
92
+ /** 平均响应时间(毫秒) */
93
+ avgResponseTime: number;
94
+ /** P50 响应时间(毫秒) */
95
+ p50: number;
96
+ /** P95 响应时间(毫秒) */
97
+ p95: number;
98
+ /** P99 响应时间(毫秒) */
99
+ p99: number;
100
+ /** 最小响应时间 */
101
+ minTime: number;
102
+ /** 最大响应时间 */
103
+ maxTime: number;
104
+ /** 当前 RPS */
105
+ rps: number;
106
+ /** 状态码分布 */
107
+ statusCodes: StatusCodeDistribution;
108
+ /** 时间窗口统计 */
109
+ timeWindows: {
110
+ /** 最近 1 分钟 */
111
+ last1min: TimeWindowStats;
112
+ /** 最近 5 分钟 */
113
+ last5min: TimeWindowStats;
114
+ /** 最近 1 小时 */
115
+ last1hour: TimeWindowStats;
116
+ };
117
+ /** 按路径统计 */
118
+ byPath: Record<string, PathStats>;
119
+ /** 内存使用 */
32
120
  memoryUsage: {
33
- heapUsed: number;
34
- heapTotal: number;
121
+ heapUsed: string;
122
+ heapTotal: string;
35
123
  };
124
+ /** 最近请求 */
125
+ recentRequests: MonitoringMetrics[];
36
126
  }
127
+ /** 带监控的 Server */
37
128
  interface MonitoredServer extends Server {
38
- getMonitoringStatus(): any;
39
- getMonitoringMetrics(): NativeMonitoringMetrics[];
129
+ getMonitoringStatus(): MonitoringStatus;
130
+ getMonitoringMetrics(): MonitoringMetrics[];
131
+ getPathStats(path: string): PathStats | undefined;
132
+ getTimeWindowStats(windowMs: number): TimeWindowStats;
133
+ getRPS(): number;
134
+ getStatusCodeDistribution(): StatusCodeDistribution;
40
135
  resetMonitoring(): void;
41
- fetch: (req: Request) => Promise<Response>;
42
- use: (mw: any) => void;
43
136
  }
44
- declare function withMonitoring(server: Server, config?: NativeMonitoringConfig): MonitoredServer;
45
- declare function createMonitoredServer(routes: any[], config?: NativeMonitoringConfig): MonitoredServer;
137
+ /**
138
+ * Server 添加监控能力
139
+ *
140
+ * @example
141
+ * ```ts
142
+ * const server = new Server(routes)
143
+ * const monitored = withMonitoring(server, {
144
+ * slowThreshold: 500,
145
+ * excludePaths: ['/health'],
146
+ * onSlowRequest: (m) => console.warn('Slow!', m.path)
147
+ * })
148
+ *
149
+ * // 获取完整状态
150
+ * const status = monitored.getMonitoringStatus()
151
+ * console.log(`P99: ${status.p99}ms`)
152
+ * console.log(`RPS: ${status.rps}`)
153
+ * console.log(`Last 1min errors: ${status.timeWindows.last1min.errorRate}`)
154
+ *
155
+ * // 单独获取 RPS
156
+ * console.log(`Current RPS: ${monitored.getRPS()}`)
157
+ *
158
+ * // 自定义时间窗口
159
+ * const last30sec = monitored.getTimeWindowStats(30000)
160
+ * ```
161
+ */
162
+ declare function withMonitoring(server: Server, config?: MonitoringConfig): MonitoredServer;
163
+ /**
164
+ * 创建带监控的 Server(便捷函数)
165
+ */
166
+ declare function createMonitoredServer(ServerClass: typeof Server, routes: ConstructorParameters<typeof Server>[0], config?: MonitoringConfig): MonitoredServer;
46
167
  //#endregion
47
- export { MonitoredServer, NativeMonitoringConfig, NativeMonitoringMetrics, createMonitoredServer, withMonitoring };
168
+ export { MemoryInfo, MonitoredServer, MonitoringConfig, MonitoringMetrics, MonitoringStatus, PathStats, StatusCodeDistribution, TimeWindowStats, createMonitoredServer, withMonitoring };
48
169
  //# sourceMappingURL=native-monitor.d.mts.map