gpt4 book ai didi

ruby-on-rails - Ruby on Rails 3.1 - 在数据库中记录异常

转载 作者:行者123 更新时间:2023-12-04 05:57:23 24 4
gpt4 key购买 nike

将每个异常自动记录在 rails 3.1 中的数据库中的最可靠方法是什么(可能使用 Rails 中间件)?

我知道这听起来像是一个标准问题,但到目前为止我找到的大部分答案要么有点旧(rails-2),要么建议本地处理。

我看了http://railscasts.com/episodes/277-mountable-engines瑞安建议使用

ActiveSupport::Notifications.subscribe "process_action.action_controller" do |name, start, finish, id, payload|
if payload[:exception]
name, message = *payload[:exception]
Uhoh::Failure.create!(:message => message)
end
end

但他也在说

The solution we’ll use for this isn’t very efficient but it’s simple and it will work for our case.



有更好的选择吗?

我的异常类很少,并且我正在 Controller 本身中处理异常,但是将它们记录在数据库的特定表中进行分析会很好。

我遇到了 gem exception_logger (https://github.com/defunkt/exception_logger),但是这个 gem 似乎有点过时了(?)。

最佳答案

对于看似过时的 gem ,如 exception_logger ,我发现使用 GitHub 的网络功能查看其他用户的 gem 分支很有帮助。您通常会发现有人更新或继续维护 gem,即使原作者没有。例如,网络为 exception_logger很活跃,尤其是this QuBiT 的特殊 fork 。

退房 The Ruby Toolbox - Exception Notification获取广泛使用的“异常通知”工具列表。不幸的是,它们中的大多数都有些过时,但上述用于寻找更多活跃 fork 的技术也适用。

如果您不反对付费解决方案,Airbrake 和 Exceptional 都可以很好地工作(尽管 Airbrake 的新定价结构使它们对于小型项目来说非常昂贵;Exceptional 的价格合理)。

关于ruby-on-rails - Ruby on Rails 3.1 - 在数据库中记录异常,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9349090/

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