提交 c560c8b2 编写于 作者: A Aaron Patterson

log method takes an option list of bind values

上级 37efb517
...@@ -209,11 +209,13 @@ def current_savepoint_name ...@@ -209,11 +209,13 @@ def current_savepoint_name
protected protected
def log(sql, name = "SQL") def log(sql, name = "SQL", binds = [])
@instrumenter.instrument("sql.active_record", @instrumenter.instrument(
:sql => sql, :name => name, :connection_id => object_id) do "sql.active_record",
yield :sql => sql,
end :name => name,
:connection_id => object_id,
:binds => binds) { yield }
rescue Exception => e rescue Exception => e
message = "#{e.class.name}: #{e.message}: #{sql}" message = "#{e.class.name}: #{e.message}: #{sql}"
@logger.debug message if @logger @logger.debug message if @logger
......
...@@ -331,7 +331,7 @@ def clear_cache! ...@@ -331,7 +331,7 @@ def clear_cache!
end end
def exec_query(sql, name = 'SQL', binds = []) def exec_query(sql, name = 'SQL', binds = [])
log(sql, name) do log(sql, name, binds) do
result = nil result = nil
cache = {} cache = {}
......
...@@ -532,7 +532,7 @@ def substitute_for(column, current_values) ...@@ -532,7 +532,7 @@ def substitute_for(column, current_values)
def exec_query(sql, name = 'SQL', binds = []) def exec_query(sql, name = 'SQL', binds = [])
return exec_no_cache(sql, name) if binds.empty? return exec_no_cache(sql, name) if binds.empty?
log(sql, name) do log(sql, name, binds) do
unless @statements.key? sql unless @statements.key? sql
nextkey = "a#{@statements.length + 1}" nextkey = "a#{@statements.length + 1}"
@connection.prepare nextkey, sql @connection.prepare nextkey, sql
......
...@@ -148,7 +148,7 @@ def quoted_date(value) #:nodoc: ...@@ -148,7 +148,7 @@ def quoted_date(value) #:nodoc:
# DATABASE STATEMENTS ====================================== # DATABASE STATEMENTS ======================================
def exec_query(sql, name = nil, binds = []) def exec_query(sql, name = nil, binds = [])
log(sql, name) do log(sql, name, binds) do
# Don't cache statements without bind values # Don't cache statements without bind values
if binds.empty? if binds.empty?
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册