anchor.diff:      catch Error:Reason ->
               logout(SessPid),
               StackTrace = erlang:get_stacktrace(),
  -            lager:error("SESS[~p] login failed due to ~p:~p at ~p",
  +            lager:error("SESS~p login failed due to ~p:~p at ~p",
                           [SessionId, Error, Reason, StackTrace]),
               {error, internal}
       end.
  
positive.code:     ok = tts_session:set_iss_sub(Issuer, Subject, SessionPid),
      true = tts_session:is_logged_in(SessionPid),
      {ok, DisplayName} = tts_session:get_display_name(SessionPid),
      lager:info("SESS[~p] logged in as ~p [~p at ~p]",
                 [SessId, DisplayName, Subject, Issuer]),
  
      {ok, #{session_id => SessId, session_token => SessToken,
  
negative.code: 
  revoke_credential_for(CredId, Session) ->
      {ok, UserInfo} = tts_session:get_user_info(Session),
      {ok, SessionId} = tts_session:get_id(Session),
      case tts_credential:revoke(CredId, UserInfo) of
          {ok, Result, Log}  ->
              lager:info("SESS~p revoked credential ~p",
                         [SessionId, CredId]),
              {ok, Result, Log};
          {error, Error, Log} ->
              lager:warning("SESS~p revocation of credential ~p failed with ~p",
                            [SessionId, CredId, Error]),
              {error, Error, Log}
      end.
  