Diferencia entre revisiones de «Usuario:ManuelRomero/proyecto/proyectoIternova/Gráficas»
De WikiEducator
(Una revisión intermedia por el mismo usuario no mostrado) | |||
Línea 15: | Línea 15: | ||
|- | |- | ||
|} | |} | ||
+ | *Para ello genero previamente a partir de una consulta en un interavlo de fechas de un determinado host, la siguiente información | ||
+ | |||
+ | |||
+ | |||
+ | |||
+ | {|width="300px" align="center" style="border: 1px solid red;" cellpadding="0" cellspacing="0" | ||
+ | |- | ||
+ | |style="border: 1px solid;" |host | ||
+ | |style="border: 1px solid;" |date | ||
+ | |style="border: 1px solid;" |servicios | ||
+ | |- | ||
+ | |style="border: 1px solid;" |id_ del host en la colección mongo | ||
+ | |style="border: 1px solid;" |--- | ||
+ | |style="border: 1px solid;" |ssh | ||
+ | |style="border: 1px solid;" |http | ||
+ | |style="border: 1px solid;" |... (mas servicios | ||
+ | |- | ||
+ | |style="border: 1px solid;" |------ | ||
+ | |style="border: 1px solid;" |Fecha 2: 03-03-2017 12:43 | ||
+ | |style="border: 1px solid;" |valor_ssh_per_1 | ||
+ | |style="border: 1px solid;" |valor_http_per_1 | ||
+ | |style="border: 1px solid;" |... (mas servicios | ||
+ | |- | ||
+ | |} | ||
[[Imagen:CicloVida_Monitorizacion_BusquedaHost.png]] | [[Imagen:CicloVida_Monitorizacion_BusquedaHost.png]] | ||
Línea 77: | Línea 101: | ||
} | } | ||
</source> | </source> | ||
+ | |||
+ | ==Dibujar la tabla== | ||
+ | *Ver el ejemplo en | ||
+ | Monitorizacion_Modules_Stats_View | ||
+ | Método | ||
+ | generate_totales | ||
+ | |||
+ | Antes de visualizar la gráfica, imprimir los datos con | ||
+ | Printer_Controller::getMatrixHTML($matriz) | ||
+ | Donde matriz debe de ser una estructura con los datos | ||
+ | |||
+ | {|width="300px" align="center" style="border: 1px solid red;" cellpadding="0" cellspacing="0" | ||
+ | |- | ||
+ | |style="border: 1px solid;" |FECHA | ||
+ | |style="border: 1px solid;" |SERVICIO | ||
+ | |- | ||
+ | |style="border: 1px solid;" |Fecha 1: 01-01-2017 10:43 | ||
+ | |style="border: 1px solid;" |valor ssh 1 | ||
+ | |- | ||
+ | |style="border: 1px solid;" |Fecha 2: 03-03-2017 12:43 | ||
+ | |style="border: 1px solid;" |valor ssh 2 | ||
+ | |- | ||
+ | |} |
Última revisión de 01:19 25 ago 2017
Cómo generar gráficas
- Preparar una matriz con la siguiente estructura.
FECHA | SERVICIO |
Fecha 1: 01-01-2017 10:43 | valor ssh 1 |
Fecha 2: 03-03-2017 12:43 | valor ssh 2 |
- Para ello genero previamente a partir de una consulta en un interavlo de fechas de un determinado host, la siguiente información
host | date | servicios | ||
id_ del host en la colección mongo | --- | ssh | http | ... (mas servicios |
------ | Fecha 2: 03-03-2017 12:43 | valor_ssh_per_1 | valor_http_per_1 | ... (mas servicios |
Monitorizacion_Controller::view
Inserto el código
//Obtengo los servicios para obetner la gráfica de cada servicio $services = $obj->servicios; foreach ($services as $service) { $data_ini = date("Y-m-d 00:00:00", time() - 24 * 60 * 60); //El día de ayer $data_fin = date("Y-m-d 00:00:00", time()); //El día de ayer $index = Monitorizacion_Controller_Services::get_index_to_services($service); $service = Monitorizacion_Constants::getIndexNumberService($service); echo "<h1>$service - $data_ini . $data_fin</h1>"; var_dump($index); echo "<h1>MRM</h1>"; //$matriz_service = Monitorizacion_Controller_Services::generate_service_matrix($data_ini, $data_fin, $service); //var_dump($matrix_service); }
- empiezo a implementar el método generate_service_matrix sin llegar a probar
/** * * @param type $data_ini fecha de inicio * @param type $data_fin fecha de fin * @param type $service servicio para obtener datos * Obtiene una matriz de datos a partir de la información almacenada en mongo * entre las fechas establecidas del servicio especificado */ public static function generate_service_matrix($data_ini, $data_fin, $service, $index, $host_id) { $datos = null; $date_current = date('Y-m-d 00:00:00'); $obj_date_current = new DateTime($date_current, new DateTimeZone('UTC')); $array_criterios = []; $array_criterios[] = array('host_id', 'eq', $host, 'string'); $array_criterios[] = array('data', 'eq', $service . '[' . $index . ']', 'string'); $array_criterios[] = array('timestamp', 'he', $$data_ini, 'string'); $array_criterios[] = array('timestamp', 'le', $data_fin, 'string'); Logs_Controller::vardump($array_criterios); /* $array_obj_data = Monitorizacion_Modeldata::get_all($array_criterios, array('host_id' => 1, 'timestamp' => -1), 0, 1); if (!empty($array_obj_data)) { //Con reset retomamos el primer elemento del array o FALSE si está vacío $datos = reset($array_obj_data); } return $datos; * */ }
Dibujar la tabla
- Ver el ejemplo en
Monitorizacion_Modules_Stats_View
Método
generate_totales
Antes de visualizar la gráfica, imprimir los datos con
Printer_Controller::getMatrixHTML($matriz)
Donde matriz debe de ser una estructura con los datos
FECHA | SERVICIO |
Fecha 1: 01-01-2017 10:43 | valor ssh 1 |
Fecha 2: 03-03-2017 12:43 | valor ssh 2 |