Class: Sequel::Database
- Inherits:
-
Object
- Object
- Sequel::Database
- Defined in:
- lib/koa-utils/sequel-logger.rb
Instance Method Summary collapse
- #action(sql) ⇒ Object
- #log_duration(t, sql) ⇒ Object
- #log_exception(e, sql) ⇒ Object
- #log_yield(sql, args = nil) ⇒ Object
Instance Method Details
#action(sql) ⇒ Object
27 28 29 |
# File 'lib/koa-utils/sequel-logger.rb', line 27 def action(sql) sql[/(\w+){1}/].downcase end |
#log_duration(t, sql) ⇒ Object
19 20 21 |
# File 'lib/koa-utils/sequel-logger.rb', line 19 def log_duration(t, sql) Logger.measure("sequel-latency", t, source: action(sql)) end |
#log_exception(e, sql) ⇒ Object
23 24 25 |
# File 'lib/koa-utils/sequel-logger.rb', line 23 def log_exception(e, sql) Logger.log(error: "sequel-exception", class: e.class) end |
#log_yield(sql, args = nil) ⇒ Object
5 6 7 8 9 10 11 12 13 14 15 16 17 |
# File 'lib/koa-utils/sequel-logger.rb', line 5 def log_yield(sql, args=nil) sql = "#{sql}; #{args.inspect}" if args t0 = Time.now begin yield rescue => e log_exception(e, sql) raise ensure t1 = Time.now log_duration(Integer((t1-t0)*1000), sql) unless e end end |