class Sqreen::Ecosystem::Databases::Mongo
Public Instance Methods
setup()
click to toggle source
# File lib/sqreen/ecosystem/databases/mongo.rb, line 18 def setup advice = wrap_for_interest(DatabaseConnectionData, &method(:after_advice)) instrument 'Mongo::Client#initialize', after: advice end
Private Instance Methods
after_advice(call, _ball)
click to toggle source
@param [Sqreen::Graft::CallbackCall] call
# File lib/sqreen/ecosystem/databases/mongo.rb, line 26 def after_advice(call, _ball) return if call.raised client = call.instance server_addrs = client.cluster.servers.map(&:address) server_addrs.map do |addr| DatabaseConnectionData.new( transport: :mongo, host: addr.host, port: addr.port, db: client.database.name, ) end end