Ejemplo n.º 1
0
<?php

// パフォーマンス情報を取得する
$time = microtime(true);
// 実行時間
$mem = memory_get_peak_usage();
// 最大メモリ使用量
function performance()
{
    global $time, $mem;
    // Logにパフォーマンス情報を書き込む
    $action = Api_Controller::getInstance()->getCurrentActionName();
    $logger = Api_Controller::getInstance()->getBackend()->getLogger();
    $logger->begin();
    $logger->log(LOG_INFO, $action . ': peak memory: ' . memory_get_peak_usage() / 1024 / 1024 . 'Mb' . ': diff memory: ' . (memory_get_peak_usage() - $mem) / 1024 / 1024 . 'Mb' . ': ececute time: ' . (microtime(true) - $time) . 's' . ': timestamp: ' . time());
    $logger->end();
}
register_shutdown_function("performance");
require_once '../../application/app/api/Controller.php';
try {
    Api_Controller::main('Api_Controller', array('api_*'), '404');
} catch (Exception $e) {
    $logger = Api_Controller::getInstance()->getBackend()->getLogger();
    $logger->log(LOG_CRIT, "API::" . $e->getMessage());
    header("Location: ?action_error=true");
}