🪵

active_model_serializers が出力するログを消す

2024/01/26に公開

動機

active_model_serializersはデフォルトで以下のようなログを出力する。

Rendered ActiveModel::Serializer::CollectionSerializer with ActiveModelSerializers::Adapter::Attributes (3.13ms)

これはリクエスト毎に出力され、ログの肥大化によるコスト増加を引き起こしていたので、ログを disable / mute にしたかった。

active_model_serializersのバージョンは0.10.14

結論

以下の設定を含むconfig/initializers/active_model_serializers.rbを作成すればOK。

# config/initializers/active_model_serializers.rb

# Config references: https://github.com/rails-api/active_model_serializers/blob/717ac11fd2e2e20537174cae0c506248cb711ff3/docs/general/logging.md?plain=1#L16-L20
ActiveModelSerializers.logger = Logger.new(IO::NULL)
GitHubで編集を提案

Discussion