Tag: 日志记录

Rails 3中的config.logger和config.paths.log

尝试启动服务器时出现此错误。 logger.rb:541:in `exist?’: can’t convert Rails::Paths::Path into String (TypeError) 这是我的development.rb中的代码。 require ‘log_formatter’ config.logger = Logger.new(config.paths.log.first) config.logger.formatter = LogFormatter.new config.logger.level = Logger::DEBUG 我试过添加.to_s,但是没用。 谷歌也没有帮助。

Rails记录器消息test.log?

是否可以配置rails以显示logger.debug消息(来自控制器内的logger.debug语句),以便在运行单元和function测试时显示在test.log(或控制台)内部? 我将以下内容添加到test_helper.rb中。 我直接在测试中看到来自logger.debug语句的消息,但是在控制器方法中没有来自logger语句的消息? def logger RAILS_DEFAULT_LOGGER end

如何让Rails在日志语句中显示标准有用信息?

我是Ruby / Rails编程的新手,仍然找到了我的方法。 我按照本教程创建了一个示例Web应用程序。 它工作正常。 它使用Ruby版本1.9.3和Rails版本4.0.8。 但是我想实现日志记录。 所以我将以下lineq插入到我的一个控制器中: logger.debug “Hello! I’m a DEBUG message” logger.info “Hello! I’m an INFO message” 这产生了以下日志: Hello! I’m a DEBUG message Hello! I’m an INFO message 这不太有帮助。 我想在日志输出中看到更多细节。 这个日志什么时候创建的? 日志级别是多少? 这个日志的文件名和行号是多少? 我想看到所有这一切。 所以我通过使用以下内容创建文件config / initializers / logger.rb来实现此处描述的解决方案: class Logger::SimpleFormatter def call(severity, time, progname, msg) “[#{severity} #{time} #{caller(0).first.match(/.*:\d+/)[0]}] #{msg}\n” end end […]

Rails.logger.info在初始化程序中不起作用

在初始化程序中使用时, Rails.logger.info不会将任何信息写入日志。 如何登录初始化程序?

什么是铁路的良好日志替代品?

所以,我一直在寻找登录我的Rails应用程序,我发现,感谢这样的post,默认的Rails日志记录格式很糟糕,并没有一种简单的方法来改变它。 任何人都可以推荐一个简单的替换默认记录器? 奖金问题:有没有明确的理由说明为什么更改BufferedLogger中的默认格式如此困难?

将每个SQL查询记录到Rails 3中的数据库

这个问题是这个问题的后续问题 ,我应该在哪里放置此代码? connection = ActiveRecord::Base.connection class < e ; end # execute original statement original_exec(sql, *name) end end 我已经尝试将它放在模型中,但是当我执行一些sql查询时,一旦它返回“ 堆栈级别为深 ”错误,会发生什么。

记录活动的最佳方法(Ruby on Rails)

我想通过我的Rails 2.3.8应用程序记录用户活动。 我不关心活动是什么,只是上次任何给定用户在网站上做了什么 ,包括查看页面,评论,登录等。 我能想到的一种方法是在用户模型中创建last_active DateTime属性,并根据用户的活动不断更新此属性(或者可能利用updated_at列)。 我可以在每个控制器的每个动作上放置一个after_filter来调用更新方法,但这看起来很麻烦而且过分。 肯定有更好的办法。 观察者会工作吗? 如果是这样 – 怎么样? 我在这里缺少Rails内置的东西吗? 谢谢!

如何在生产模式下启用数据库日志记录? (Rails v2.3.8)

我的生产服务器上只有一些奇怪的东西,我需要能够在开发模式下查看所有数据库查询。 我确信这是一个小配置调整,但我找不到任何解决方案。

Rails / Ruby:任何缩短堆栈跟踪的方法?

我想限制我在Rails中看到的堆栈跟踪的大小。 我对调试Rails堆栈并不像我自己的应用程序那么感兴趣。 是否有任何内置的方式让Rails动态执行此操作?

如何更改rails logger以从rake任务中使用标准输出(rails2)

当我做 Rails.logger.debug来自我的rake任务中的“hello world”我想让它登录到标准输出。 如何从我的rake任务中将rails记录器设置为Logger.new(STDOUT)? 我希望我的应用程序在通过控制器等时登录到文件,只是因为我的监视设置方式,所以希望rake任务进入std。 我以为我可以定义另一个环境并使用该配置,但可能有点过分,我希望每个环境中都有相同的环境变量,只想更改我的日志目的地的位置。 现在我有一个使用puts的日志助手,但我想利用rails日志和缓冲的格式。