我在ruby中有简单的服务器,包含记录器。我正在格式化记录器以包含服务器从客户端接收的字符串的一部分。这是红宝石2.0.0
IDataObject originalClip = Clipboard.GetDataObject();
Clipboard.SetImage(img);
rtb.Paste();
Clipboard.SetDataObject(originalClip);
如果我每秒运行对此服务器发出100个请求,则记录器似乎无法跟上。我在日志文件中得到的是:
logger = Logger.new(my_file, 3, 2048000)
logger.level = Logger::DEBUG
logger.info("Starting server.")
server = TCPServer.new 2000
loop do
Thread.start(server.accept) do | client|
user_req = client.recvfrom(2048)[0].chomp
# req_id is unique
user_req_id = user_req[0..5]
logger.formatter = proc do |severity, datetime, progname, msg|
date_format = datetime.strftime("%Y-%m-%d %H:%M:%S.%6N")
"#{severity} [ #{date_format} ] -- [ #{user_req_id} ] ## #{msg}\n"
end
logger.info("=1========== #{user_req_id}")
logger.info("=2========== #{user_req_id}")
logger.info("=3========== #{user_req_id}")
client.close
end
end
消息中的user_req_id是正常的,但在格式化的记录器中不正确。我该怎么做才能解决它?