Skip to content
No description, website, or topics provided.
Ruby
Branch: master
Clone or download
Pull request Compare This branch is 26 commits ahead of samuelkadolph:master.
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.
bin
gemfiles
lib
test
.gitignore
.rubocop-https---shopify-github-io-ruby-style-guide-rubocop-yml
.rubocop.yml
.travis.yml
Gemfile
Gemfile.lock
LICENSE
README.md
Rakefile
buffered-logger.gemspec
shipit.yml

README.md

Build Status

buffered-logger

buffered-logger is a concurrency safe logger. It buffers each logging statement and writes to the log file all at once.

Description

buffered-logger is designed to be used in multithreaded or multifiber rack servers and includes a middleware to automatically capture and write the buffered log statements during each request. This is ideal for keeping requests together for log parsing software such as splunk.

Installation

If you're using rails, add this line your application's Gemfile:

gem "buffered-logger", require: "buffered_logger/rails"

Otherwise add this line to your application's Gemfile:

gem "buffered-logger"

And then execute:

$ bundle install

Or install it yourself as:

$ gem install buffered-logger

Usage

require "buffered_logger"

MyApp.logger = BufferedLogger.new("myapp.log")

use BufferedLogger::Middleware, MyApp.logger
run MyApp

If the RAILS_LOG_TO_STDOUT environment variable is set in a Rails environment, buffered-logger would be 12 factor app compatible for containerized environments.

Contributing

Fork, branch & pull request.

You can’t perform that action at this time.