diff --git a/guix-data-service/web/server.scm b/guix-data-service/web/server.scm index 5507346..cced889 100644 --- a/guix-data-service/web/server.scm +++ b/guix-data-service/web/server.scm @@ -361,6 +361,21 @@ port. Also, the port used can be changed by passing the --port option.\n" render-metrics))))) #:unwind? #t)) #:connection-buffer-size (expt 2 14) + #:post-request-hook + (lambda* (request #:key read-request-time + response-end-time + #:allow-other-keys) + (let ((request-duration + (/ (- response-end-time + read-request-time) + internal-time-units-per-second))) + (when (> request-duration + 30) + (format + (current-error-port) + "warning: ~a took ~f seconds to complete\n" + (uri-path (request-uri request)) + request-duration)))) #:host host #:port port))) #:unwind? #t)))