From 49db8de15a1c69afb5778e03010f4a339dc7543d Mon Sep 17 00:00:00 2001 From: Nivedita Priyadarshini Date: Fri, 15 Dec 2023 11:31:28 +0530 Subject: [PATCH] Add duration to request logs --- config.ru | 2 ++ rack/rack_ougai_logger.rb | 5 +++-- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/config.ru b/config.ru index 3e0d099..687555d 100644 --- a/config.ru +++ b/config.ru @@ -6,6 +6,7 @@ require "hanami/middleware/body_parser" require "sentry-ruby" require "rack/jwt/auth" require "rack/jwt" +require "rack/runtime" require "./initializers/config" require "./initializers/sentry_config" require "./initializers/jwt" @@ -127,6 +128,7 @@ class App < Hanami::API use Rack::Ougai::Logger use Rack::Ougai::RequestLogger + use Rack::Runtime use Sentry::Rack::CaptureExceptions use Hanami::Middleware::BodyParser, :json diff --git a/rack/rack_ougai_logger.rb b/rack/rack_ougai_logger.rb index 87c3a53..c19b2ee 100644 --- a/rack/rack_ougai_logger.rb +++ b/rack/rack_ougai_logger.rb @@ -33,14 +33,15 @@ def call(env) private - def create_log(env, status, header) + def create_log(env, status, headers) { time: Time.now, remote_addr: env["HTTP_X_FORWARDED_FOR"] || env["REMOTE_ADDR"], method: env[REQUEST_METHOD], path: env[PATH_INFO], query: env[QUERY_STRING], - status: status.to_i + status: status.to_i, + duration: headers["X-Runtime"] } end end