module SpringOnion::JsonLogger
Public Instance Methods
log(sql:, explain:, warnings:, trace:)
click to toggle source
# File lib/spring_onion/json_logger.rb, line 7 def log(sql:, explain:, warnings:, trace:) h = { sql: sql, explain: explain.each_with_index.map { |r, i| { line: i + 1 }.merge(r) }, warnings: warnings.transform_keys { |i| "line #{i + 1}" }, backtrace: trace.slice(0, SpringOnion.trace_len), } line = if SpringOnion.json_pretty JSON.pretty_generate(h) else JSON.dump(h) end line = CodeRay.scan(line, :json).terminal if SpringOnion.color SpringOnion.logger.info(line) end