module Db2Query::Logger
Public Instance Methods
log(sql, binds = [], args = []) { || ... }
click to toggle source
# File lib/db2_query/logger.rb, line 15 def log(sql, binds = [], args = [], &block) instrument( "sql.active_record", sql: sql, name: "SQL", binds: binds, type_casted_binds: args, statement_name: nil, connection_id: object_id, connection: self) do synchronize do yield end rescue => e raise translate_exception_class(e, sql, binds) end end
translate_exception(exception, message:, sql:, binds:)
click to toggle source
# File lib/db2_query/logger.rb, line 33 def translate_exception(exception, message:, sql:, binds:) case exception when RuntimeError exception else StatementInvalid.new(message, sql: sql, binds: binds) end end
translate_exception_class(e, sql, binds)
click to toggle source
# File lib/db2_query/logger.rb, line 5 def translate_exception_class(e, sql, binds) message = "#{e.class.name}: #{e.message}" exception = translate_exception( e, message: message, sql: sql, binds: binds ) exception.set_backtrace e.backtrace exception end