gpt4 book ai didi

ruby-on-rails - 放置调试语句

转载 作者:数据小太阳 更新时间:2023-10-29 07:08:54 25 4
gpt4 key购买 nike

当我编写代码时,我非常频繁地使用“puts”语句进行调试。它允许我查看服务器中发生的情况。

在调试代码的时候,不知道是什么原因,我把这些“puts”语句去掉了。

这是个好主意还是我应该保留它们以使我的服务器日志更加清晰?

最佳答案

您应该使用记录器而不是puts。使用这种语句:

Rails.logger.debug "DEBUG: #{self.inspect} #{caller(0).first}" if Rails.logger.debug?

如果您想(几乎)实时查看调试,只需在另一个终端窗口中使用 tail 命令:

tail -F log/development.log | grep DEBUG

然后您不需要在生产中删除这些语句,它们不会降低性能太多,因为 if logger.debug? 会阻止消息字符串的构造(可能代价高昂)。

使用标准输出进行调试通常是一种不好的做法。如果您需要此类调试,请使用诊断 STDERR,如:

STDERR.puts "DEBUG: xyzzy"

Rails 中的大多数类(模型、 Controller 和 View )都有方法 logger,因此如果可能,请使用它而不是完整的 Rails.logger。如果您使用的是旧版本的 Rails,请使用常量 RAILS_DEFAULT_LOGGER 而不是 Rails.logger

关于ruby-on-rails - 放置调试语句,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7316074/

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