@@ -308,9 +308,17 @@ function buildRedirectDestination({ redirectHostname, httpsPort, requestPath = '
308308 return destination . toString ( ) ;
309309}
310310
311- function createRedirectApp ( { httpsPort = 443 , redirectHostname = DEFAULT_REDIRECT_HTTPS_HOST } = { } ) {
311+ function createRedirectApp ( {
312+ httpsPort = 443 ,
313+ redirectHostname = DEFAULT_REDIRECT_HTTPS_HOST ,
314+ metricsHandler = null ,
315+ } = { } ) {
312316 const app = express ( ) ;
313317
318+ if ( metricsHandler ) {
319+ app . get ( '/metrics' , metricsHandler ) ;
320+ }
321+
314322 app . use ( ( req , res ) => {
315323 const destination = buildRedirectDestination ( {
316324 redirectHostname,
@@ -1068,11 +1076,11 @@ function createApp({
10681076 }
10691077 }
10701078
1071- return { app, proxyRoutes } ;
1079+ return { app, metrics , proxyRoutes } ;
10721080}
10731081
10741082function start ( { port = DEFAULT_PORT , env = process . env } = { } ) {
1075- const { app } = createApp ( { env } ) ;
1083+ const { app, metrics } = createApp ( { env } ) ;
10761084 const tlsOptions = loadTlsOptions ( env ) ;
10771085
10781086 if ( ! tlsOptions ) {
@@ -1099,6 +1107,7 @@ function start({ port = DEFAULT_PORT, env = process.env } = {}) {
10991107 const redirectApp = createRedirectApp ( {
11001108 httpsPort : redirectHttpsPort ,
11011109 redirectHostname : redirectHost ,
1110+ metricsHandler : metrics . handler ,
11021111 } ) ;
11031112 httpServer = http . createServer ( redirectApp ) ;
11041113 httpServer . listen ( port , ( ) => {
0 commit comments