Adding color logger, custom error pages, and exceptions to logs

This commit is contained in:
Chris Cowan 2014-09-02 16:11:35 -07:00
parent 1804dfe2ac
commit c8b7e7ecf7
2 changed files with 48 additions and 19 deletions

View file

@ -60,22 +60,7 @@ ENV["KIBANA_PORT"] = port.to_s
ENV["KIBANA_CONFIG_FILE"] = options[:config]
ENV["KIBANA_ELASTICSEARCH"] = elasticsearch
# Clone argv and then clear it and set up the defaults for the Puma CLI
# puma_args = ARGV.clone()
# puma_args.clear
# puma_args << '--tag'
# puma_args << 'kibana'
# puma_args << '-d'
# puma_args << '--port'
# puma_args << port.to_s
# puma_args << "#{HERE}/../config/web.ru"
# gem 'puma', version
# load Gem.bin_path('puma', 'puma', version)
#
# cli = Puma::CLI.new puma_args
# cli.run
# Require the server and start it with defaults
require "#{HERE}/../lib/server"
server_opts = {

View file

@ -3,10 +3,11 @@
$LOAD_PATH.unshift(ENV['KIBANA_ROOT'])
require "logger"
require "routes/home"
require "routes/proxy"
require "json"
require "lib/JSONLogger"
require "lib/ColorLogger"
require "routes/home"
require "routes/proxy"
class Logger
alias_method :write, :<<
@ -14,12 +15,55 @@ end
module Kibana
class App < Sinatra::Base
configure do
logger = Logger.new(STDOUT)
use JSONLogger, logger
logger.formatter = proc do |severity, datetime, progname, msg|
data = {
'@timestamp' => datetime.iso8601,
:level => severity,
:name => progname || "Kibana",
:message => msg
}
data.to_json + "\n"
end
set :logger, logger
disable :raise_errors
disable :show_exceptions
disable :dump_errors
end
configure :production do
use JSONLogger, settings.logger
end
configure :development do
use ColorLogger, settings.logger
end
error do
500
end
error 400 do
json :status => 500, :message => "Bad Request"
end
error 500 do
json :status => 500, :message => "Internal Server Error"
end
not_found do
json :status => 404, :message => "Not Found"
end
get '/throw' do
raise "SHIT!"
end
# Routes go here
use Routes::Home
use Routes::Proxy
end
end