Bird
Raised Fist0
Ruby on Railsframework~20 mins

Logging and monitoring in Ruby on Rails - Practice Problems & Coding Challenges

Choose your learning style10 modes available
Challenge - 5 Problems
🎖️
Logging and Monitoring Mastery
Get all challenges correct to earn this badge!
Test your skills under time pressure!
💻 Command Output
intermediate
2:00remaining
Understanding Rails Logger Output Level
Given the following Rails logger configuration, what will be the output when a logger.debug message is logged?

config.log_level = :info
Ruby on Rails
logger.debug("Debug message")
AThe message will appear in the logs.
BThe message will NOT appear in the logs.
CThe logger will raise an error due to invalid log level.
DThe message will appear only if the environment is development.
Attempts:
2 left
💡 Hint
Remember that the log level filters out messages below its severity.
🧠 Conceptual
intermediate
1:30remaining
Purpose of Log Rotation in Rails
Why is log rotation important in a Rails application running in production?
ATo automatically delete all logs after each request.
BTo encrypt log files for security reasons.
CTo convert logs into database entries for faster access.
DTo prevent log files from growing indefinitely and consuming disk space.
Attempts:
2 left
💡 Hint
Think about disk space and log file size.
❓ Troubleshoot
advanced
2:30remaining
Diagnosing Missing Logs in Production
A Rails app in production is not showing any logs for errors, even though errors occur. Which configuration issue is the most likely cause?
AThe <code>config.consider_all_requests_local</code> is set to <code>true</code>.
BThe <code>config.logger</code> is set to <code>Logger.new(STDOUT)</code>.
CThe <code>config.log_level</code> is set to <code>:fatal</code>.
DThe <code>config.log_tags</code> is missing.
Attempts:
2 left
💡 Hint
Check which log levels are recorded.
🔀 Workflow
advanced
3:00remaining
Setting Up Basic Monitoring for a Rails App
Which sequence of steps correctly describes setting up basic application monitoring using a tool like New Relic in a Rails app?
A1,2,3,4
B2,1,3,4
C1,3,2,4
D3,1,2,4
Attempts:
2 left
💡 Hint
Think about installation, configuration, restart, then verification.
✅ Best Practice
expert
2:30remaining
Choosing the Best Logging Format for Production
Which logging format is best practice for a Rails production app to facilitate log aggregation and analysis?
AJSON formatted logs with structured fields.
BPlain text logs with custom delimiters.
CXML formatted logs for compatibility.
DBinary logs for performance.
Attempts:
2 left
💡 Hint
Consider ease of parsing by log management tools.

Practice

(1/5)
1. What is the main purpose of logging in a Rails application?
easy
A. To record events and errors for later review
B. To monitor real-time server performance
C. To deploy the application automatically
D. To manage database migrations

Solution

  1. Step 1: Understand logging purpose

    Logging captures events and errors that happen in the app so developers can check them later.
  2. Step 2: Differentiate from monitoring

    Monitoring is about watching app health live, not storing past events.
  3. Final Answer:

    To record events and errors for later review -> Option A
  4. Quick Check:

    Logging = record events/errors [OK]
Hint: Logging saves past events; monitoring watches live [OK]
Common Mistakes:
  • Confusing logging with monitoring
  • Thinking logging deploys apps
  • Mixing logging with database tasks
2. Which of the following is the correct way to write a log message in Rails?
easy
A. logger.write("User signed in")
B. Rails.log('info', 'User signed in')
C. log.info('User signed in')
D. Rails.logger.info "User signed in"

Solution

  1. Step 1: Recall Rails logging syntax

    Rails uses Rails.logger with methods like info, error, debug to write logs.
  2. Step 2: Check each option

    Only Rails.logger.info "User signed in" uses correct Rails.logger.info syntax.
  3. Final Answer:

    Rails.logger.info "User signed in" -> Option D
  4. Quick Check:

    Rails.logger.info is correct syntax [OK]
Hint: Use Rails.logger.method("message") for logging [OK]
Common Mistakes:
  • Using undefined logger object
  • Wrong method names like write or log
  • Incorrect method call syntax
3. Given this Rails code snippet, what will be the log level of the message?
Rails.logger.warn "Disk space low"
medium
A. Info
B. Warn
C. Error
D. Debug

Solution

  1. Step 1: Identify the logging method used

    The method called is warn, which sets the log level to warning.
  2. Step 2: Match method to log level

    Rails.logger.warn writes a warning level message.
  3. Final Answer:

    Warn -> Option B
  4. Quick Check:

    Rails.logger.warn = Warn level [OK]
Hint: Method name matches log level (warn = Warn) [OK]
Common Mistakes:
  • Confusing warn with info or error
  • Assuming default log level is info
  • Mixing debug and warn levels
4. You added this line in a Rails controller but no log appears:
logger.error "Payment failed"
What is the most likely reason?
medium
A. The log level is set higher than error
B. Rails.logger must be used instead of logger
C. The logger object is not defined in controllers
D. Logging is disabled by default in Rails

Solution

  1. Step 1: Understand logger availability in controllers

    In Rails controllers, logger is available as a shortcut to Rails.logger.
  2. Step 2: Check log level settings

    If the log level is set higher than error (like fatal), error messages won't show.
  3. Final Answer:

    The log level is set higher than error -> Option A
  4. Quick Check:

    Log level filters out lower severity logs [OK]
Hint: Check log level filters if logs don't appear [OK]
Common Mistakes:
  • Assuming logger is undefined in controllers
  • Thinking Rails.logger must be used always
  • Believing logging is off by default
5. You want to monitor your Rails app's performance in production. Which approach is best?
hard
A. Use Rails built-in logger to track all performance metrics
B. Add custom puts statements in code to watch performance
C. Integrate an external monitoring tool like New Relic or Datadog
D. Rely on Rails console logs only

Solution

  1. Step 1: Understand Rails logging limits

    Rails logging records events but does not provide detailed real-time performance monitoring.
  2. Step 2: Identify best monitoring practice

    External tools like New Relic or Datadog specialize in monitoring app health and performance live.
  3. Final Answer:

    Integrate an external monitoring tool like New Relic or Datadog -> Option C
  4. Quick Check:

    Use external tools for monitoring, not just logs [OK]
Hint: Use specialized tools for monitoring, not just logs [OK]
Common Mistakes:
  • Expecting Rails logger to monitor performance live
  • Using puts for monitoring which is not scalable
  • Ignoring external monitoring solutions
Recommended

Ready to prove it?

Pass the test and this pattern moves unknown strong while earning +1 Grip toward your certificate.

10 questions~5 mineasy hard