Skip to content

Commit

Permalink
Remove file handler from CommonLogHandler. Log only to STDOUT. Fixes #…
Browse files Browse the repository at this point in the history
  • Loading branch information
Sdogruyol committed Jul 5, 2016
1 parent 9d84d51 commit 3ea6a01
Show file tree
Hide file tree
Showing 5 changed files with 8 additions and 36 deletions.
2 changes: 1 addition & 1 deletion spec/helpers_spec.cr
Expand Up @@ -29,7 +29,7 @@ describe "Macros" do
end
it "sets a custom logger" do
config = Kemal::Config::INSTANCE
logger CustomLogHandler.new("production")
logger CustomLogHandler.new
config.handlers.last.should be_a(CustomLogHandler)
config.logger.should be_a(CustomLogHandler)
end
Expand Down
26 changes: 2 additions & 24 deletions spec/logger_spec.cr
Expand Up @@ -2,35 +2,13 @@ require "./spec_helper"

describe "Kemal::LogHandler" do
it "creates a handler" do
logger = Kemal::CommonLogHandler.new "production"
logger = Kemal::CommonLogHandler.new
logger.handler.should_not be nil
end

it "creates a STDOUT handler by default" do
config = Kemal.config
logger = Kemal::CommonLogHandler.new "production"
logger = Kemal::CommonLogHandler.new
logger.handler.should be_a IO
end

it "creates a file handler in production" do
config = Kemal.config
config.env = "production"
logger = Kemal::CommonLogHandler.new "production"
logger.handler.should be_a File
end

it "writes to a file in production" do
config = Kemal.config
config.env = "production"
logger = Kemal::CommonLogHandler.new "production"
request = HTTP::Request.new("GET", "/?message=world&time=now")
io = MemoryIO.new
response = HTTP::Server::Response.new(io)
context = HTTP::Server::Context.new(request, response)
logger.call(context)
response.close
str = File.read("kemal.log")
File.delete("kemal.log")
str.includes?("GET /?message=world&time=now").should eq true
end
end
2 changes: 1 addition & 1 deletion src/kemal/base_log_handler.cr
Expand Up @@ -2,7 +2,7 @@ require "http"

# All loggers must inherit from `Kemal::BaseLogHandler`.
class Kemal::BaseLogHandler < HTTP::Handler
def initialize(@env : String)
def initialize
end

def call(context)
Expand Down
10 changes: 2 additions & 8 deletions src/kemal/common_log_handler.cr
Expand Up @@ -4,14 +4,8 @@ class Kemal::CommonLogHandler < Kemal::BaseLogHandler
@handler : IO::FileDescriptor
getter handler

def initialize(@env)
@handler = if @env == "production"
handler = File.new("kemal.log", "a")
handler.flush_on_newline = true
handler
else
STDOUT
end
def initialize
@handler = STDOUT
end

def call(context)
Expand Down
4 changes: 2 additions & 2 deletions src/kemal/config.cr
Expand Up @@ -61,9 +61,9 @@ module Kemal

def setup_log_handler
@logger ||= if @logging
Kemal::CommonLogHandler.new(@env)
Kemal::CommonLogHandler.new
else
Kemal::NullLogHandler.new(@env)
Kemal::NullLogHandler.new
end
HANDLERS.insert(0, @logger.not_nil!)
end
Expand Down

0 comments on commit 3ea6a01

Please sign in to comment.