Sha256: d82e9adc9b6a9aecab6e500559039cc111e74c4de2b6b7ade1c05979f101208e

Contents?: true

Size: 1.46 KB

Versions: 4

Compression:

Stored size: 1.46 KB

Contents

# Setup the include path
$:.unshift(File.dirname(__FILE__) + '/..')

$database = RequestLogAnalyzer::Database.new(ENV['RLA_DBCONSOLE_DATABASE'])
$database.load_database_schema!
$database.register_default_orm_classes!

require 'cli/tools'

def wordwrap(string, max = 80, indent = "")
  strings = [""]
  string.split(", ").each do |item|
    if strings.last.length == 0 || strings.last.length + item.length <= max
      strings.last << item << ', '
    else
      strings << (item + ', ')
    end
  end
  strings.map(&:strip).join("\n#{indent}").slice(0..-2)
end

class Request
  def inspect
    request_inspect = "Request[id: #{id}]"
    request_inspect << " <#{lines.first.source.filename}>" if lines.first.source
    
    inspected_lines = lines.map do |line|
      inspect_line = "   - #{line.line_type} (line #{line.lineno})"
      if (inspect_attributes = line.attributes.reject { |(k, v)| [:id, :source_id, :request_id, :lineno].include?(k.to_sym) }).any?
        inspect_attributes = inspect_attributes.map { |(k,v)| "#{k} = #{v.inspect}" }.join(', ')
        inspect_line << "\n      " + wordwrap(inspect_attributes, terminal_width - 6, "      ")
      end
      inspect_line
    end
    
    request_inspect << "\n" << inspected_lines.join("\n") << "\n\n"
  end
end

puts "request-log-analyzer database console"
puts "-------------------------------------"
puts "The following ActiveRecord classes are available:"
puts $database.orm_classes.map { |k| k.name.split('::').last }.join(", ")

Version data entries

4 entries across 4 versions & 2 rubygems

Version Path
wvanbergen-request-log-analyzer-1.3.6 lib/cli/database_console_init.rb
wvanbergen-request-log-analyzer-1.3.7 lib/cli/database_console_init.rb
request-log-analyzer-1.3.7 lib/cli/database_console_init.rb
request-log-analyzer-1.3.6 lib/cli/database_console_init.rb