この Gist の例をいくつか参照してください https://gist.github.com/2513183
request オブジェクトにアクセスできる proc を log_tags 配列に追加できます。
その proc で UUID を生成するか、次のように before_filter で ApplicationController から request.env を介して何かを渡すことができます。
#application_controller.rb
before_filter :set_some_request_env
def set_some_request_env
request.env['some_var'] = "Happy"
end
# application.rb
config.log_tags = [
-> request {
request.env['some_var']
}
]
アップデート
このメソッドを使用して#tagged
、特定のブロック内で送信されるすべてのログ メッセージにタグを追加できます。
リクエストまたはコントローラ パラメータからタグ付き出力にパラメータを取得するには、次の手順を実行できます。
#application_controller.rb
around_filter :add_tags_to_logs
def add_tags_to_logs
Rails.logger.tagged(custom_uuid_for_current_user) do
yield
end
end