コード例 #1
0
 /**
  * @param $method
  * @param $arguments
  * @param $duration
  * @param $return
  */
 private function logOperation($method, $arguments, $duration, $return)
 {
     $params['cost'] = $duration;
     $operValue = json_encode($arguments);
     $length = strlen($operValue);
     if ($length > self::LOG_TRUNCATION_LEN) {
         $operValue = substr($operValue, 0, self::LOG_TRUNCATION_LEN) . '...';
     }
     $params['operName'] = $method;
     $params['operValue'] = $operValue;
     $params['operLength'] = $length;
     if (!empty($return)) {
         $returnValue = json_encode($return);
         $length = strlen($returnValue);
         if ($length > self::LOG_TRUNCATION_LEN) {
             $returnValue = substr($returnValue, 0, self::LOG_TRUNCATION_LEN) . '...';
         }
         $params['resultValue'] = $returnValue;
         $params['resultLength'] = $length;
     }
     Logger::warning('thrift_operation_' . $this->tag . '_trace', 0, $params);
 }
コード例 #2
0
ファイル: mysql.php プロジェクト: Whispersong/phputils
 private static function log($type, $msg, $errorNo, $params)
 {
     if (class_exists('Xiaoju\\Beatles\\Utils\\Logger')) {
         switch ($type) {
             case 'debug':
                 Logger::debug($msg, $errorNo, $params);
                 break;
             case 'trace':
                 Logger::trace($msg, $errorNo, $params);
                 break;
             case 'notice':
                 Logger::notice($msg, $errorNo, $params);
                 break;
             case 'warning':
                 Logger::warning($msg, $errorNo, $params);
                 break;
             case 'fatal':
                 Logger::fatal($msg, $errorNo, $params);
                 break;
         }
     }
 }
コード例 #3
0
ファイル: loggertest.php プロジェクト: Whispersong/phputils
 public function testNoArg()
 {
     $fileName = self::LOG_DIR . 'didi.log.wf';
     $logMsg = 'Test no argument';
     $logId = Utils\Logger::getLogId();
     $logErrorNo = 120;
     $expectedResult = array('[WARNING]' => null, 'logId' => $logId, 'errno' => $logErrorNo, 'msg' => $logMsg, 'ip' => '127.0.0.1', 'uri' => '');
     @unlink($fileName);
     Utils\Logger::setLogId($logId);
     Utils\Logger::warning($logMsg, $logErrorNo);
     $logContents = file_get_contents($fileName);
     $actualResult = $this->parseLog(str_replace(PHP_EOL, '', $logContents));
     unset($actualResult['time']);
     unset($actualResult['line']);
     $diff = array_diff_assoc($actualResult, $expectedResult);
     $this->assertEquals(count($diff), 0, 'actual result differs from expected: ' . var_export($diff, true));
 }
コード例 #4
0
ファイル: pheanstalk.php プロジェクト: Whispersong/phputils
 private static function logOperation($method, $arguments, $duration, $return)
 {
     $params['cost'] = $duration;
     $operValue = implode(' ', $arguments);
     $length = strlen($operValue);
     if ($length > self::LOG_TRUNCATION_LEN) {
         $operValue = substr($operValue, 0, self::LOG_TRUNCATION_LEN) . '...';
     }
     $params['operName'] = $method;
     $params['operValue'] = $operValue;
     $params['operLength'] = $length;
     if (!empty($return)) {
         $returnValue = strval($return);
         $length = strlen($returnValue);
         if ($length > self::LOG_TRUNCATION_LEN) {
             $returnValue = substr($returnValue, 0, self::LOG_TRUNCATION_LEN) . '...';
         }
         $params['resultValue'] = $returnValue;
         $params['resultLength'] = $length;
     }
     if (class_exists('Xiaoju\\Beatles\\Utils\\Logger')) {
         Logger::warning('pheanstalk operation', 0, $params);
     }
 }
コード例 #5
0
ファイル: framework.php プロジェクト: Whispersong/phputils
$loader->addPsr4('Xiaoju\\Beatles\\Utils\\', FRAMEPATH . 'libraries');
$loader->addPsr4('Xiaoju\\Beatles\\Utils\\', FRAMEPATH . 'config');
$errNo = 0;
$errMsg = '';
$__uid = 0;
try {
    //生成全局的logid
    \Xiaoju\Beatles\Utils\Logger::create($logConfig['intLevel'], $logConfig['strLogFile'], $logConfig['intMaxFileSize']);
    \Xiaoju\Beatles\Utils\Logger::setLogId(Xiaoju\Beatles\Utils\Logger::getLogId());
    $params = array('get' => $_GET, 'post' => $_POST);
    register_shutdown_function('logFinish', $params);
    $routerConfig = $appNameSpace . '\\Config\\Route';
    if (class_exists($routerConfig) && is_array($routerConfig::$routes)) {
        $routerConfig = $routerConfig::$routes;
    } else {
        $routerConfig = array();
    }
    $router = new \Xiaoju\Beatles\Framework\Base\Router($_SERVER['REQUEST_URI'], $routerConfig);
    $router->setRoute();
    $router->run($params);
} catch (\InvalidArgumentException $ex) {
    $errNo = -1;
    $errMsg = strlen($ex->getMessage()) ? $ex->getMessage() : 'system error';
    \Xiaoju\Beatles\Utils\Logger::fatal($errMsg, $errNo, array('in' => json_encode($params), 'out' => ob_get_contents()));
    echo \Xiaoju\Beatles\Utils\Formatter::format(array('errno' => $errNo, 'errmsg' => $errMsg));
} catch (\Exception $ex) {
    $errNo = $ex->getCode();
    $errMsg = $ex->getMessage();
    \Xiaoju\Beatles\Utils\Logger::warning($errMsg, $errNo, array('in' => json_encode($params), 'out' => ob_get_contents()));
    echo \Xiaoju\Beatles\Utils\Formatter::format(array('errno' => $errNo, 'errmsg' => $errMsg));
}