Skip to content

mikhailvs/rack-fluentd-logger

Repository files navigation

Rack Fluentd Logger

Gem Version

Install

Gemfile:

gem 'rack-fluentd-logger'

Shell:

gem install rack-fluentd-logger

Usage

config.ru

require 'rack-fluentd-logger'

Rack::FluentdLogger.configure(
  name: 'your-app-log-name',
  host: 'your-fluentd-host',
  port: 24224
)

use Rack::FluentdLogger

run YourApplication

Configuration Options

name default description
name ENV['FLUENTD_NAME'] application name to use for fluentd logs
host ENV['FLUENTD_HOST'] fluentd server hostname/ip
port ENV['FLUENTD_PORT'] || 24_224 fluentd server port
json_parser ->(str) { JSON.parse(str) } used to parse response bodies if they are application/json
preprocessor ->(s) { s } callback for any additional processing/scrubbing of data before sending it off

Event Data

Events sent to fluentd have the following structure

{
  env: {
    # everything from the rack env that's an array/hash/string/number
  },
  timestamp: Time.now, # current time when the log event is recorded
  response_time: 0.012, # length of time in seconds for response from rack
  code: 200, # http response code from rack app
  body: [], # body from rack app (when the content_type is json, it's parsed)
  headers: {} # http headers from the rack app
}

About

Rack middleware to send traffic logs to Fluentd

Topics

Resources

License

Code of conduct

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 5

Languages

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy