diff --git a/app/models/error_report.rb b/app/models/error_report.rb index 8d1123a..09d79ff 100644 --- a/app/models/error_report.rb +++ b/app/models/error_report.rb @@ -65,6 +65,7 @@ class ErrorReport def make_notice @notice = Notice.new( + app: app, message: message, error_class: error_class, backtrace: backtrace, diff --git a/app/models/notice.rb b/app/models/notice.rb index c5945f6..7916260 100644 --- a/app/models/notice.rb +++ b/app/models/notice.rb @@ -12,8 +12,9 @@ class Notice field :framework field :error_class delegate :lines, :to => :backtrace, :prefix => true - delegate :app, :problem, :to => :err + delegate :problem, :to => :err + belongs_to :app belongs_to :err belongs_to :backtrace, :index => true diff --git a/db/migrate/20150926035420_cache_app_on_notice.rb b/db/migrate/20150926035420_cache_app_on_notice.rb new file mode 100644 index 0000000..c5e7052 --- /dev/null +++ b/db/migrate/20150926035420_cache_app_on_notice.rb @@ -0,0 +1,11 @@ +class CacheAppOnNotice < Mongoid::Migration + def self.up + Notice.no_timeout.each do |n| + n.app_id = n.try(:err).try(:problem).try(:app_id) + n.save! + end + end + + def self.down + end +end diff --git a/spec/fabricators/err_fabricator.rb b/spec/fabricators/err_fabricator.rb index 91e4b71..23d01f6 100644 --- a/spec/fabricators/err_fabricator.rb +++ b/spec/fabricators/err_fabricator.rb @@ -4,6 +4,7 @@ Fabricator :err do end Fabricator :notice do + app err message 'FooError: Too Much Bar' backtrace -- libgit2 0.21.2