         exception.json = json
         exception.jsonInvalid = true
     exception.location = snippet if snippet
+    exception.process = process if process
 
     exceptions.push exception
     if exception.json and exception.json.stderr

    date[2..5] = (parseInt(match[i], 10) for i in [2..5])
    date = createDate.apply(null, date)
    [ host, rest ] = match[6..7]
    if match = /^(worker)\[(\d+)\]:\s+(.*?)(\s+{.*)?$/.exec(rest)
      [ program, pid, message, json ] = match[1..4]
      record = { date, host, program, pid, message }
      if json


writeExceptions = (exceptions, message) ->
  exception = exceptions.shift()
  dashes = new Array((78 - message.length) / 2).join(" -")
  if exception.process
    proc = exception.process
    proc = "#{proc.program}[#{proc.pid}/#{proc.uid}]"
    length = (dashes.length - proc.length - 1)
    length-- if length % 2
    dashes = dashes.substring 0, length
  process.stdout.write "\n  #{message} #{dashes} #{proc}\n"
  if exception.location
    location = exception.location
    process.stdout.write "  #{location.file}:#{location.line}.\n"
