11const express = require ( 'express' )
2+ const instrument = require ( '../lib/instrument-middleware' )
23
34const isDevelopment = process . env . NODE_ENV === 'development'
45
@@ -24,7 +25,7 @@ module.exports = function (app) {
2425 // See https://expressjs.com/en/guide/behind-proxies.html
2526 app . set ( 'trust proxy' , 1 )
2627 app . use ( require ( './rate-limit' ) )
27- app . use ( require ( './handle-invalid-paths' ) )
28+ app . use ( instrument ( './handle-invalid-paths' ) )
2829
2930 // *** Security ***
3031 app . use ( require ( './cors' ) )
@@ -43,50 +44,50 @@ module.exports = function (app) {
4344 // *** Config and context for redirects ***
4445 app . use ( require ( './req-utils' ) ) // Must come before record-redirect and events
4546 app . use ( require ( './record-redirect' ) )
46- app . use ( require ( './detect-language' ) ) // Must come before context, breadcrumbs, find-page, handle-errors, homepages
47- app . use ( asyncMiddleware ( require ( './context' ) ) ) // Must come before early-access-*, handle-redirects
47+ app . use ( instrument ( './detect-language' ) ) // Must come before context, breadcrumbs, find-page, handle-errors, homepages
48+ app . use ( asyncMiddleware ( instrument ( './context' ) ) ) // Must come before early-access-*, handle-redirects
4849
4950 // *** Redirects, 3xx responses ***
5051 // I ordered these by use frequency
5152 app . use ( require ( 'connect-slashes' ) ( false ) )
52- app . use ( require ( './redirects/external' ) )
53- app . use ( require ( './redirects/help-to-docs' ) )
54- app . use ( require ( './redirects/language-code-redirects' ) ) // Must come before contextualizers
55- app . use ( require ( './redirects/handle-redirects' ) ) // Must come before contextualizers
53+ app . use ( instrument ( './redirects/external' ) )
54+ app . use ( instrument ( './redirects/help-to-docs' ) )
55+ app . use ( instrument ( './redirects/language-code-redirects' ) ) // Must come before contextualizers
56+ app . use ( instrument ( './redirects/handle-redirects' ) ) // Must come before contextualizers
5657
5758 // *** Config and context for rendering ***
58- app . use ( require ( './find-page' ) ) // Must come before archived-enterprise-versions, breadcrumbs, featured-links, products, render-page
59- app . use ( require ( './block-robots' ) )
59+ app . use ( instrument ( './find-page' ) ) // Must come before archived-enterprise-versions, breadcrumbs, featured-links, products, render-page
60+ app . use ( instrument ( './block-robots' ) )
6061
6162 // *** Rendering, 2xx responses ***
6263 // I largely ordered these by use frequency
63- app . use ( require ( './archived-enterprise-versions-assets' ) ) // Must come before static/assets
64+ app . use ( instrument ( './archived-enterprise-versions-assets' ) ) // Must come before static/assets
6465 app . use ( '/dist' , express . static ( 'dist' ) )
6566 app . use ( '/assets' , express . static ( 'assets' ) )
6667 app . use ( '/public' , express . static ( 'data/graphql' ) )
67- app . use ( '/events' , require ( './events' ) )
68- app . use ( '/csrf' , require ( './csrf-route' ) )
69- app . use ( '/search' , require ( './search' ) )
70- app . use ( require ( './archived-enterprise-versions' ) )
71- app . use ( require ( './robots' ) )
72- app . use ( / ( \/ .* ) ? \/ e a r l y - a c c e s s $ / , require ( './contextualizers/early-access-links' ) )
73- app . use ( require ( './categories-for-support-team' ) )
74- app . use ( require ( './loaderio-verification' ) )
75- app . get ( '/_500' , asyncMiddleware ( require ( './trigger-error' ) ) )
68+ app . use ( '/events' , instrument ( './events' ) )
69+ app . use ( '/csrf' , instrument ( './csrf-route' ) )
70+ app . use ( '/search' , instrument ( './search' ) )
71+ app . use ( instrument ( './archived-enterprise-versions' ) )
72+ app . use ( instrument ( './robots' ) )
73+ app . use ( / ( \/ .* ) ? \/ e a r l y - a c c e s s $ / , instrument ( './contextualizers/early-access-links' ) )
74+ app . use ( instrument ( './categories-for-support-team' ) )
75+ app . use ( instrument ( './loaderio-verification' ) )
76+ app . get ( '/_500' , asyncMiddleware ( instrument ( './trigger-error' ) ) )
7677
7778 // *** Preparation for render-page ***
78- app . use ( asyncMiddleware ( require ( './contextualizers/enterprise-release-notes' ) ) )
79- app . use ( require ( './contextualizers/graphql' ) )
80- app . use ( require ( './contextualizers/rest' ) )
81- app . use ( require ( './contextualizers/webhooks' ) )
82- app . use ( require ( './breadcrumbs' ) )
83- app . use ( require ( './early-access-breadcrumbs' ) )
84- app . use ( require ( './enterprise-server-releases' ) )
85- app . use ( require ( './dev-toc' ) )
86- app . use ( require ( './featured-links' ) )
87- app . use ( require ( './learning-track' ) )
79+ app . use ( asyncMiddleware ( instrument ( './contextualizers/enterprise-release-notes' ) ) )
80+ app . use ( instrument ( './contextualizers/graphql' ) )
81+ app . use ( instrument ( './contextualizers/rest' ) )
82+ app . use ( instrument ( './contextualizers/webhooks' ) )
83+ app . use ( instrument ( './breadcrumbs' ) )
84+ app . use ( instrument ( './early-access-breadcrumbs' ) )
85+ app . use ( instrument ( './enterprise-server-releases' ) )
86+ app . use ( instrument ( './dev-toc' ) )
87+ app . use ( instrument ( './featured-links' ) )
88+ app . use ( instrument ( './learning-track' ) )
8889
8990 // *** Rendering, must go last ***
90- app . get ( '/*' , asyncMiddleware ( require ( './render-page' ) ) )
91+ app . get ( '/*' , asyncMiddleware ( instrument ( './render-page' ) ) )
9192 app . use ( require ( './handle-errors' ) )
9293}
0 commit comments