Module: Twirp
- Defined in:
- lib/twirp/rails/logger.rb,
lib/twirp/rails/error.rb,
lib/twirp/rails/engine.rb,
lib/twirp/rails/handler.rb,
lib/twirp/rails/version.rb,
lib/twirp/rails/callbacks.rb,
lib/twirp/rails/rescuable.rb,
lib/twirp/rails/dispatcher.rb,
lib/twirp/rails/configuration.rb,
lib/twirp/rails/rack/conditional_post.rb
Overview
Rack::CommonLogger is nice but we can do better. Rails doesn’t use it, but we need to log Twirp requests. Here’s an example from Rack::CommonLogger:
127.0.0.1 - - [12/Jan/2025:17:09:49 -0500] "POST /twirp/twirp.example.haberdasher.Haberdasher/MakeHat HTTP/1.0" 200 - 439.0060
Rails gives us this:
Started POST "/twirp/twirp.example.haberdasher.Haberdasher/MakeHat" for 127.0.0.1 at 2025-01-12 22:48:00 -0500
but we also want to know the result of the Twirp call. Here’s what this Logger adds:
Twirp 200 in 2ms as application/protobuf
Defined Under Namespace
Modules: Rails