Ruby on Rails

Monitoring & Logging

Rails.logger, log levels, Sentry, New Relic, ActiveSupport::Notifications, tracing, correlation IDs, observability

20 面接問題·
Senior
1

Rails アプリケーションで使用されるデフォルトのロガーは何ですか?

回答

Rails はロギングシステムへの主要なアクセスポイントとして Rails.logger を使用します。デフォルトでは、環境に応じて log/development.log や log/production.log などのファイルに書き込む ActiveSupport::Logger のインスタンスです。このロガーはアプリケーションの起動時に自動的に設定され、Rails コードのどこからでもアクセスできます。

2

Rails で利用できる 5 つのログレベルを、重要度の低い順から高い順に挙げると何ですか?

回答

Rails は 5 つの標準ログレベルを使用します。debug(開発向けの詳細情報)、info(動作に関する一般的な情報)、warn(処理を妨げない警告)、error(回復可能なエラー)、fatal(停止を引き起こす致命的なエラー)です。各レベルはそれより下位のレベルのメッセージを除外するため、環境に応じて冗長度を調整できます。

3

Rails の本番環境でログレベルを設定するにはどうすればよいですか?

回答

本番環境のログレベルは config/environments/production.rb 内の config.log_level で設定します。本番環境で大量のデータを生成しないよう、デフォルト値は :info です。さらに ENV.fetch('RAILS_LOG_LEVEL', 'info').to_sym のような環境変数で動的にレベルを設定することもでき、再デプロイなしで最大限の柔軟性が得られます。

4

分析を容易にするために、Rails で構造化データを含むメッセージをログ出力するにはどうすればよいですか?

5

Rails.logger.debug とブロック付きの Rails.logger.debug { } の違いは何ですか?

+17 面接問題

次の面接に向けてRuby on Railsをマスター

すべての問題、flashcards、技術テスト、コードレビュー演習、面接シミュレーターにアクセス。

無料で始める