Railsでhealth checkログを残さないようにする(lograge)

公開日時
更新日時

ECSでRailsアプリケーションを動かした際に、CloudWatchLogsにヘルスチェックログが記録されて他のログが追いづらくなるので止めたい。

Rails.logger.silenceを使って無効化する方法もあるが、本番環境ではRailsのログをLogrageに変更していたためLogrageの設定に追記するだけで対応できた。

# config/environments/production.rb
Rails.application.configure do
  config.lograge.enabled = true
  config.lograge.base_controller_class = 'ActionController::API'
  config.lograge.ignore_actions = ['HealthController#index']
end

Related #ruby

Sidekiqで指定時間待ってから実行する

perform_inを使う

Active Jobで指定時間後にジョブを実行する

setメソッドの引数にwaitを指定する

bot tweetするrubyスクリプト

8時間ほどで申請が通っていた

RailsのログをLogrageに変更する

ログを1行にまとめてくれるので便利

request specでリダイレクトのテストをする

redirect_toが使えた

Extension fieldsを使ってdocker-composeのコンテナ設定を共通化する

Railsコンテナ設定を共通化して、commandだけそれぞれで変えるようにした