Exemplo n.º 1
0
 public function postModule(PostModuleEvent $event)
 {
     $pageModuleWrapper = $event->getModuleWrapper();
     $queryCount = $event->getExtra('module_profiler.query_count');
     $time = microtime(true) - $event->getExtra('module_profiler.time');
     $userTime = Helper::getCpuTime('u') - $event->getExtra('module_profiler.user_time');
     $systemTime = Helper::getCpuTime('s') - $event->getExtra('module_profiler.system_time');
     $memoryUsage = memory_get_usage(true) - $event->getExtra('module_profiler.memory_usage');
     $sqlQueries = $queryCount !== null ? Propel::getQueryCount() - $queryCount : null;
     if ($userTime + $systemTime > $this->cpuLimit || $time > $this->timeLimit) {
         $this->logger->warning('Module generation time exceeded limit');
     }
     if ($memoryUsage > $this->memoryLimit) {
         $this->logger->warning('Module memory usage exceeded limit');
     }
     if ($sqlQueries > $this->sqlLimit) {
         $this->logger->warning('Module sql query count exceeded limit');
     }
     // add module debug info
     $this->moduleDebugInfo[] = array($pageModuleWrapper->getName(), $pageModuleWrapper->getClassName(), $pageModuleWrapper->getTemplate(), $pageModuleWrapper->getTarget(), (bool) $event->getExtra('module_cacher.cached'), round($time * 1000.0), round(($userTime + $systemTime) * 1000.0), Helper::humanReadableBytes($memoryUsage), Helper::humanReadableBytes(memory_get_peak_usage(true)), $sqlQueries !== null ? $sqlQueries : 'n/a');
     // Remove values to prevent caching
     $extras = $event->getExtras();
     unset($extras['module_profiler.time']);
     unset($extras['module_profiler.query_count']);
     unset($extras['module_profiler.user_time']);
     unset($extras['module_profiler.system_time']);
     unset($extras['module_profiler.memory_usage']);
     $event->setExtras($extras);
 }
Exemplo n.º 2
0
 public function postModule(PostModuleEvent $event)
 {
     if ($this->isEnabled()) {
         $content = $this->adminModule($event->getContent(), $event->getModuleWrapper());
         $event->setContent($content);
     }
 }
Exemplo n.º 3
0
 public function postModule(PostModuleEvent $event)
 {
     $htmlHead = App::getInstance()->generator->getHtmlHead();
     $replay = $event->getExtra('module_htmlhead.replay');
     if ($replay) {
         $htmlHead->replay($replay);
     } else {
         $event->setExtra('module_htmlhead.replay', $htmlHead->getBacklog());
     }
 }
Exemplo n.º 4
0
 public function postModule(PostModuleEvent $event)
 {
     if (!$event->getExtra('module_cacher.cached')) {
         /** @var \Curry\Module\CacheProperties $cacheProperties */
         $cacheProperties = $event->getExtra('module_cacher.properties');
         if ($cacheProperties !== null) {
             $cacheName = $event->getExtra('module_cacher.name');
             $cache = array('content' => $event->getContent(), 'extra' => $event->getExtras());
             $this->cache->save($cache, $cacheName, array(), $cacheProperties->getLifetime());
         }
     }
 }