Live data from Hacker News

Logging in Ruby: (Almost) Everything You Need to Know

akshaykhot.com

1–10 of 18 posts

Re: Logging in Ruby: (Almost) Everything You Need to Know

#3
post #2

How can a log level be unknown?

It could be useful for logging messages that don't fit a particular category, i.e. a catch-all category, to identify patterns over time. Edit: You could also use it to turn-off logging for a while. Since unknown is the highest level, no other logs would be recorded.

Re: Logging in Ruby: (Almost) Everything You Need to Know

#4
post #2

How can a log level be unknown?

It could be useful for logging messages that don't fit a particular category, i.e. a catch-all category, to identify patterns over time. Edit: You could also use it to turn-off logging for a while. Since unknown is the highest level, no other logs would be recorded.

Can you give an example of a log message that would not fit typical logging levels? (Info/Debug/Error etc)

Re: Logging in Ruby: (Almost) Everything You Need to Know

#7

Wow in 2023 someone thinks this is worth a blog post? At least some log scraping + monitors with graylog, ELK or the like would be the minimum imo…

> Wow in 2023 someone thinks this is worth a blog post?

It was meant to be a beginner-level introduction to logging (especially for those developers who got started in 2023 ;))

Re: Logging in Ruby: (Almost) Everything You Need to Know

#8

Wow in 2023 someone thinks this is worth a blog post? At least some log scraping + monitors with graylog, ELK or the like would be the minimum imo…

Everyone starts somewhere. Log scraping and monitoring is a pretty advanced topic for a new developer.

Re: Logging in Ruby: (Almost) Everything You Need to Know

#9
post #4

Earlier quoted context omitted.

It could be useful for logging messages that don't fit a particular category, i.e. a catch-all category, to identify patterns over time. Edit: You could also use it to turn-off logging for a while. Since unknown is the highest level, no other logs would be recorded.

Can you give an example of a log message that would not fit typical logging levels? (Info/Debug/Error etc)

I was trying to think of a good example, but the following table from RFC 5424 [1] might be a good starting point. I guess unknown could be used for the top 3 conditions.

           Numerical         Severity
             Code

              0       Emergency: system is unusable
              1       Alert: action must be taken immediately
              2       Critical: critical conditions
              3       Error: error conditions
              4       Warning: warning conditions
              5       Notice: normal but significant condition
              6       Informational: informational messages
              7       Debug: debug-level messages
[1] https://datatracker.ietf.org/doc/html/rfc5424

Re: Logging in Ruby: (Almost) Everything You Need to Know

#10
post #2

How can a log level be unknown?

The code has noticed a condition that may or may not be meaningful—it is not explicitly handled or classified. The correct place the message noting this ought to go could well be unknown. INFO buries it, which may be very bad. Higher severities might be crying wolf. UNKNOWN starts showing up in the logs, that tells you to go take a closer look, and tells you that nobody has encoded the severity of the message into the system.
Post reply on HN