Sha256: 4b3c953b911f3d39561dce17b300214b3d287e0a8e7e2cc6310c1869f14f312d
Contents?: true
Size: 972 Bytes
Versions: 9
Compression:
Stored size: 972 Bytes
Contents
require 'sqreen/ecosystem/module_api' require 'sqreen/ecosystem/module_api/event_listener' require 'sqreen/ecosystem/module_api/message_producer' require 'sqreen/ecosystem/module_api/tracing/server_data' module Sqreen module Ecosystem module Http class RackRequest class HttpServerData include ModuleApi::Tracing::ServerData end include ModuleApi::EventListener include ModuleApi::MessageProducer def setup advice = wrap_for_interest( ModuleApi::Tracing::ServerData, &method(:handle_request) ) on_request_start(&advice) end private def handle_request(rack_request) trace_id = rack_request.env[ModuleApi::TRACE_ID_ENV_KEY] HttpServerData.new( transport: 'http', client_ip: rack_request.ip, tracing_identifier: trace_id ) end end end end end
Version data entries
9 entries across 9 versions & 1 rubygems