Sha256: 8532c396250750c52ca570a9d2c7a100269701f39179e42a5e47bf99fa61d96f

Contents?: true

Size: 895 Bytes

Versions: 3

Compression:

Stored size: 895 Bytes

Contents

# encoding: UTF-8
module RocketJob
  # Heartbeat
  #
  # Information from the worker as at it's last heartbeat
  class JobException
    include MongoMapper::EmbeddedDocument

    # @formatter:off
    # Name of the exception class
    key :class_name,              String

    # Exception message
    key :message,                 String

    # Exception Backtrace [Array<String>]
    key :backtrace,               Array, default: []

    # Name of the worker on which this exception occurred
    key :worker_name,             String

    # The record within which this exception occurred
    key :record_number,           Integer

    # @formatter:on

    # Returns [JobException] built from the supplied exception
    def self.from_exception(exc)
      new(
        class_name: exc.class.name,
        message:    exc.message,
        backtrace:  exc.backtrace || []
      )
    end

  end
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
rocketjob-1.1.2 lib/rocket_job/job_exception.rb
rocketjob-1.1.1 lib/rocket_job/job_exception.rb
rocketjob-1.1.0 lib/rocket_job/job_exception.rb