class Resque::Failure::Base

and #save is called.
When a job fails, a new instance of your Failure backend is created
All Failure classes are expected to subclass Base.

def self.all(offset = 0, limit = 1, queue = nil)

Returns a paginated array of failure objects.
def self.all(offset = 0, limit = 1, queue = nil)
  []
end

def self.clear(*args)

Clear all failure objects
def self.clear(*args)
end

def self.count(queue = nil, class_name = nil)

The number of failures.
def self.count(queue = nil, class_name = nil)
  0
end

def self.each(*args)

Iterate across failed objects
def self.each(*args)
end

def self.queues

Returns an array of all available failure queues
def self.queues
  []
end

def self.remove(*args)

def self.remove(*args)
end

def self.requeue(*args)

def self.requeue(*args)
end

def self.url

A URL where someone can go to view failures.
def self.url
end

def initialize(exception, worker, queue, payload)

def initialize(exception, worker, queue, payload)
  @exception = exception
  @worker    = worker
  @queue     = queue
  @payload   = payload
end

def log(message)

Logging!
def log(message)
  @worker.log(message)
end

def save

This is where you POST or PUT or whatever to your Failure service.

and #save is called.
When a job fails, a new instance of your Failure backend is created
def save
end