gpt4 book ai didi

ruby-on-rails - ruby 记录器文件行为

转载 作者:太空宇宙 更新时间:2023-11-03 16:33:07 26 4
gpt4 key购买 nike

当我使用这个脚本时它工作正常

require 'logger'

class Logging < Logger
log = Logger.new "sam.txt"
log.warn "samarth"
end

日志文件的输出是这样的

# Logfile created on Thu Sep 20 12:01:26 +0530 2012 by /
W, [2012-09-20T12:01:44.402915 #7553] WARN -- : asasa

现在我想创建一个继承记录器的类,我在所有其他脚本中使用该脚本,但它会产生一些不同的输出

require 'date'
require 'logger'

class Logging < Logger

def initialize
@date = Time.now.strftime("20%y-%m-%d").to_s
@time = Time.now.strftime("%X")
@file_name = @date+"_"+@time+ " log.txt"
@file_name_path = '/cmf/samnew/build/Logs/'+@file_name
end

def createfile
$log1 = Logger.new(@file_name_path)
return $log1
end

end

我在下面的脚本中实现这个脚本

require '/cmf/samnew/build/Controller/logging'


class Controller

#Generating log file

log = Logging.new
log1 = log.createfile
log1.warn "samarth global"

end

输出就像

# Logfile created on Thu Sep 20 12:03:20 +0530 2012 by /
samarth global

那么这段代码有什么问题,或者我应该怎么做才能像上面那样创建输出

最佳答案

可能是您加载的其中一个 gem 弄乱了全局格式字符串。

试试这个来定义你想要的格式

def createfile 
$log1 = Logger.new(@file_name_path)
$log1.formatter = proc do |severity, datetime, progname, msg|
"#{severity[0]}, [#{datetime} \##{$$}] #{severity} --> #{msg} \n"
end
$log1
end

关于ruby-on-rails - ruby 记录器文件行为,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12507255/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com