[interchange] Support new DebugTemplate tokens REQUEST_METHOD, REQUEST_URI, SESSION.whatever

Jon Jensen interchange-cvs at icdevgroup.org
Tue Jan 13 23:41:09 UTC 2015


commit 6c5933fc9b620d697795b12d6d92f86756f32b92
Author: Jon Jensen <jon at endpoint.com>
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);



More information about the interchange-cvs mailing list