anchor.diff:                [
                   {errorClass, list_to_binary(io_lib:format("~p", [Reason]))},
                   {message, list_to_binary(io_lib:format("~p", [Message]))},
  -                {stacktrace, [
  -                    [
  -                      {file, list_to_binary(FileName)},
  -                      {lineNumber, Line},
  -                      {method, list_to_binary(FunctionName)}
  -                    ]
  -                  ]
  -                }
  +                {stacktrace, process_trace(Trace)}
                 ]
               ]}
           ]
  
positive.code:   deliver_payload(jsx:encode(Payload)).
  
  
  deliver_payload(Payload) ->
    lager:debug("Sending exception: ~p", [Payload]),
    case httpc:request(post, {?NOTIFY_ENDPOINT, [], "application/json", Payload}, [{timeout, 5000}], []) of
      {ok, {{_Version, 200, _ReasonPhrase}, _Headers, Body}} ->
        lager:debug("Error sent. Response: ~p", [Body]);
      {_, {{_Version, Status, ReasonPhrase}, _Headers, _Body}} ->
        lager:error("Failed to send error to bugsnag (~p : ~p)", [Status, ReasonPhrase])
    end,
  
negative.code:   {ok, State}.
  
  % Internal API
  send_exception(_Type, Reason, Message, _Module, _Line, Trace, _Request, State) ->
    {ok, Hostname} = inet:gethostname(),
    Payload = [
      {apiKey, list_to_binary(State#state.api_key)},
      {notifier, [
  