在 Rails 中制作自定义记录器 6

Making a custom logger in Rails 6

我在 Rails 6 做一个项目,我的经理要求我实现一个自定义记录器,它应该跟踪我们应用程序中发生的各种活动.我在 Rails 6 工作,我希望这个记录器是全局的,即 我应该能够从我程序的任何地方调用它,我应该能够自定义日志消息的格式化方式,我希望日志消息看起来像

User ID,Time

the logged message

有人可以帮我解决这个问题吗?我是 Rails

Ruby 的初学者

您可能希望在 app/lib 文件夹中创建自己的 .rb 模块或 class。然后,您可以简单地创建并写入日志文件,如下所示:

module MyLogger
    def self.log_something
        log = Logger.new('log/mylog.log')
        log.error StandardError.new("some error message")
        log.info("some  informational message") 
    end
end

Rails 有自己的定制,subclass 香草 Ruby Logger.

你可能会开始看那个来寻找灵感: https://github.com/rails/rails/blob/v6.0.0/activesupport/lib/active_support/logger.rb

要了解更多细节,您需要更好地解释您想做什么。例如,是否需要与 Ruby 内置记录器 class 保持相同的界面?