From ade9811d101a4ce35ac549f89d0c3ae8c3a1ee98 Mon Sep 17 00:00:00 2001 From: Paul Chavard Date: Wed, 15 Feb 2023 19:07:54 +0100 Subject: [PATCH] Revert "Merge pull request #8635 from tchak/graphql-with-traces" This reverts commit 76520ec77d64286f44e9a0532fe6fbe98d097062, reversing changes made to 2c729ff396980ae898dea3a7878ca1a09fe828a5. --- app/controllers/api/v2/graphql_controller.rb | 36 +++----------------- 1 file changed, 5 insertions(+), 31 deletions(-) diff --git a/app/controllers/api/v2/graphql_controller.rb b/app/controllers/api/v2/graphql_controller.rb index d18a641ec..52c453051 100644 --- a/app/controllers/api/v2/graphql_controller.rb +++ b/app/controllers/api/v2/graphql_controller.rb @@ -1,6 +1,10 @@ class API::V2::GraphqlController < API::V2::BaseController def execute - result = tracing? ? instrumented { perform_query } : perform_query + result = API::V2::Schema.execute(query, + variables: variables, + context: context, + operation_name: params[:operationName]) + render json: result rescue GraphQL::ParseError, JSON::ParserError => exception handle_parse_error(exception) @@ -14,13 +18,6 @@ class API::V2::GraphqlController < API::V2::BaseController private - def perform_query - API::V2::Schema.execute(query, - variables: variables, - context: context, - operation_name: params[:operationName]) - end - def append_info_to_payload(payload) super @@ -127,27 +124,4 @@ class API::V2::GraphqlController < API::V2::BaseController data: nil }, status: 500 end - - def tracing? - params[:tracing].present? && (Rails.env.development? || manager?) - end - - def manager? - administrateur_signed_in? && AdministrateursProcedure.exists?(administrateur: current_administrateur, manager: true) - end - - def instrumented - events = [] - ActiveSupport::Notifications.subscribed(-> (_name, start, finish, _id, payload) { events << { start: Time.zone.at(start), duration: (finish - start) * 1000, sql: payload[:sql] } }, "sql.active_record", monotonic: true) do - result = yield - result.merge(extensions: { - tracing: { - startTime: events.first[:start], - endTime: events.last[:start], - duration: events.sum { _1[:duration] }, - events: events.sort_by { _1[:duration] }.reverse - } - }) - end - end end