class SemanticLogger::Log

def assign_hash(hash)

Assign known keys to self, all other keys to the payload.
def assign_hash(hash)
  self.payload ||= {}
  hash.each_pair do |key, value|
    if respond_to?(:"#{key}=")
      public_send(:"#{key}=", value)
    else
      payload[key] = value
    end
  end
  self.payload = nil if payload.empty?
  self
end