Class: ActiveRecord::QueryCounter
- Inherits:
-
Object
- Object
- ActiveRecord::QueryCounter
- Defined in:
- lib/testscore.rb
Constant Summary collapse
- IGNORED_SQL =
[ /^PRAGMA (?!(table_info))/, /^SELECT currval/, /^SELECT CAST/, /^SELECT @@IDENTITY/, /^SELECT @@ROWCOUNT/, /^SAVEPOINT/, /FROM pg_attribute/, /JOIN pg_attribute/, /JOIN pg_namespace/, /SHOW search_path/, /^BEGIN$/, /^ROLLBACK$/, /^ROLLBACK TO SAVEPOINT/, /^RELEASE SAVEPOINT/, /^SHOW max_identifier_length/ ]
Class Attribute Summary collapse
-
.queries ⇒ Object
Returns the value of attribute queries.
Instance Method Summary collapse
Class Attribute Details
.queries ⇒ Object
Returns the value of attribute queries.
8 9 10 |
# File 'lib/testscore.rb', line 8 def queries @queries end |
Instance Method Details
#call(name, start, finish, message_id, values) ⇒ Object
29 30 31 32 33 34 35 36 37 38 |
# File 'lib/testscore.rb', line 29 def call(name, start, finish, , values) return if 'CACHE' == values[:name] return if IGNORED_SQL.any? { |r| values[:sql] =~ r } self.class.queries ||= [] self.class.queries << { duration: finish - start, sql: values[:sql] } end |