Rails active support instrumentation
radin reth
Posted on September 7, 2021
Today I am gonna have a brief introduction about active support instrumentation. We will start from what it really is and how to use it.
Instrumentation provide a HOOK when certain events happen inside rails. Moreover, You can publish your own custom event if you want :)
How it works
It's really easy. All you need to do it listen to event that rails publish.
Below is the activity logs feature that I implement in my current project
I subscribe to
process_action.action_controller
(rails specific event)I capture some information and pass to sidekiq's worker to perform some task
# config/initializers/my_event.rb
ActiveSupport::Notifications.subscribe "process_action.action_controller" do |name, started, finished, unique_id, data|
args = data.slice(:controller, :action, :format, :method, :path, :status)
args[:payload] = data[:params].except(:action, :controller)
ActivityLogsWorker.perform_async args
end
Notice that
data is a hash with the following keys
It's simple as that.
for more detail read more on rails official website
Posted on September 7, 2021
Join Our Newsletter. No Spam, Only the good stuff.
Sign up to receive the latest update from our blog.
Related
November 30, 2024