ruby - 日志转移失败。 Fixnum 与 String 的比较失败

标签 ruby logging

我正在尝试使用 ruby​​ 记录器。我收到错误:日志转移失败。 Fixnum 与 String 的比较失败,我不明白为什么。

这是我的代码:

require 'logger'
require 'yaml'
require 'net/ssh'

logger = Logger.new('/tmp/log.log', 10, 'daily')
logger.level = Logger::DEBUG

Net::SSH.start(host, user, forward_agent: true) do |ssh|
  output =  ssh.exec! "cat #{app}/shared/config/database.yml"
  ssh.loop
  logger.debug output

  stuff = YAML.load(output)
  logger.debug stuff['database']

  ssh.loop
  ssh.close
end

错误消息似乎暗示它需要一个 Fixnum?

最佳答案

来自documentation :

new(name, shift_age = 7, shift_size = 1048576)
new(name, shift_age = 'weekly')

所以我认为你使用了带有错误参数的构造函数。

尝试:

logger = Logger.new('/tmp/log.log', 'daily', 10)

关于ruby - 日志转移失败。 Fixnum 与 String 的比较失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23875308/

相关文章:

ruby-on-rails - "rails s"和 "bundle exec rails s"有什么区别?

ruby-on-rails - 适用于 Windows 的 RubyInstaller 问题

python - Django 日志记录 "No handlers could be found for logger"

ruby - 将 Array#select 转换为 rails 4 中的事件记录查询

ruby - Ruby 父类(super class)中实用方法的放置位置

ruby 相当于析构函数

asp.net - 如何记录应用程序数据?

java - 获取/发送短信时如何获取GPS坐标?

logging - 如何设置 uWSGI 日志级别?

php - 如何记录试图进行sql注入(inject)的人