hono-status-monitor 1.0.1 → 1.0.3
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/README.md +59 -2
- package/dist/dashboard.d.ts +13 -0
- package/dist/dashboard.d.ts.map +1 -1
- package/dist/dashboard.js +391 -0
- package/dist/dashboard.js.map +1 -1
- package/dist/index-edge.d.ts +58 -0
- package/dist/index-edge.d.ts.map +1 -0
- package/dist/index-edge.js +94 -0
- package/dist/index-edge.js.map +1 -0
- package/dist/index.d.ts +51 -12
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +121 -13
- package/dist/index.js.map +1 -1
- package/dist/monitor-edge.d.ts +21 -0
- package/dist/monitor-edge.d.ts.map +1 -0
- package/dist/monitor-edge.js +376 -0
- package/dist/monitor-edge.js.map +1 -0
- package/dist/platform.d.ts +33 -0
- package/dist/platform.d.ts.map +1 -0
- package/dist/platform.js +80 -0
- package/dist/platform.js.map +1 -0
- package/dist/types.d.ts +2 -0
- package/dist/types.d.ts.map +1 -1
- package/package.json +24 -6
|
@@ -0,0 +1,376 @@
|
|
|
1
|
+
// =============================================================================
|
|
2
|
+
// HONO STATUS MONITOR - EDGE-COMPATIBLE MONITOR
|
|
3
|
+
// Lightweight monitor for Cloudflare Workers and Edge environments
|
|
4
|
+
// No Node.js-specific APIs (os, process, cluster, socket.io)
|
|
5
|
+
// =============================================================================
|
|
6
|
+
// Default configuration for edge environments
|
|
7
|
+
const DEFAULT_EDGE_CONFIG = {
|
|
8
|
+
path: '/status',
|
|
9
|
+
title: 'Server Status',
|
|
10
|
+
socketPath: '/status/socket.io', // Not used in edge, included for compatibility
|
|
11
|
+
updateInterval: 5000, // Polling interval (not real-time)
|
|
12
|
+
retentionSeconds: 60,
|
|
13
|
+
maxRecentErrors: 10,
|
|
14
|
+
maxRoutes: 10,
|
|
15
|
+
alerts: {
|
|
16
|
+
cpu: 80, // Not available in edge
|
|
17
|
+
memory: 90, // Not available in edge
|
|
18
|
+
responseTime: 500,
|
|
19
|
+
errorRate: 5,
|
|
20
|
+
eventLoopLag: 100 // Not available in edge
|
|
21
|
+
},
|
|
22
|
+
healthCheck: async () => ({ connected: true, latencyMs: 0 }),
|
|
23
|
+
normalizePath: (path) => path,
|
|
24
|
+
clusterMode: false // Not supported in edge
|
|
25
|
+
};
|
|
26
|
+
/**
|
|
27
|
+
* Default path normalization function
|
|
28
|
+
*/
|
|
29
|
+
function defaultNormalizePath(path) {
|
|
30
|
+
return path
|
|
31
|
+
.replace(/[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}/gi, ':uuid')
|
|
32
|
+
.replace(/[0-9a-f]{24}/gi, ':id')
|
|
33
|
+
.replace(/\/\d+/g, '/:id')
|
|
34
|
+
.split('/').slice(0, 4).join('/');
|
|
35
|
+
}
|
|
36
|
+
/**
|
|
37
|
+
* Create an edge-compatible status monitor instance
|
|
38
|
+
* Works without Node.js APIs (os, process, cluster)
|
|
39
|
+
*/
|
|
40
|
+
export function createEdgeMonitor(userConfig = {}) {
|
|
41
|
+
// Merge configuration
|
|
42
|
+
const config = {
|
|
43
|
+
...DEFAULT_EDGE_CONFIG,
|
|
44
|
+
...userConfig,
|
|
45
|
+
alerts: { ...DEFAULT_EDGE_CONFIG.alerts, ...userConfig.alerts },
|
|
46
|
+
normalizePath: userConfig.normalizePath || defaultNormalizePath,
|
|
47
|
+
clusterMode: false // Never in cluster mode on edge
|
|
48
|
+
};
|
|
49
|
+
// In-memory metrics storage
|
|
50
|
+
let responseTimeHistory = [];
|
|
51
|
+
let rpsHistory = [];
|
|
52
|
+
let errorRateHistory = [];
|
|
53
|
+
// Request tracking
|
|
54
|
+
let requestCount = 0;
|
|
55
|
+
let lastRequestCount = 0;
|
|
56
|
+
let lastUpdateTime = Date.now();
|
|
57
|
+
let totalResponseTime = 0;
|
|
58
|
+
let responseTimeCount = 0;
|
|
59
|
+
let statusCodes = {};
|
|
60
|
+
let totalRequests = 0;
|
|
61
|
+
let activeConnections = 0;
|
|
62
|
+
// Route tracking
|
|
63
|
+
const routeStats = new Map();
|
|
64
|
+
const recentErrors = [];
|
|
65
|
+
// Response time samples for percentiles
|
|
66
|
+
let responseTimeSamples = [];
|
|
67
|
+
// Rate limit tracking
|
|
68
|
+
let rateLimitBlocked = 0;
|
|
69
|
+
let rateLimitTotal = 0;
|
|
70
|
+
// Start time for uptime calculation
|
|
71
|
+
const startTime = Date.now();
|
|
72
|
+
/**
|
|
73
|
+
* Calculate percentiles from samples
|
|
74
|
+
*/
|
|
75
|
+
function calculatePercentiles() {
|
|
76
|
+
if (responseTimeSamples.length === 0) {
|
|
77
|
+
return { p50: 0, p95: 0, p99: 0, avg: 0 };
|
|
78
|
+
}
|
|
79
|
+
const sorted = [...responseTimeSamples].sort((a, b) => a - b);
|
|
80
|
+
const len = sorted.length;
|
|
81
|
+
const p50Index = Math.floor(len * 0.5);
|
|
82
|
+
const p95Index = Math.floor(len * 0.95);
|
|
83
|
+
const p99Index = Math.floor(len * 0.99);
|
|
84
|
+
const avg = sorted.reduce((a, b) => a + b, 0) / len;
|
|
85
|
+
return {
|
|
86
|
+
p50: Math.round(sorted[p50Index] * 100) / 100,
|
|
87
|
+
p95: Math.round(sorted[p95Index] * 100) / 100,
|
|
88
|
+
p99: Math.round(sorted[Math.min(p99Index, len - 1)] * 100) / 100,
|
|
89
|
+
avg: Math.round(avg * 100) / 100
|
|
90
|
+
};
|
|
91
|
+
}
|
|
92
|
+
/**
|
|
93
|
+
* Get top routes by request count
|
|
94
|
+
*/
|
|
95
|
+
function getTopRoutes() {
|
|
96
|
+
return Array.from(routeStats.values())
|
|
97
|
+
.sort((a, b) => b.count - a.count)
|
|
98
|
+
.slice(0, config.maxRoutes);
|
|
99
|
+
}
|
|
100
|
+
/**
|
|
101
|
+
* Get slowest routes by average response time
|
|
102
|
+
*/
|
|
103
|
+
function getSlowestRoutes() {
|
|
104
|
+
return Array.from(routeStats.values())
|
|
105
|
+
.filter(r => r.count > 0)
|
|
106
|
+
.sort((a, b) => b.avgTime - a.avgTime)
|
|
107
|
+
.slice(0, config.maxRoutes);
|
|
108
|
+
}
|
|
109
|
+
/**
|
|
110
|
+
* Get routes with most errors
|
|
111
|
+
*/
|
|
112
|
+
function getErrorRoutes() {
|
|
113
|
+
return Array.from(routeStats.values())
|
|
114
|
+
.filter(r => r.errors > 0)
|
|
115
|
+
.sort((a, b) => b.errors - a.errors)
|
|
116
|
+
.slice(0, config.maxRoutes);
|
|
117
|
+
}
|
|
118
|
+
/**
|
|
119
|
+
* Calculate current error rate
|
|
120
|
+
*/
|
|
121
|
+
function getErrorRate() {
|
|
122
|
+
const totalErrors = Array.from(routeStats.values()).reduce((sum, r) => sum + r.errors, 0);
|
|
123
|
+
if (totalRequests === 0)
|
|
124
|
+
return 0;
|
|
125
|
+
return Math.round((totalErrors / totalRequests) * 10000) / 100;
|
|
126
|
+
}
|
|
127
|
+
/**
|
|
128
|
+
* Check alert conditions (limited to available metrics)
|
|
129
|
+
*/
|
|
130
|
+
function checkAlerts() {
|
|
131
|
+
const respTime = responseTimeHistory.length > 0
|
|
132
|
+
? responseTimeHistory[responseTimeHistory.length - 1].value
|
|
133
|
+
: 0;
|
|
134
|
+
const errorRate = getErrorRate();
|
|
135
|
+
return {
|
|
136
|
+
cpu: false, // Not available in edge
|
|
137
|
+
memory: false, // Not available in edge
|
|
138
|
+
responseTime: respTime > (config.alerts.responseTime ?? 500),
|
|
139
|
+
errorRate: errorRate > (config.alerts.errorRate ?? 5),
|
|
140
|
+
eventLoopLag: false // Not available in edge
|
|
141
|
+
};
|
|
142
|
+
}
|
|
143
|
+
/**
|
|
144
|
+
* Add a data point to history
|
|
145
|
+
*/
|
|
146
|
+
function addToHistory(history, value) {
|
|
147
|
+
const now = Date.now();
|
|
148
|
+
history.push({ timestamp: now, value });
|
|
149
|
+
const cutoff = now - (config.retentionSeconds * 1000);
|
|
150
|
+
while (history.length > 0 && history[0].timestamp < cutoff) {
|
|
151
|
+
history.shift();
|
|
152
|
+
}
|
|
153
|
+
}
|
|
154
|
+
/**
|
|
155
|
+
* Update metrics (called on each request in edge mode, not on interval)
|
|
156
|
+
*/
|
|
157
|
+
function updateMetricsIfNeeded() {
|
|
158
|
+
const now = Date.now();
|
|
159
|
+
const elapsed = now - lastUpdateTime;
|
|
160
|
+
// Only update history at configured intervals
|
|
161
|
+
if (elapsed >= config.updateInterval) {
|
|
162
|
+
const intervalSeconds = elapsed / 1000;
|
|
163
|
+
const currentRps = Math.round((requestCount - lastRequestCount) / intervalSeconds);
|
|
164
|
+
lastRequestCount = requestCount;
|
|
165
|
+
lastUpdateTime = now;
|
|
166
|
+
addToHistory(rpsHistory, currentRps);
|
|
167
|
+
const avgResponseTime = responseTimeCount > 0
|
|
168
|
+
? Math.round((totalResponseTime / responseTimeCount) * 100) / 100
|
|
169
|
+
: 0;
|
|
170
|
+
addToHistory(responseTimeHistory, avgResponseTime);
|
|
171
|
+
addToHistory(errorRateHistory, getErrorRate());
|
|
172
|
+
// Reset counters
|
|
173
|
+
totalResponseTime = 0;
|
|
174
|
+
responseTimeCount = 0;
|
|
175
|
+
// Trim samples (keep last 1000)
|
|
176
|
+
if (responseTimeSamples.length > 1000) {
|
|
177
|
+
responseTimeSamples = responseTimeSamples.slice(-500);
|
|
178
|
+
}
|
|
179
|
+
}
|
|
180
|
+
}
|
|
181
|
+
/**
|
|
182
|
+
* Track a request start
|
|
183
|
+
*/
|
|
184
|
+
function trackRequest(path, method) {
|
|
185
|
+
requestCount++;
|
|
186
|
+
totalRequests++;
|
|
187
|
+
activeConnections++;
|
|
188
|
+
const normalizedPath = config.normalizePath(path);
|
|
189
|
+
const key = `${method}:${normalizedPath}`;
|
|
190
|
+
if (!routeStats.has(key)) {
|
|
191
|
+
routeStats.set(key, {
|
|
192
|
+
path: normalizedPath,
|
|
193
|
+
method,
|
|
194
|
+
count: 0,
|
|
195
|
+
totalTime: 0,
|
|
196
|
+
avgTime: 0,
|
|
197
|
+
minTime: Infinity,
|
|
198
|
+
maxTime: 0,
|
|
199
|
+
errors: 0,
|
|
200
|
+
lastAccess: Date.now()
|
|
201
|
+
});
|
|
202
|
+
}
|
|
203
|
+
}
|
|
204
|
+
/**
|
|
205
|
+
* Track request completion
|
|
206
|
+
*/
|
|
207
|
+
function trackRequestComplete(path, method, durationMs, statusCode) {
|
|
208
|
+
activeConnections = Math.max(0, activeConnections - 1);
|
|
209
|
+
// Track response time
|
|
210
|
+
totalResponseTime += durationMs;
|
|
211
|
+
responseTimeCount++;
|
|
212
|
+
responseTimeSamples.push(durationMs);
|
|
213
|
+
// Track status code
|
|
214
|
+
const codeStr = statusCode.toString();
|
|
215
|
+
statusCodes[codeStr] = (statusCodes[codeStr] || 0) + 1;
|
|
216
|
+
// Update route stats
|
|
217
|
+
const normalizedPath = config.normalizePath(path);
|
|
218
|
+
const key = `${method}:${normalizedPath}`;
|
|
219
|
+
const stats = routeStats.get(key);
|
|
220
|
+
if (stats) {
|
|
221
|
+
stats.count++;
|
|
222
|
+
stats.totalTime += durationMs;
|
|
223
|
+
stats.avgTime = stats.totalTime / stats.count;
|
|
224
|
+
stats.minTime = Math.min(stats.minTime, durationMs);
|
|
225
|
+
stats.maxTime = Math.max(stats.maxTime, durationMs);
|
|
226
|
+
stats.lastAccess = Date.now();
|
|
227
|
+
// Track errors
|
|
228
|
+
if (statusCode >= 400) {
|
|
229
|
+
stats.errors++;
|
|
230
|
+
recentErrors.unshift({
|
|
231
|
+
timestamp: Date.now(),
|
|
232
|
+
path: normalizedPath,
|
|
233
|
+
method,
|
|
234
|
+
status: statusCode,
|
|
235
|
+
message: `${method} ${normalizedPath} returned ${statusCode}`
|
|
236
|
+
});
|
|
237
|
+
while (recentErrors.length > config.maxRecentErrors) {
|
|
238
|
+
recentErrors.pop();
|
|
239
|
+
}
|
|
240
|
+
}
|
|
241
|
+
}
|
|
242
|
+
// Update metrics if interval has passed
|
|
243
|
+
updateMetricsIfNeeded();
|
|
244
|
+
}
|
|
245
|
+
/**
|
|
246
|
+
* Track rate limit event
|
|
247
|
+
*/
|
|
248
|
+
function trackRateLimitEvent(blocked) {
|
|
249
|
+
rateLimitTotal++;
|
|
250
|
+
if (blocked)
|
|
251
|
+
rateLimitBlocked++;
|
|
252
|
+
}
|
|
253
|
+
/**
|
|
254
|
+
* Get current metrics snapshot
|
|
255
|
+
*/
|
|
256
|
+
async function getMetricsSnapshot() {
|
|
257
|
+
// Trigger update check
|
|
258
|
+
updateMetricsIfNeeded();
|
|
259
|
+
const uptimeSeconds = Math.round((Date.now() - startTime) / 1000);
|
|
260
|
+
return {
|
|
261
|
+
timestamp: Date.now(),
|
|
262
|
+
// System metrics - not available in edge
|
|
263
|
+
cpu: 0,
|
|
264
|
+
memoryMB: 0,
|
|
265
|
+
memoryPercent: 0,
|
|
266
|
+
heapUsedMB: 0,
|
|
267
|
+
heapTotalMB: 0,
|
|
268
|
+
loadAvg: 0,
|
|
269
|
+
uptime: uptimeSeconds, // Worker uptime
|
|
270
|
+
processUptime: uptimeSeconds,
|
|
271
|
+
// Request metrics - available
|
|
272
|
+
responseTime: responseTimeHistory.length > 0
|
|
273
|
+
? responseTimeHistory[responseTimeHistory.length - 1].value
|
|
274
|
+
: 0,
|
|
275
|
+
rps: rpsHistory.length > 0
|
|
276
|
+
? rpsHistory[rpsHistory.length - 1].value
|
|
277
|
+
: 0,
|
|
278
|
+
statusCodes: { ...statusCodes },
|
|
279
|
+
totalRequests,
|
|
280
|
+
activeConnections,
|
|
281
|
+
eventLoopLag: 0, // Not available in edge
|
|
282
|
+
// Platform info
|
|
283
|
+
hostname: 'cloudflare-worker',
|
|
284
|
+
platform: 'Cloudflare Workers',
|
|
285
|
+
nodeVersion: 'N/A',
|
|
286
|
+
pid: 0,
|
|
287
|
+
cpuCount: 0,
|
|
288
|
+
// Analytics - available
|
|
289
|
+
percentiles: calculatePercentiles(),
|
|
290
|
+
topRoutes: getTopRoutes(),
|
|
291
|
+
slowestRoutes: getSlowestRoutes(),
|
|
292
|
+
errorRoutes: getErrorRoutes(),
|
|
293
|
+
recentErrors: [...recentErrors],
|
|
294
|
+
alerts: checkAlerts(),
|
|
295
|
+
// Not available metrics
|
|
296
|
+
gc: {
|
|
297
|
+
collections: 0,
|
|
298
|
+
pauseTimeMs: 0,
|
|
299
|
+
heapGrowthRate: 0
|
|
300
|
+
},
|
|
301
|
+
database: {
|
|
302
|
+
connected: false,
|
|
303
|
+
poolSize: 0,
|
|
304
|
+
availableConnections: 0,
|
|
305
|
+
waitQueueSize: 0,
|
|
306
|
+
latencyMs: 0
|
|
307
|
+
},
|
|
308
|
+
rateLimitStats: { blocked: rateLimitBlocked, total: rateLimitTotal },
|
|
309
|
+
errorRate: getErrorRate(),
|
|
310
|
+
// Edge mode indicator
|
|
311
|
+
isEdgeMode: true
|
|
312
|
+
};
|
|
313
|
+
}
|
|
314
|
+
/**
|
|
315
|
+
* Get chart data
|
|
316
|
+
*/
|
|
317
|
+
function getChartData() {
|
|
318
|
+
return {
|
|
319
|
+
cpu: [], // Not available
|
|
320
|
+
memory: [], // Not available
|
|
321
|
+
heap: [], // Not available
|
|
322
|
+
loadAvg: [], // Not available
|
|
323
|
+
responseTime: [...responseTimeHistory],
|
|
324
|
+
rps: [...rpsHistory],
|
|
325
|
+
eventLoopLag: [], // Not available
|
|
326
|
+
errorRate: [...errorRateHistory]
|
|
327
|
+
};
|
|
328
|
+
}
|
|
329
|
+
/**
|
|
330
|
+
* Format uptime
|
|
331
|
+
*/
|
|
332
|
+
function formatUptime(seconds) {
|
|
333
|
+
const days = Math.floor(seconds / 86400);
|
|
334
|
+
const hours = Math.floor((seconds % 86400) / 3600);
|
|
335
|
+
const minutes = Math.floor((seconds % 3600) / 60);
|
|
336
|
+
const secs = Math.floor(seconds % 60);
|
|
337
|
+
const parts = [];
|
|
338
|
+
if (days > 0)
|
|
339
|
+
parts.push(`${days}d`);
|
|
340
|
+
if (hours > 0)
|
|
341
|
+
parts.push(`${hours}h`);
|
|
342
|
+
if (minutes > 0)
|
|
343
|
+
parts.push(`${minutes}m`);
|
|
344
|
+
parts.push(`${secs}s`);
|
|
345
|
+
return parts.join(' ');
|
|
346
|
+
}
|
|
347
|
+
// No-op functions for compatibility
|
|
348
|
+
function start() {
|
|
349
|
+
// No interval needed in edge - updates happen on each request
|
|
350
|
+
console.log('📊 Status monitor started (edge mode)');
|
|
351
|
+
}
|
|
352
|
+
function stop() {
|
|
353
|
+
// Nothing to stop in edge mode
|
|
354
|
+
console.log('📊 Status monitor stopped (edge mode)');
|
|
355
|
+
}
|
|
356
|
+
// Socket not available in edge
|
|
357
|
+
function initSocket() {
|
|
358
|
+
console.log('📊 WebSocket not available in edge mode, use polling');
|
|
359
|
+
return null;
|
|
360
|
+
}
|
|
361
|
+
return {
|
|
362
|
+
config,
|
|
363
|
+
trackRequest,
|
|
364
|
+
trackRequestComplete,
|
|
365
|
+
trackRateLimitEvent,
|
|
366
|
+
getMetricsSnapshot,
|
|
367
|
+
getChartData,
|
|
368
|
+
start,
|
|
369
|
+
stop,
|
|
370
|
+
initSocket,
|
|
371
|
+
formatUptime,
|
|
372
|
+
isEdgeMode: true,
|
|
373
|
+
get io() { return null; }
|
|
374
|
+
};
|
|
375
|
+
}
|
|
376
|
+
//# sourceMappingURL=monitor-edge.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"monitor-edge.js","sourceRoot":"","sources":["../src/monitor-edge.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Supported platform types
|
|
3
|
+
*/
|
|
4
|
+
export type Platform = 'node' | 'cloudflare' | 'edge' | 'unknown';
|
|
5
|
+
/**
|
|
6
|
+
* Detect the current runtime platform
|
|
7
|
+
*
|
|
8
|
+
* @returns The detected platform type
|
|
9
|
+
*/
|
|
10
|
+
export declare function detectPlatform(): Platform;
|
|
11
|
+
/**
|
|
12
|
+
* Check if running in a Node.js environment
|
|
13
|
+
*/
|
|
14
|
+
export declare function isNodeEnvironment(): boolean;
|
|
15
|
+
/**
|
|
16
|
+
* Check if running in a Cloudflare Workers environment
|
|
17
|
+
*/
|
|
18
|
+
export declare function isCloudflareEnvironment(): boolean;
|
|
19
|
+
/**
|
|
20
|
+
* Check if running in any edge environment (Cloudflare, Vercel Edge, etc.)
|
|
21
|
+
*/
|
|
22
|
+
export declare function isEdgeEnvironment(): boolean;
|
|
23
|
+
/**
|
|
24
|
+
* Get platform-specific information
|
|
25
|
+
*/
|
|
26
|
+
export declare function getPlatformInfo(): {
|
|
27
|
+
platform: Platform;
|
|
28
|
+
hasOsModule: boolean;
|
|
29
|
+
hasProcessModule: boolean;
|
|
30
|
+
hasWebSocketSupport: boolean;
|
|
31
|
+
hasClusterSupport: boolean;
|
|
32
|
+
};
|
|
33
|
+
//# sourceMappingURL=platform.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"platform.d.ts","sourceRoot":"","sources":["../src/platform.ts"],"names":[],"mappings":"AAKA;;GAEG;AACH,MAAM,MAAM,QAAQ,GAAG,MAAM,GAAG,YAAY,GAAG,MAAM,GAAG,SAAS,CAAC;AAElE;;;;GAIG;AACH,wBAAgB,cAAc,IAAI,QAAQ,CA0CzC;AAED;;GAEG;AACH,wBAAgB,iBAAiB,IAAI,OAAO,CAE3C;AAED;;GAEG;AACH,wBAAgB,uBAAuB,IAAI,OAAO,CAEjD;AAED;;GAEG;AACH,wBAAgB,iBAAiB,IAAI,OAAO,CAG3C;AAED;;GAEG;AACH,wBAAgB,eAAe,IAAI;IAC/B,QAAQ,EAAE,QAAQ,CAAC;IACnB,WAAW,EAAE,OAAO,CAAC;IACrB,gBAAgB,EAAE,OAAO,CAAC;IAC1B,mBAAmB,EAAE,OAAO,CAAC;IAC7B,iBAAiB,EAAE,OAAO,CAAC;CAC9B,CAWA"}
|
package/dist/platform.js
ADDED
|
@@ -0,0 +1,80 @@
|
|
|
1
|
+
// =============================================================================
|
|
2
|
+
// HONO STATUS MONITOR - PLATFORM DETECTION
|
|
3
|
+
// Detect runtime environment (Node.js, Cloudflare Workers, Edge, etc.)
|
|
4
|
+
// =============================================================================
|
|
5
|
+
/**
|
|
6
|
+
* Detect the current runtime platform
|
|
7
|
+
*
|
|
8
|
+
* @returns The detected platform type
|
|
9
|
+
*/
|
|
10
|
+
export function detectPlatform() {
|
|
11
|
+
// Check for Node.js
|
|
12
|
+
if (typeof process !== 'undefined' && process.versions?.node) {
|
|
13
|
+
return 'node';
|
|
14
|
+
}
|
|
15
|
+
// Check for Cloudflare Workers
|
|
16
|
+
// Cloudflare Workers have specific globals and navigator.userAgent
|
|
17
|
+
if (typeof globalThis !== 'undefined') {
|
|
18
|
+
// Cloudflare Workers environment check
|
|
19
|
+
// @ts-ignore - navigator may not exist in all environments
|
|
20
|
+
const userAgent = typeof navigator !== 'undefined' ? navigator?.userAgent : '';
|
|
21
|
+
if (typeof userAgent === 'string' && userAgent.includes('Cloudflare-Workers')) {
|
|
22
|
+
return 'cloudflare';
|
|
23
|
+
}
|
|
24
|
+
// Check for caches API which exists in Cloudflare Workers
|
|
25
|
+
// @ts-ignore - caches may not exist
|
|
26
|
+
if (typeof caches !== 'undefined' && typeof caches.default !== 'undefined') {
|
|
27
|
+
return 'cloudflare';
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
// Check for Deno
|
|
31
|
+
// @ts-ignore - Deno global
|
|
32
|
+
if (typeof Deno !== 'undefined') {
|
|
33
|
+
return 'edge';
|
|
34
|
+
}
|
|
35
|
+
// Check for Bun
|
|
36
|
+
// @ts-ignore - Bun global
|
|
37
|
+
if (typeof Bun !== 'undefined') {
|
|
38
|
+
return 'node'; // Bun is Node.js compatible
|
|
39
|
+
}
|
|
40
|
+
// Generic edge runtime (Vercel Edge, etc.)
|
|
41
|
+
// @ts-ignore - EdgeRuntime global may not exist in all environments
|
|
42
|
+
if (typeof EdgeRuntime !== 'undefined') {
|
|
43
|
+
return 'edge';
|
|
44
|
+
}
|
|
45
|
+
return 'unknown';
|
|
46
|
+
}
|
|
47
|
+
/**
|
|
48
|
+
* Check if running in a Node.js environment
|
|
49
|
+
*/
|
|
50
|
+
export function isNodeEnvironment() {
|
|
51
|
+
return detectPlatform() === 'node';
|
|
52
|
+
}
|
|
53
|
+
/**
|
|
54
|
+
* Check if running in a Cloudflare Workers environment
|
|
55
|
+
*/
|
|
56
|
+
export function isCloudflareEnvironment() {
|
|
57
|
+
return detectPlatform() === 'cloudflare';
|
|
58
|
+
}
|
|
59
|
+
/**
|
|
60
|
+
* Check if running in any edge environment (Cloudflare, Vercel Edge, etc.)
|
|
61
|
+
*/
|
|
62
|
+
export function isEdgeEnvironment() {
|
|
63
|
+
const platform = detectPlatform();
|
|
64
|
+
return platform === 'cloudflare' || platform === 'edge';
|
|
65
|
+
}
|
|
66
|
+
/**
|
|
67
|
+
* Get platform-specific information
|
|
68
|
+
*/
|
|
69
|
+
export function getPlatformInfo() {
|
|
70
|
+
const platform = detectPlatform();
|
|
71
|
+
const isNode = platform === 'node';
|
|
72
|
+
return {
|
|
73
|
+
platform,
|
|
74
|
+
hasOsModule: isNode,
|
|
75
|
+
hasProcessModule: isNode,
|
|
76
|
+
hasWebSocketSupport: isNode, // Full socket.io support
|
|
77
|
+
hasClusterSupport: isNode
|
|
78
|
+
};
|
|
79
|
+
}
|
|
80
|
+
//# sourceMappingURL=platform.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"platform.js","sourceRoot":"","sources":["../src/platform.ts"],"names":[],"mappings":"AAAA,gFAAgF;AAChF,2CAA2C;AAC3C,uEAAuE;AACvE,gFAAgF;AAOhF;;;;GAIG;AACH,MAAM,UAAU,cAAc;IAC1B,oBAAoB;IACpB,IAAI,OAAO,OAAO,KAAK,WAAW,IAAI,OAAO,CAAC,QAAQ,EAAE,IAAI,EAAE,CAAC;QAC3D,OAAO,MAAM,CAAC;IAClB,CAAC;IAED,+BAA+B;IAC/B,mEAAmE;IACnE,IAAI,OAAO,UAAU,KAAK,WAAW,EAAE,CAAC;QACpC,uCAAuC;QACvC,2DAA2D;QAC3D,MAAM,SAAS,GAAG,OAAO,SAAS,KAAK,WAAW,CAAC,CAAC,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC;QAC/E,IAAI,OAAO,SAAS,KAAK,QAAQ,IAAI,SAAS,CAAC,QAAQ,CAAC,oBAAoB,CAAC,EAAE,CAAC;YAC5E,OAAO,YAAY,CAAC;QACxB,CAAC;QAED,0DAA0D;QAC1D,oCAAoC;QACpC,IAAI,OAAO,MAAM,KAAK,WAAW,IAAI,OAAO,MAAM,CAAC,OAAO,KAAK,WAAW,EAAE,CAAC;YACzE,OAAO,YAAY,CAAC;QACxB,CAAC;IACL,CAAC;IAED,iBAAiB;IACjB,2BAA2B;IAC3B,IAAI,OAAO,IAAI,KAAK,WAAW,EAAE,CAAC;QAC9B,OAAO,MAAM,CAAC;IAClB,CAAC;IAED,gBAAgB;IAChB,0BAA0B;IAC1B,IAAI,OAAO,GAAG,KAAK,WAAW,EAAE,CAAC;QAC7B,OAAO,MAAM,CAAC,CAAC,4BAA4B;IAC/C,CAAC;IAED,2CAA2C;IAC3C,oEAAoE;IACpE,IAAI,OAAO,WAAW,KAAK,WAAW,EAAE,CAAC;QACrC,OAAO,MAAM,CAAC;IAClB,CAAC;IAED,OAAO,SAAS,CAAC;AACrB,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,iBAAiB;IAC7B,OAAO,cAAc,EAAE,KAAK,MAAM,CAAC;AACvC,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,uBAAuB;IACnC,OAAO,cAAc,EAAE,KAAK,YAAY,CAAC;AAC7C,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,iBAAiB;IAC7B,MAAM,QAAQ,GAAG,cAAc,EAAE,CAAC;IAClC,OAAO,QAAQ,KAAK,YAAY,IAAI,QAAQ,KAAK,MAAM,CAAC;AAC5D,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,eAAe;IAO3B,MAAM,QAAQ,GAAG,cAAc,EAAE,CAAC;IAClC,MAAM,MAAM,GAAG,QAAQ,KAAK,MAAM,CAAC;IAEnC,OAAO;QACH,QAAQ;QACR,WAAW,EAAE,MAAM;QACnB,gBAAgB,EAAE,MAAM;QACxB,mBAAmB,EAAE,MAAM,EAAE,yBAAyB;QACtD,iBAAiB,EAAE,MAAM;KAC5B,CAAC;AACN,CAAC"}
|
package/dist/types.d.ts
CHANGED
|
@@ -166,6 +166,8 @@ export interface MetricsSnapshot {
|
|
|
166
166
|
workers?: WorkerInfo[];
|
|
167
167
|
/** Number of workers in cluster mode */
|
|
168
168
|
workerCount?: number;
|
|
169
|
+
/** Whether running in edge mode with limited metrics */
|
|
170
|
+
isEdgeMode?: boolean;
|
|
169
171
|
}
|
|
170
172
|
/**
|
|
171
173
|
* Worker info for cluster mode
|
package/dist/types.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,MAAM,IAAI,YAAY,EAAE,MAAM,WAAW,CAAC;AAExD;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAChC,oEAAoE;IACpE,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,iDAAiD;IACjD,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,oDAAoD;IACpD,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,sDAAsD;IACtD,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,iDAAiD;IACjD,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,mDAAmD;IACnD,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,wDAAwD;IACxD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,uBAAuB;IACvB,MAAM,CAAC,EAAE,eAAe,CAAC;IACzB,uDAAuD;IACvD,WAAW,CAAC,EAAE,MAAM,OAAO,CAAC,iBAAiB,CAAC,CAAC;IAC/C,yCAAyC;IACzC,aAAa,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,MAAM,CAAC;IACzC,uFAAuF;IACvF,WAAW,CAAC,EAAE,OAAO,CAAC;CACzB;AAED;;GAEG;AACH,MAAM,WAAW,eAAe;IAC5B,6CAA6C;IAC7C,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,gDAAgD;IAChD,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,mDAAmD;IACnD,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,mDAAmD;IACnD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,oDAAoD;IACpD,YAAY,CAAC,EAAE,MAAM,CAAC;CACzB;AAED;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAC9B,SAAS,EAAE,OAAO,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACrC;AAED;;GAEG;AACH,MAAM,WAAW,eAAe;IAC5B,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,MAAM,CAAC;CACjB;AAED;;GAEG;AACH,MAAM,WAAW,eAAe;IAC5B,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAAC;CAC1B;AAED;;GAEG;AACH,MAAM,WAAW,UAAU;IACvB,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,EAAE,MAAM,CAAC;CACtB;AAED;;GAEG;AACH,MAAM,WAAW,UAAU;IACvB,SAAS,EAAE,MAAM,CAAC;IAClB,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;CACnB;AAED;;GAEG;AACH,MAAM,WAAW,cAAc;IAC3B,GAAG,EAAE,MAAM,CAAC;IACZ,GAAG,EAAE,MAAM,CAAC;IACZ,GAAG,EAAE,MAAM,CAAC;IACZ,GAAG,EAAE,MAAM,CAAC;CACf;AAED;;GAEG;AACH,MAAM,WAAW,WAAW;IACxB,GAAG,EAAE,OAAO,CAAC;IACb,MAAM,EAAE,OAAO,CAAC;IAChB,YAAY,EAAE,OAAO,CAAC;IACtB,SAAS,EAAE,OAAO,CAAC;IACnB,YAAY,EAAE,OAAO,CAAC;CACzB;AAED;;GAEG;AACH,MAAM,WAAW,OAAO;IACpB,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;IACpB,cAAc,EAAE,MAAM,CAAC;CAC1B;AAED;;GAEG;AACH,MAAM,WAAW,aAAa;IAC1B,SAAS,EAAE,OAAO,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC;IACjB,oBAAoB,EAAE,MAAM,CAAC;IAC7B,aAAa,EAAE,MAAM,CAAC;IACtB,SAAS,EAAE,MAAM,CAAC;IAClB,IAAI,CAAC,EAAE,MAAM,CAAC;CACjB;AAED;;GAEG;AACH,MAAM,WAAW,eAAe;IAC5B,SAAS,EAAE,MAAM,CAAC;IAClB,GAAG,EAAE,MAAM,CAAC;IACZ,QAAQ,EAAE,MAAM,CAAC;IACjB,aAAa,EAAE,MAAM,CAAC;IACtB,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;IACf,aAAa,EAAE,MAAM,CAAC;IACtB,YAAY,EAAE,MAAM,CAAC;IACrB,GAAG,EAAE,MAAM,CAAC;IACZ,WAAW,EAAE,eAAe,CAAC;IAC7B,aAAa,EAAE,MAAM,CAAC;IACtB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,YAAY,EAAE,MAAM,CAAC;IACrB,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;IACpB,GAAG,EAAE,MAAM,CAAC;IACZ,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,cAAc,CAAC;IAC5B,SAAS,EAAE,UAAU,EAAE,CAAC;IACxB,aAAa,EAAE,UAAU,EAAE,CAAC;IAC5B,WAAW,EAAE,UAAU,EAAE,CAAC;IAC1B,YAAY,EAAE,UAAU,EAAE,CAAC;IAC3B,MAAM,EAAE,WAAW,CAAC;IACpB,EAAE,EAAE,OAAO,CAAC;IACZ,QAAQ,EAAE,aAAa,CAAC;IACxB,cAAc,EAAE;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC;IACnD,SAAS,EAAE,MAAM,CAAC;IAClB,mCAAmC;IACnC,OAAO,CAAC,EAAE,UAAU,EAAE,CAAC;IACvB,wCAAwC;IACxC,WAAW,CAAC,EAAE,MAAM,CAAC;CACxB;AAED;;GAEG;AACH,MAAM,WAAW,UAAU;IACvB,GAAG,EAAE,MAAM,CAAC;IACZ,GAAG,EAAE,MAAM,CAAC;IACZ,QAAQ,EAAE,MAAM,CAAC;IACjB,GAAG,EAAE,MAAM,CAAC;IACZ,aAAa,EAAE,MAAM,CAAC;IACtB,YAAY,EAAE,MAAM,CAAC;CACxB;AAED;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACjC,IAAI,EAAE,gBAAgB,CAAC;IACvB,QAAQ,EAAE,MAAM,CAAC;IACjB,GAAG,EAAE,MAAM,CAAC;IACZ,OAAO,EAAE,OAAO,CAAC,eAAe,CAAC,CAAC;IAClC,MAAM,EAAE,SAAS,CAAC;CACrB;AAED;;GAEG;AACH,MAAM,WAAW,SAAS;IACtB,GAAG,EAAE,eAAe,EAAE,CAAC;IACvB,MAAM,EAAE,eAAe,EAAE,CAAC;IAC1B,IAAI,EAAE,eAAe,EAAE,CAAC;IACxB,OAAO,EAAE,eAAe,EAAE,CAAC;IAC3B,YAAY,EAAE,eAAe,EAAE,CAAC;IAChC,GAAG,EAAE,eAAe,EAAE,CAAC;IACvB,YAAY,EAAE,eAAe,EAAE,CAAC;IAChC,SAAS,EAAE,eAAe,EAAE,CAAC;CAChC;AAED;;GAEG;AACH,MAAM,WAAW,cAAc;IAC3B,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,EAAE,MAAM,CAAC;CACjB;AAED;;GAEG;AACH,MAAM,WAAW,aAAa;IAC1B,4CAA4C;IAC5C,UAAU,EAAE,CAAC,CAAC,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACjE,kCAAkC;IAClC,UAAU,EAAE,CAAC,MAAM,EAAE,GAAG,KAAK,YAAY,CAAC;IAC1C,mCAAmC;IACnC,UAAU,EAAE,MAAM,OAAO,CAAC,eAAe,CAAC,CAAC;IAC3C,qBAAqB;IACrB,SAAS,EAAE,MAAM,SAAS,CAAC;IAC3B,+BAA+B;IAC/B,KAAK,EAAE,MAAM,IAAI,CAAC;IAClB,8BAA8B;IAC9B,IAAI,EAAE,MAAM,IAAI,CAAC;IACjB,+BAA+B;IAC/B,cAAc,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,IAAI,CAAC;IAC3C,yBAAyB;IACzB,YAAY,EAAE,MAAM,OAAO,CAAC,MAAM,CAAC,CAAC;IACpC,oBAAoB;IACpB,MAAM,EAAE,QAAQ,CAAC,mBAAmB,CAAC,CAAC;CACzC"}
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,10 +1,22 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "hono-status-monitor",
|
|
3
|
-
"version": "1.0.
|
|
4
|
-
"description": "Real-time server monitoring dashboard for Hono.js with WebSocket updates. Express-status-monitor style metrics
|
|
3
|
+
"version": "1.0.3",
|
|
4
|
+
"description": "Real-time server monitoring dashboard for Hono.js with WebSocket updates. Works with Node.js and Cloudflare Workers. Express-status-monitor style metrics.",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"types": "dist/index.d.ts",
|
|
7
7
|
"type": "module",
|
|
8
|
+
"exports": {
|
|
9
|
+
".": {
|
|
10
|
+
"types": "./dist/index.d.ts",
|
|
11
|
+
"import": "./dist/index.js",
|
|
12
|
+
"require": "./dist/index.js"
|
|
13
|
+
},
|
|
14
|
+
"./edge": {
|
|
15
|
+
"types": "./dist/index-edge.d.ts",
|
|
16
|
+
"import": "./dist/index-edge.js",
|
|
17
|
+
"require": "./dist/index-edge.js"
|
|
18
|
+
}
|
|
19
|
+
},
|
|
8
20
|
"files": [
|
|
9
21
|
"dist"
|
|
10
22
|
],
|
|
@@ -23,8 +35,9 @@
|
|
|
23
35
|
"metrics",
|
|
24
36
|
"real-time",
|
|
25
37
|
"performance",
|
|
26
|
-
"
|
|
27
|
-
"
|
|
38
|
+
"cloudflare",
|
|
39
|
+
"workers",
|
|
40
|
+
"edge",
|
|
28
41
|
"socket.io",
|
|
29
42
|
"express-status-monitor"
|
|
30
43
|
],
|
|
@@ -40,16 +53,21 @@
|
|
|
40
53
|
"url": "https://github.com/vinitkumargoel/hono-status-monitor/issues"
|
|
41
54
|
},
|
|
42
55
|
"peerDependencies": {
|
|
43
|
-
"@hono/node-server": ">=1.0.0",
|
|
44
56
|
"hono": ">=4.0.0"
|
|
45
57
|
},
|
|
46
|
-
"
|
|
58
|
+
"peerDependenciesMeta": {
|
|
59
|
+
"@hono/node-server": {
|
|
60
|
+
"optional": true
|
|
61
|
+
}
|
|
62
|
+
},
|
|
63
|
+
"optionalDependencies": {
|
|
47
64
|
"socket.io": "^4.7.0"
|
|
48
65
|
},
|
|
49
66
|
"devDependencies": {
|
|
50
67
|
"@hono/node-server": "^1.19.0",
|
|
51
68
|
"@types/node": "^20.0.0",
|
|
52
69
|
"hono": "^4.6.0",
|
|
70
|
+
"socket.io": "^4.7.0",
|
|
53
71
|
"typescript": "^5.3.0",
|
|
54
72
|
"vitest": "^4.0.16"
|
|
55
73
|
},
|