ruby Logger日志

寻技术 Ruby编程 2023年07月11日 127

1.logger创建

# 输出到标准输出
logger = Logger.new(STDERR)
logger = Logger.new(STDOUT)

# 输出到指定文件
logger = Logger.new('logfile.log')

# 输出到指定打开/创建模式的文件
file = File.open('foo.log', File::WRONLY | File::APPEND | File::CREAT)
# To create new (and to remove old) logfile, add File::CREAT like:
# file = File.open('foo.log', File::WRONLY | File::APPEND | File::CREAT)
logger = Logger.new(file)

# 指定日志大小及保留日志个数
logger = Logger.new('foo.log', 10, 1024000)

# 日志生成周期
logger = Logger.new('foo.log', 'daily')
logger = Logger.new('foo.log', 'weekly')
logger = Logger.new('foo.log', 'monthly')
 

 

2.设置日志级别

logger.level = Logger::DEBUG
logger.level = Logger::INFO
logger.level = Logger::WARN
logger.level = Logger::FATAL
logger.level = Logger::UNKNOWN

 

3.设置日志输出格式

# datetime_format=时间格式化
logger.datetime_format = '%Y-%m-%d %H:%M:%S'

# formatter=方法改变整体格式
logger.formatter = proc do |severity, datetime, progname, msg|
  "#{datetime}: #{msg}\n"
end

 

4.日志打印

logger.info("User-input: #{input.dump}")
logger.info("User-input: %p" % input)
logger.info "Waiting for input from user"
logger.info { "User typed #{input}" }

 

关闭

用微信“扫一扫”