Class: Telewatts::SenderSupport::SenderReport
- Inherits:
-
ActiveRecord::Base
- Object
- ActiveRecord::Base
- Telewatts::SenderSupport::SenderReport
- Defined in:
- lib/telewatts/sender_support/sender_report.rb
Class Method Summary collapse
- .highest_priority_level ⇒ Object
-
.levels ⇒ Object
sender report levels in increasing order of priority.
- .lowest_priority_level ⇒ Object
Instance Method Summary collapse
- #dump_exception(e) ⇒ Object
- #encode_data(data) ⇒ Object
- #inspect ⇒ Object
- #marshal_exception_dump ⇒ Object
- #print_exception ⇒ Object
Class Method Details
.highest_priority_level ⇒ Object
69 70 71 |
# File 'lib/telewatts/sender_support/sender_report.rb', line 69 def highest_priority_level log_levels.last end |
.levels ⇒ Object
sender report levels in increasing order of priority
61 62 63 |
# File 'lib/telewatts/sender_support/sender_report.rb', line 61 def levels %W{debug info report warn error fatal} end |
.lowest_priority_level ⇒ Object
65 66 67 |
# File 'lib/telewatts/sender_support/sender_report.rb', line 65 def lowest_priority_level log_levels.first end |
Instance Method Details
#dump_exception(e) ⇒ Object
19 20 21 22 23 24 |
# File 'lib/telewatts/sender_support/sender_report.rb', line 19 def dump_exception e dump = [e.class.name, e.] dump << e.backtrace self.exception_dump = ActiveSupport::JSON.encode dump return self end |
#encode_data(data) ⇒ Object
26 27 28 29 |
# File 'lib/telewatts/sender_support/sender_report.rb', line 26 def encode_data data self.data = ActiveSupport::JSON.encode data return self end |
#inspect ⇒ Object
31 32 33 34 35 |
# File 'lib/telewatts/sender_support/sender_report.rb', line 31 def inspect s = "#{self.created_at} #{self.level.blank? ? '': self.level.upcase} #{self.code || self.} [id=#{self.id}]" s << " [exception dump available]" unless self.exception_dump.blank? s end |
#marshal_exception_dump ⇒ Object
37 38 39 40 41 42 43 44 |
# File 'lib/telewatts/sender_support/sender_report.rb', line 37 def marshal_exception_dump return nil if exception_dump.blank? a = ActiveSupport::JSON.decode exception_dump e = Exception.new "(#{a[0]}): #{a[1]}" e.set_backtrace a[2] e end |
#print_exception ⇒ Object
46 47 48 49 50 51 52 53 54 55 56 57 |
# File 'lib/telewatts/sender_support/sender_report.rb', line 46 def print_exception return nil if exception_dump.blank? a = ActiveSupport::JSON.decode exception_dump puts "\nException class: #{a[0]}\n\n" puts "Message: #{a[1]}\n\n" puts "Backtrace:\n\n" a[2].each do |line| puts line end puts "\n\n" nil end |