Skip to content

Commit

Permalink
added base_path
Browse files Browse the repository at this point in the history
  • Loading branch information
seanohalpin committed Sep 5, 2010
1 parent 75e6bae commit df763fc
Showing 1 changed file with 39 additions and 20 deletions.
59 changes: 39 additions & 20 deletions lib/logutil.rb
Original file line number Diff line number Diff line change
Expand Up @@ -3,34 +3,51 @@
#
# provides global logger method to access the global @logger object
#
# requires BASE_PATH to be set
#
require 'rubygems'
require 'logging'
require 'fileutils'

module LogUtil
class << self

def create_logfile(basename = File.basename($0, '.rb'), filename = File.join(BASE_PATH, 'log', "#{basename}.log"), level = :info)

def base_path
@base_path ||= File.expand_path(File.join(File.dirname(__FILE__), '..'))
end

def base_path=(base_path)
@base_path = base_path
end

def create_logfile(basename = File.basename($0, '.rb'), filename = File.join(base_path, 'log', "#{basename}.log"), level = :info)
base_dir = File.dirname(filename)
FileUtils.mkdir_p(base_dir)
#p [:create_logfile, basename, filename, level]
@logger = Logging::Logger[basename]
file_layout = Logging::Layouts::Pattern.new(
:pattern => "[%d] %c - %-5l : %m\n",
:date_pattern => "%Y-%m-%d %H:%M:%S.%s"
# :pattern => "[%d] %c - %-5l : %m\n",
#:pattern => "%d\t%c\t%l\t%m\n",
#:pattern => "%d %c %-5l %m\n",
:pattern => "[%c] %d - %-5l: %m\n",
:date_pattern => "%Y-%m-%dT%H:%M:%S.%s"
)
@logger.add_appenders(
Logging::Appenders::RollingFile.new(filename,
:layout => file_layout,
:truncate => true,
:size => 1024 * 1024 * 10, # 10 Meg
:keep => 2,
:safe => true)
)

# Log everything to stdout too
stdout_layout = Logging::Layouts::Pattern.new( :pattern => "%c - %-5l : %m\n" )
@logger.add_appenders( Logging::Appenders::Stdout.new( :layout => stdout_layout ) )


# Log everything to stdout before trying to log to file
stdout_layout = Logging::Layouts::Pattern.new(
# :pattern => "%c - %-5l : %m\n"
:pattern => "[%c] %d - %-5l: %m\n"
)
# @logger.add_appenders( Logging::Appenders::Stdout.new( :layout => stdout_layout ) )
# @logger.add_appenders( Logging::Appenders::Stderr.new( :layout => stdout_layout ) )

# @logger.add_appenders(
# Logging::Appenders::RollingFile.new(filename,
# :layout => file_layout,
# :truncate => true,
# :size => 1024 * 1024 * 10, # 10 Meg
# :keep => 1,
# :safe => true)
# )

#pp [:appenders, @logger.instance_eval { @appenders }]
#p [:level, @logger.level]
@logger.level = level
Expand All @@ -49,6 +66,8 @@ def logger
end

if $0 == __FILE__
BASE_PATH = File.expand_path(File.join(File.dirname(__FILE__), '..'))
LogUtil.base_path = "/tmp"
logger.info "Hello World!"
logger.level = :debug
logger.debug "A longer message which contains all sorts of things |hello| [asdasd]!"
end

0 comments on commit df763fc

Please sign in to comment.