hono-status-monitor 1.0.6 → 1.0.7
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.
- package/dist/index.d.ts +52 -8
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +4 -5
- package/dist/index.js.map +1 -1
- package/package.json +1 -1
package/dist/index.d.ts
CHANGED
|
@@ -43,21 +43,65 @@ export { isClusterWorker, isClusterMaster, getWorkerId, createClusterAggregator
|
|
|
43
43
|
*/
|
|
44
44
|
export declare function statusMonitor(config?: StatusMonitorConfig): {
|
|
45
45
|
/** Hono middleware for tracking all requests */
|
|
46
|
-
middleware: any
|
|
46
|
+
middleware: (c: any, next: () => Promise<void>) => Promise<void>;
|
|
47
47
|
/** Pre-configured Hono routes for dashboard and API */
|
|
48
48
|
routes: Hono<import("hono/types").BlankEnv, import("hono/types").BlankSchema, "/">;
|
|
49
|
-
/** Initialize
|
|
50
|
-
initSocket: (
|
|
49
|
+
/** Initialize server - returns null (kept for backwards compatibility) */
|
|
50
|
+
initSocket: (_server?: any) => null;
|
|
51
51
|
/** Track rate limit events for the dashboard */
|
|
52
|
-
trackRateLimit: (blocked: boolean) =>
|
|
52
|
+
trackRateLimit: (blocked: boolean) => void;
|
|
53
53
|
/** Get current metrics snapshot */
|
|
54
|
-
getMetrics: () =>
|
|
54
|
+
getMetrics: () => Promise<import("./types.js").MetricsSnapshot>;
|
|
55
55
|
/** Get chart data for all metrics */
|
|
56
|
-
getCharts: () =>
|
|
56
|
+
getCharts: () => import("./types.js").ChartData;
|
|
57
57
|
/** Stop metrics collection */
|
|
58
|
-
stop: () =>
|
|
58
|
+
stop: () => void;
|
|
59
59
|
/** Access to the underlying monitor instance */
|
|
60
|
-
monitor:
|
|
60
|
+
monitor: {
|
|
61
|
+
config: Required<StatusMonitorConfig>;
|
|
62
|
+
trackRequest: (path: string, method: string) => void;
|
|
63
|
+
trackRequestComplete: (path: string, method: string, durationMs: number, statusCode: number) => void;
|
|
64
|
+
trackRateLimitEvent: (blocked: boolean) => void;
|
|
65
|
+
getMetricsSnapshot: () => Promise<import("./types.js").MetricsSnapshot>;
|
|
66
|
+
getChartData: () => import("./types.js").ChartData;
|
|
67
|
+
start: () => void;
|
|
68
|
+
stop: () => void;
|
|
69
|
+
initSocket: () => null;
|
|
70
|
+
formatUptime: (seconds: number) => string;
|
|
71
|
+
readonly io: null;
|
|
72
|
+
};
|
|
73
|
+
/** Whether running in edge mode */
|
|
74
|
+
isEdgeMode: boolean;
|
|
75
|
+
} | {
|
|
76
|
+
/** Hono middleware for tracking all requests */
|
|
77
|
+
middleware: (c: any, next: () => Promise<void>) => Promise<void>;
|
|
78
|
+
/** Pre-configured Hono routes for dashboard and API */
|
|
79
|
+
routes: Hono<import("hono/types").BlankEnv, import("hono/types").BlankSchema, "/">;
|
|
80
|
+
/** Initialize Socket.io - not available in edge, returns null */
|
|
81
|
+
initSocket: () => any;
|
|
82
|
+
/** Track rate limit events for the dashboard */
|
|
83
|
+
trackRateLimit: (blocked: boolean) => void;
|
|
84
|
+
/** Get current metrics snapshot */
|
|
85
|
+
getMetrics: () => Promise<import("./types.js").MetricsSnapshot>;
|
|
86
|
+
/** Get chart data for all metrics */
|
|
87
|
+
getCharts: () => import("./types.js").ChartData;
|
|
88
|
+
/** Stop metrics collection */
|
|
89
|
+
stop: () => void;
|
|
90
|
+
/** Access to the underlying monitor instance */
|
|
91
|
+
monitor: {
|
|
92
|
+
config: Required<StatusMonitorConfig>;
|
|
93
|
+
trackRequest: (path: string, method: string) => void;
|
|
94
|
+
trackRequestComplete: (path: string, method: string, durationMs: number, statusCode: number) => void;
|
|
95
|
+
trackRateLimitEvent: (blocked: boolean) => void;
|
|
96
|
+
getMetricsSnapshot: () => Promise<import("./types.js").MetricsSnapshot>;
|
|
97
|
+
getChartData: () => import("./types.js").ChartData;
|
|
98
|
+
start: () => void;
|
|
99
|
+
stop: () => void;
|
|
100
|
+
initSocket: () => null;
|
|
101
|
+
formatUptime: (seconds: number) => string;
|
|
102
|
+
isEdgeMode: boolean;
|
|
103
|
+
readonly io: null;
|
|
104
|
+
};
|
|
61
105
|
/** Whether running in edge mode */
|
|
62
106
|
isEdgeMode: boolean;
|
|
63
107
|
};
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAC5B,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAC5B,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAC;AAQtD,cAAc,YAAY,CAAC;AAC3B,OAAO,EAAE,iBAAiB,EAAE,qBAAqB,EAAE,MAAM,gBAAgB,CAAC;AAC1E,OAAO,EAAE,iBAAiB,EAAE,KAAK,WAAW,EAAE,MAAM,mBAAmB,CAAC;AACxE,OAAO,EACH,cAAc,EACd,iBAAiB,EACjB,uBAAuB,EACvB,iBAAiB,EACjB,eAAe,EAClB,MAAM,eAAe,CAAC;AAIvB,OAAO,EAAE,aAAa,EAAE,KAAK,OAAO,EAAE,MAAM,cAAc,CAAC;AAC3D,OAAO,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AACnD,OAAO,EACH,eAAe,EACf,eAAe,EACf,WAAW,EACX,uBAAuB,EAC1B,MAAM,cAAc,CAAC;AAEtB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiCG;AACH,wBAAgB,aAAa,CAAC,MAAM,GAAE,mBAAwB;IAkDtD,gDAAgD;;IAEhD,uDAAuD;;IAEvD,0EAA0E;2BACnD,GAAG;IAC1B,gDAAgD;8BACtB,OAAO;IACjC,mCAAmC;;IAEnC,qCAAqC;;IAErC,8BAA8B;;IAE9B,gDAAgD;;;;;;;;;;;;;;IAEhD,mCAAmC;;;IA2DnC,gDAAgD;oBA7CvB,GAAG,QAAQ,MAAM,OAAO,CAAC,IAAI,CAAC;IA+CvD,uDAAuD;;IAEvD,iEAAiE;sBACvC,GAAG;IAC7B,gDAAgD;8BACtB,OAAO;IACjC,mCAAmC;;IAEnC,qCAAqC;;IAErC,8BAA8B;;IAE9B,gDAAgD;;;;;;;;;;;;;;;IAEhD,mCAAmC;;EAjI1C;AAsID;;;GAGG;AACH,wBAAgB,iBAAiB,CAAC,MAAM,GAAE,mBAAwB;IAzB1D,gDAAgD;oBA7CvB,GAAG,QAAQ,MAAM,OAAO,CAAC,IAAI,CAAC;IA+CvD,uDAAuD;;IAEvD,iEAAiE;sBACvC,GAAG;IAC7B,gDAAgD;8BACtB,OAAO;IACjC,mCAAmC;;IAEnC,qCAAqC;;IAErC,8BAA8B;;IAE9B,gDAAgD;;;;;;;;;;;;;;;IAEhD,mCAAmC;;EAW1C;AAGD,eAAe,aAAa,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -7,6 +7,8 @@ import { Hono } from 'hono';
|
|
|
7
7
|
import { detectPlatform } from './platform.js';
|
|
8
8
|
import { createEdgeMonitor } from './monitor-edge.js';
|
|
9
9
|
import { generateDashboard, generateEdgeDashboard } from './dashboard.js';
|
|
10
|
+
import { createMonitor } from './monitor.js';
|
|
11
|
+
import { createMiddleware } from './middleware.js';
|
|
10
12
|
// Re-export types
|
|
11
13
|
export * from './types.js';
|
|
12
14
|
export { generateDashboard, generateEdgeDashboard } from './dashboard.js';
|
|
@@ -69,9 +71,6 @@ export function statusMonitor(config = {}) {
|
|
|
69
71
|
* Requires Node.js runtime with os, process, http modules
|
|
70
72
|
*/
|
|
71
73
|
function createNodeStatusMonitor(config = {}) {
|
|
72
|
-
// Dynamic import to avoid loading Node.js modules in edge
|
|
73
|
-
const { createMonitor } = require('./monitor.js');
|
|
74
|
-
const { createMiddleware } = require('./middleware.js');
|
|
75
74
|
const monitor = createMonitor(config);
|
|
76
75
|
const middleware = createMiddleware(monitor);
|
|
77
76
|
const routes = new Hono();
|
|
@@ -100,8 +99,8 @@ function createNodeStatusMonitor(config = {}) {
|
|
|
100
99
|
middleware,
|
|
101
100
|
/** Pre-configured Hono routes for dashboard and API */
|
|
102
101
|
routes,
|
|
103
|
-
/** Initialize
|
|
104
|
-
initSocket: (
|
|
102
|
+
/** Initialize server - returns null (kept for backwards compatibility) */
|
|
103
|
+
initSocket: (_server) => monitor.initSocket(),
|
|
105
104
|
/** Track rate limit events for the dashboard */
|
|
106
105
|
trackRateLimit: (blocked) => monitor.trackRateLimitEvent(blocked),
|
|
107
106
|
/** Get current metrics snapshot */
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,gFAAgF;AAChF,sBAAsB;AACtB,2EAA2E;AAC3E,4DAA4D;AAC5D,gFAAgF;AAEhF,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAE5B,OAAO,EAAqB,cAAc,EAAE,MAAM,eAAe,CAAC;AAClE,OAAO,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AACtD,OAAO,EAAE,iBAAiB,EAAE,qBAAqB,EAAE,MAAM,gBAAgB,CAAC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "hono-status-monitor",
|
|
3
|
-
"version": "1.0.
|
|
3
|
+
"version": "1.0.7",
|
|
4
4
|
"description": "Real-time server monitoring dashboard for Hono.js. Works with Node.js and Cloudflare Workers. Express-status-monitor style metrics with polling updates.",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"types": "dist/index.d.ts",
|