Sha256: 4f99d520bfe0e0eb5725467517b2137e488858a32bfea0e2918cebe959f21c2c
Contents?: true
Size: 515 Bytes
Versions: 3
Compression:
Stored size: 515 Bytes
Contents
module SentryRealIp class Middleware def initialize(app) @app = app end def call(env) real_ip = determine_real_ip(env) if real_ip user_context = { ip_address: real_ip }.merge(Raven.context.user) Raven.user_context(user_context) end @app.call(env) end private def determine_real_ip(env) real_ip = env['HTTP_X_FORWARDED_FOR'] || env['HTTP_X_REAL_IP'] real_ip.split(',').first.strip if real_ip && !real_ip.empty? end end end
Version data entries
3 entries across 3 versions & 1 rubygems
Version | Path |
---|---|
sentry_real_ip-1.1.2 | lib/sentry_real_ip/middleware.rb |
sentry_real_ip-1.1.1 | lib/sentry_real_ip/middleware.rb |
sentry_real_ip-1.1.0 | lib/sentry_real_ip/middleware.rb |