示例#1
0
 /**
  *
  * returns cpu utilization png image from rrd data file
  *
  * request object is like this;
  * <code>
  * $request['id'] = $id; //server ID
  * $request['graph_start'] = $time;
  * $request['graph_end'] = $time;
  * </code>
  *
  * @param sfWebRequest $request A request object
  *
  */
 public function executeGraph_cpu_perPNG(sfWebRequest $request)
 {
     $etva_server = EtvaServerPeer::retrieveByPK($request->getParameter('id'));
     $etva_node = $etva_server->getEtvaNode();
     $graph_start = $request->getParameter('graph_start');
     $graph_end = $request->getParameter('graph_end');
     $cpu_per_rra = new ServerCpuUsageRRA($etva_node->getUuid(), $etva_server->getUuid());
     $title_i18n = sprintf("%s :: %s", $etva_server->getName(), $this->getContext()->getI18N()->__(ServerCpuUsageRRA::getName()));
     $this->getResponse()->setContentType('image/png');
     $this->getResponse()->setHttpHeader('Content-Type', 'image/png', TRUE);
     $this->getResponse()->sendHttpHeaders();
     $this->getResponse()->setContent(print $cpu_per_rra->getGraphImg($title_i18n, $graph_start, $graph_end));
     return sfView::HEADER_ONLY;
 }