Skip to content

Instantly share code, notes, and snippets.

@qrush
Created April 27, 2012 20:59
Show Gist options
  • Save qrush/2513183 to your computer and use it in GitHub Desktop.
Save qrush/2513183 to your computer and use it in GitHub Desktop.
Rails 3.2 Tagged Logger examples
# somewhere in your middleware stack...
# request.env['yourapp.someid'] = "1337"
YourApp::Application.configure do
config.log_tags = [
-> request {
request.env['yourapp.someid']
}
]
end
# [1337] Processing by ProjectsController#index as HTML
YourApp::Application.configure do
config.log_tags = ["Static"]
end
# [Static] Processing by ProjectsController#index as HTML
YourApp::Application.configure do
config.log_tags = [:uuid]
end
# [71ba53fd717c67a6677a058f4a5acdf4] Processing by ProjectsController#index as HTML
@danmayer
Copy link

If you haven't checked it out, I found this was looking for various ways of inserting request_id and user_id, I ended up moving our app to lograge and using some custom event data. Look at the section on "You can also add a hook for own custom data"

https://github.com/roidrage/lograge

basically the flow for any variables is below

#in app config
config.lograge.custom_options = lambda do |event|
    {:name => "value", :user_id => event.payload[:user_id]}
  end

then set the custom var in application_controller.rb

  def append_info_to_payload(payload)
    super

    payload[:user] = current_user.try(:id)
  end

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment