A minimal logger based on MicroEvent.rb
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
lib
spec
.gitignore
.travis.yml
CHANGELOG.md
Gemfile
MIT-LICENSE.txt
README.md
Rakefile
micrologger.gemspec

README.md

MicroLogger [travis]

A minimal logger based on MicroEvent.

Setup

Add to your Gemfile

gem 'micrologger'

How to Use It

A new logger has to be configured what should be done on log events using handler procs. There are two default handlers for logging to STDOUT/STDERR included:

$logger = MicroLogger.new
$logger.register :info, :stdout
$logger.register :fatal, :stderr

$logger.log "debug" # STDOUT: debug
$logger.log "error", :fatal # STDERR: error

For any andvanced or customized behaviour, you will need to register your own blocks/procs:

Example: Log to File

$logger = MicroLogger.new
$logger.register :warn, :stderr
$logger.register :warn do |message, meta|
  File.open("logfile.#{meta[:level]}.txt", "a"){ |f| f.puts "#{meta[:time]} | #{message}" }
end

$logger.log "hey", :warn # Will write to STDERR and logfile.warn.txt

Other ideas you could do: Send data to a remote endpoint, send emails, send to analytics...

J-_-L

Copyright (c) 2015 Jan Lelis. See MIT-LICENSE for details.