From 5bacd98905ed55db6ece546356407f1514fb7fe5 Mon Sep 17 00:00:00 2001 From: Brion Vibber Date: Fri, 27 Nov 2009 12:28:15 -0800 Subject: [PATCH] request id on logs... pid + random id per web request + username + method + url --- lib/util.php | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) diff --git a/lib/util.php b/lib/util.php index 6946f60fee..fa74c2f861 100644 --- a/lib/util.php +++ b/lib/util.php @@ -1050,8 +1050,32 @@ function common_log_line($priority, $msg) return date('Y-m-d H:i:s') . ' ' . $syslog_priorities[$priority] . ': ' . $msg . "\n"; } +function common_request_id() +{ + $pid = getmypid(); + if (php_sapi_name() == 'cli') { + return $pid; + } else { + static $req_id = null; + if (!isset($req_id)) { + $req_id = substr(md5(mt_rand()), 0, 8); + } + if (isset($_SERVER['REQUEST_URI'])) { + $url = $_SERVER['REQUEST_URI']; + } + $method = $_SERVER['REQUEST_METHOD']; + if (common_logged_in()) { + $user = common_current_user()->nickname; + } else { + $user = 'anon'; + } + return "$pid.$req_id $user $method $url"; + } +} + function common_log($priority, $msg, $filename=null) { + $msg = '[' . common_request_id() . '] ' . $msg; $logfile = common_config('site', 'logfile'); if ($logfile) { $log = fopen($logfile, "a");