Ruby on Rails

Monitoring & Logging

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

20 pytań z rozmów·
Senior
1

Jaki jest domyślny logger używany w aplikacji Rails?

Odpowiedź

Rails używa Rails.logger jako głównego punktu dostępu do systemu logowania. Domyślnie jest to instancja ActiveSupport::Logger, która zapisuje do plików takich jak log/development.log, log/production.log itd., w zależności od środowiska. Ten logger jest konfigurowany automatycznie przy starcie aplikacji i jest dostępny z dowolnego miejsca w kodzie Rails.

2

Jakie jest pięć poziomów logowania dostępnych w Rails, od najmniej do najbardziej krytycznego?

Odpowiedź

Rails używa pięciu standardowych poziomów logowania: debug (szczegółowe informacje na potrzeby programowania), info (ogólne informacje o działaniu), warn (ostrzeżenia nieblokujące), error (błędy możliwe do naprawienia) oraz fatal (błędy krytyczne powodujące zatrzymanie). Każdy poziom odfiltrowuje komunikaty z poziomów niższych, co pozwala dostosować szczegółowość w zależności od środowiska.

3

Jak skonfigurować poziom logowania na produkcji w Rails?

Odpowiedź

Poziom logowania na produkcji konfiguruje się w config/environments/production.rb za pomocą config.log_level. Wartością domyślną jest :info, aby nie generować zbyt dużej ilości danych na produkcji. Poziom można też ustawiać dynamicznie za pomocą zmiennej środowiskowej, np. ENV.fetch('RAILS_LOG_LEVEL', 'info').to_sym, co zapewnia maksymalną elastyczność bez ponownego wdrożenia.

4

Jak zalogować komunikat z danymi strukturalnymi w Rails, aby ułatwić analizę?

5

Jaka jest różnica między Rails.logger.debug a Rails.logger.debug { } z blokiem?

+17 pytań z rozmów

Opanuj Ruby on Rails na następną rozmowę

Uzyskaj dostęp do wszystkich pytań, flashcards, testów technicznych, ćwiczeń code review i symulatorów rozmów.

Zacznij za darmo