@@ -91,6 +91,9 @@ const {
91
91
createJWTAuth ,
92
92
createLogger ,
93
93
createRateLimit ,
94
+ createPrometheusMiddleware ,
95
+ createMetricsHandler ,
96
+ createPrometheusIntegration ,
94
97
} = require (' 0http-bun/lib/middleware' )
95
98
```
96
99
@@ -104,6 +107,9 @@ import {
104
107
createJWTAuth ,
105
108
createLogger ,
106
109
createRateLimit ,
110
+ createPrometheusMiddleware ,
111
+ createMetricsHandler ,
112
+ createPrometheusIntegration ,
107
113
} from ' 0http-bun/lib/middleware'
108
114
109
115
// Import types
@@ -545,7 +551,11 @@ Comprehensive Prometheus metrics integration for monitoring and observability wi
545
551
> 📦 **Required dependency**: ` bun install prom- client`
546
552
547
553
` ` ` javascript
548
- import {createPrometheusIntegration } from ' 0http-bun/lib/middleware/prometheus'
554
+ const {
555
+ createPrometheusMiddleware ,
556
+ createMetricsHandler ,
557
+ createPrometheusIntegration ,
558
+ } = require (' 0http-bun/lib/middleware' )
549
559
550
560
// Simple setup with default metrics
551
561
const prometheus = createPrometheusIntegration ()
@@ -568,6 +578,12 @@ The Prometheus middleware automatically collects:
568
578
#### Advanced Configuration
569
579
570
580
` ` ` javascript
581
+ const {
582
+ createPrometheusMiddleware ,
583
+ createMetricsHandler ,
584
+ createPrometheusIntegration ,
585
+ } = require (' 0http-bun/lib/middleware' )
586
+
571
587
const prometheus = createPrometheusIntegration ({
572
588
// Control default Node.js metrics collection
573
589
collectDefaultMetrics: true ,
@@ -602,6 +618,12 @@ const prometheus = createPrometheusIntegration({
602
618
#### Custom Business Metrics
603
619
604
620
` ` ` javascript
621
+ const {
622
+ createPrometheusIntegration ,
623
+ } = require (' 0http-bun/lib/middleware' )
624
+
625
+ // Get the prometheus client from the integration
626
+ const prometheus = createPrometheusIntegration ()
605
627
const {promClient } = prometheus
606
628
607
629
// Create custom metrics
@@ -644,6 +666,8 @@ router.post('/orders', async (req) => {
644
666
#### Metrics Endpoint Options
645
667
646
668
` ` ` javascript
669
+ const {createMetricsHandler } = require (' 0http-bun/lib/middleware' )
670
+
647
671
// Custom metrics endpoint
648
672
const metricsHandler = createMetricsHandler ({
649
673
endpoint: ' /custom-metrics' , // Default: '/metrics'
@@ -1029,8 +1053,8 @@ Apply middleware only to specific paths:
1029
1053
1030
1054
` ` ` typescript
1031
1055
// API-only middleware
1032
- router .use (' /api/*' , jwtAuth ({secret: ' api-secret' }))
1033
- router .use (' /api/*' , rateLimit ({max: 1000 }))
1056
+ router .use (' /api/*' , createJWTAuth ({secret: ' api-secret' }))
1057
+ router .use (' /api/*' , createRateLimit ({max: 1000 }))
1034
1058
1035
1059
// Admin-only middleware
1036
1060
router .use (' /admin/*' , adminAuthMiddleware)
0 commit comments