aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorYves Senn <yves.senn@gmail.com>2015-04-24 22:10:46 +0200
committerYves Senn <yves.senn@gmail.com>2015-04-24 22:10:46 +0200
commitdc6984448be422146f057ef3e8284839ea6748c3 (patch)
treeaacb9d883133f358d140bd3d2d39c888d438c511
parentab10f6ef223e2ce02ce60cfc44e865cf9ecf7990 (diff)
parentc744af7cd3fd41f97c0b732aaf9fe3ac2bb28469 (diff)
downloadrails-dc6984448be422146f057ef3e8284839ea6748c3.tar.gz
rails-dc6984448be422146f057ef3e8284839ea6748c3.tar.bz2
rails-dc6984448be422146f057ef3e8284839ea6748c3.zip
Merge pull request #19236 from sshaw/more_tagged_logging_docs
More docs on tagged logging [ci skip]
-rw-r--r--guides/source/configuring.md2
-rw-r--r--railties/lib/rails/rack/logger.rb3
2 files changed, 4 insertions, 1 deletions
diff --git a/guides/source/configuring.md b/guides/source/configuring.md
index aa66376d5d..938ba2c89f 100644
--- a/guides/source/configuring.md
+++ b/guides/source/configuring.md
@@ -114,7 +114,7 @@ numbers. New applications filter out passwords by adding the following `config.f
defaults to `:debug` for all environments. The available log levels are: `:debug`,
`:info`, `:warn`, `:error`, `:fatal`, and `:unknown`.
-* `config.log_tags` accepts a list of methods that the `request` object responds to. This makes it easy to tag log lines with debug information like subdomain and request id - both very helpful in debugging multi-user production applications.
+* `config.log_tags` accepts a list of: methods that the `request` object responds to, a `Proc` that accepts the `request` object, or something that responds to `to_s`. This makes it easy to tag log lines with debug information like subdomain and request id - both very helpful in debugging multi-user production applications.
* `config.logger` accepts a logger conforming to the interface of Log4r or the default Ruby `Logger` class. Defaults to an instance of `ActiveSupport::Logger`.
diff --git a/railties/lib/rails/rack/logger.rb b/railties/lib/rails/rack/logger.rb
index 9962e6d943..7aaa353b91 100644
--- a/railties/lib/rails/rack/logger.rb
+++ b/railties/lib/rails/rack/logger.rb
@@ -7,6 +7,9 @@ require 'rack/body_proxy'
module Rails
module Rack
# Sets log tags, logs the request, calls the app, and flushes the logs.
+ #
+ # Log tags (+taggers+) can be an Array containing: methods that the <tt>request</tt> object responds to, a Proc
+ # that accepts an instance of the <tt>request</tt> object, or something that responds to <tt>to_s</tt>.
class Logger < ActiveSupport::LogSubscriber
def initialize(app, taggers = nil)
@app = app