[interchange] Support new DebugTemplate tokens REQUEST_METHOD, REQUEST_URI, SESSION.whatever
Jon Jensen <[email protected]> Tue, 13 Jan 2015 23:41:09 +0000
| Newsgroups | gmane.comp.web.interchange.cvs |
|---|---|
| Message-ID | <[email protected]> |
commit 6c5933fc9b620d697795b12d6d92f86756f32b92 Author: Jon Jensen <[email protected]> Date: Tue Jan 13 12:41:33 2015 -0700 Support new DebugTemplate tokens REQUEST_METHOD, REQUEST_URI, SESSION.whatever This makes possible a nicely detailed DebugTemplate like this: DebugTemplate %F %T {CATALOG} {REMOTE_ADDR} {REQUEST_METHOD} {REQUEST_URI} {PAGE|-} {SESSION.id} {SESSION.username|-} | {MESSAGE} to track the session ID, the logged in user name, and more about the request. lib/Vend/Util.pm | 6 ++++++ 1 files changed, 6 insertions(+), 0 deletions(-) --- diff --git a/lib/Vend/Util.pm b/lib/Vend/Util.pm index 97d6c69..f6cad7f 100644 --- a/lib/Vend/Util.pm +++ b/lib/Vend/Util.pm @@ -1747,6 +1747,8 @@ sub logDebug { $debug{tag} = $Vend::CurrentTag; $debug{host} = $CGI::host || $CGI::remote_addr; $debug{remote_addr} = $CGI::remote_addr; + $debug{request_method} = $CGI::request_method; + $debug{request_uri} = $CGI::request_uri; $debug{catalog} = $Vend::Cat; if($tpl =~ /\{caller\d+\}/i) { my @caller = caller(); @@ -1754,6 +1756,10 @@ sub logDebug { $debug{"caller$i"} = $caller[$i]; } } + $tpl =~ s/\{session\.([^}|]+)(.*?)\}/ + $debug{"session_\L$1"} = $Vend::Session->{$1}; + "{SESSION_\U$1$2}" + /iegx; $debug{message} = errmsg(@_); $msg = Vend::Interpolate::tag_attr_list($tpl, \%debug, 1);