Ruby on rails 检查rails中是否已经存在日志文件
我希望做到以下几点:Ruby on rails 检查rails中是否已经存在日志文件,ruby-on-rails,ruby,logging,rspec,Ruby On Rails,Ruby,Logging,Rspec,我希望做到以下几点: new_logger = Logger.new('log/exceptions.log') new_logger.level = Logger::ERROR new_logger.error('THIS IS A NEW EXCEPTION!') ActiveRecord::Base.logger = new_logger 但我只想在日志文件不存在时创建它。我会直接使用文件.exist吗? 你将如何测试这个?(使用rspec)如果日志文件变大,rails(或web服务器
new_logger = Logger.new('log/exceptions.log')
new_logger.level = Logger::ERROR
new_logger.error('THIS IS A NEW EXCEPTION!')
ActiveRecord::Base.logger = new_logger
但我只想在日志文件不存在时创建它。我会直接使用文件.exist吗?
你将如何测试这个?(使用rspec)如果日志文件变大,rails(或web服务器)会压缩该文件并创建一个新文件,例如:
log.zip,log_2
,实际上,例如:
如果要写入的文件不存在,则在尝试打开它时会自动创建该文件。实际上,例如:
如果要写入的文件不存在,则在尝试打开该文件时会自动创建该文件。…否则,您要将新日志项附加到现有内容中,对吗?是,如果存在,请附加,否则请创建。我对File.exist的关注?是因为它不知道rails项目的设置方式,所以我不确定如何获取其中的所有信息…否则您想将新日志项附加到现有内容中,对吗?是的,如果存在,请附加,否则创建。我对File.exist的关注?是因为它不知道rails项目的设置方式,所以我不确定如何获取其中的所有信息。我认为Logger是rails的一部分,因为某种原因>>是的,我很惊讶地发现它也在核心中
pry
使在文档中搜索给定对象变得异常简单:show doc Logger
,完成。在这里,出于某种原因,我认为Logger是rails的一部分>>是的,我也很惊讶地发现它位于核心pry
使搜索文档中的给定对象变得异常简单:show doc Logger
,完成。
file = File.open('foo.log', File::WRONLY | File::APPEND)
# 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)