From 6fc09ee64770b16c724b39376d0d40649d0831e2 Mon Sep 17 00:00:00 2001 From: Fabian Becker <halfdan@xnorfz.de> Date: Thu, 28 Feb 2013 22:49:50 +0100 Subject: [PATCH] Use correct column mapping for APICall Logs. --- core/Log/APICall.php | 67 +++++++++++++++++++++++--------------------- 1 file changed, 35 insertions(+), 32 deletions(-) diff --git a/core/Log/APICall.php b/core/Log/APICall.php index 71b1539d42..53e40e55c3 100644 --- a/core/Log/APICall.php +++ b/core/Log/APICall.php @@ -1,17 +1,17 @@ <?php /** * Piwik - Open source web analytics - * + * * @link http://piwik.org * @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later - * + * * @category Piwik * @package Piwik */ /** * Class used to log all the API Calls information (class / method / parameters / returned value / time spent) - * + * * @package Piwik * @subpackage Piwik_Log */ @@ -26,16 +26,25 @@ class Piwik_Log_APICall extends Piwik_Log { $logToFileFilename = self::ID; $logToDatabaseTableName = self::ID; - $logToDatabaseColumnMapping = null; + $logToDatabaseColumnMapping = array( + 'class_name' => 'class_name', + 'method_name' => 'method_name', + 'parameter_names_default_values' => 'parameter_names_default_values', + 'parameter_values' => 'parameter_values', + 'execution_time' => 'execution_time', + 'caller_ip' => 'caller_ip', + 'timestamp' => 'timestamp', + 'returned_value' => 'returned_value' + ); $screenFormatter = new Piwik_Log_APICall_Formatter_ScreenFormatter(); $fileFormatter = new Piwik_Log_Formatter_FileFormatter(); - - parent::__construct($logToFileFilename, + + parent::__construct($logToFileFilename, $fileFormatter, $screenFormatter, - $logToDatabaseTableName, + $logToDatabaseTableName, $logToDatabaseColumnMapping ); - + $this->setEventItem('caller_ip', Piwik_IP::P2N(Piwik_IP::getIpFromHeader()) ); } @@ -58,18 +67,17 @@ class Piwik_Log_APICall extends Piwik_Log $event['parameter_values'] = serialize($parameterValues); $event['execution_time'] = $executionTime; $event['returned_value'] = is_array($returnedValue) ? serialize($returnedValue) : $returnedValue; - parent::log($event, Piwik_Log::INFO, null); } } /** - * Class used to format the API Call log on the screen. - * + * Class used to format the API Call log on the screen. + * * @package Piwik * @subpackage Piwik_Log */ -class Piwik_Log_APICall_Formatter_ScreenFormatter extends Piwik_Log_Formatter_ScreenFormatter +class Piwik_Log_APICall_Formatter_ScreenFormatter extends Piwik_Log_Formatter_ScreenFormatter { /** * Formats data into a single line to be written by the writer. @@ -84,8 +92,7 @@ class Piwik_Log_APICall_Formatter_ScreenFormatter extends Piwik_Log_Formatter_Sc $str .= "Parameters: "; $parameterNamesAndDefault = unserialize($event['parameter_names_default_values']); $parameterValues = unserialize($event['parameter_values']); - - $i = 0; + $i = 0; foreach($parameterNamesAndDefault as $pName => $pDefault) { if(isset($parameterValues[$i])) @@ -96,15 +103,12 @@ class Piwik_Log_APICall_Formatter_ScreenFormatter extends Piwik_Log_Formatter_Sc { $currentValue = $pDefault; } - $currentValue = $this->formatValue($currentValue); $str .= "$pName = $currentValue, "; - + $i++; } $str .= "\n<br /> "; - -// $str .= "Returned: ".$this->formatValue($event['returned_value']); $str .= "\n<br /> "; return parent::format($str); } @@ -117,19 +121,18 @@ class Piwik_Log_APICall_Formatter_ScreenFormatter extends Piwik_Log_Formatter_Sc */ private function formatValue( $value ) { - if(is_string($value)) - { - $value = "'$value'"; - } - if(is_null($value)) - { - $value= 'null'; - } - if(is_array($value)) - { - $value = "array( ".implode(", ", $value). ")"; - } - return $value; - + if(is_string($value)) + { + $value = "'$value'"; + } + if(is_null($value)) + { + $value= 'null'; + } + if(is_array($value)) + { + $value = "array( ".implode(", ", $value). ")"; + } + return $value; } } -- GitLab