Usuario:ManuelRomero/proyecto/proyectoIternova/borrador

De WikiEducator
Saltar a: navegación, buscar
  public static function create_matrices_days( $data, $interval, $list_services ) {
        //En este caso queremos sacar un valor por día que sea la media de de ese día
 
        echo "<h2>MRM ---DEBUGANDO ... en matrices day (media por día)</h2>";
        $matrix = [];
 
 
 
 
        //Inicializo el primer nivel del array
        $matrix[ 'host' ] = array_values( $data )[ 0 ]->host_id;
        $matrix[ 'date' ] = []; //Será un array indexado de las diferentes fechas
        $matrix[ 'services' ] = []; //Array asociativo con cada servicio cada uno tendrá un arrau con los índices
 
 
 
 
        foreach ( $data as $data_host_day ) { //cada día registrado a un host concreto
//            //  //Ahora recorremos para cada documento  (host - día)
//            //primero inicializamos las fechas
//
//
//
////
            $s = substr( $data_host_day->timestamp, 0, 10 );
            $f_d = date( 'd-m-Y', strtotime( $s ) );
 
            $matrix[ 'date' ][] = $f_d;
 
 
            foreach ( $list_services as $service ) {
//                //inicializo el array
//
               $indexes_service = array_keys( $data_host_day->data[ $service ] );
//                //inicializo la fecha
 
//
                foreach ( $indexes_service as $index_service ) {
//                    //primer inicializo la matriz
//                    //me interesan solo los múltiplos de 30
//                     //Calculamos la media de cada hora
                    for ( $h = 0; $h <= 23; $h++ ) {
//                        Logs_Controller::vardump( $h );
//                        Logs_Controller::vardump( $index_service );
//                        Logs_Controller::vardump( $service );
 
                        $data_min_avg[] = Monitorizacion_Controller_Services::array_avg( $data_host_day->data[ $service ][ $index_service ][ $h ] );
                    }//end while $hour
 
 
 
                        $matrix[ 'services' ][ $service ][ $index_service ][] = Monitorizacion_Controller_Services::array_avg( $data_min_avg );
 
 
                    //                    Logs_Controller::vardump( $data_min_avg );
//                    Logs_Controller::vardump( $matrix );
               }//End foreach index (indices de los servicios
//                //                echo "FECHA       -      VALOR SERVICIO<br/>";
////                foreach ( $matrix as $f => $v ) {
////                    echo "$f  - $v<br />";
            }//End foreach $services
        }//end foreach $data
//        //ver matriz
//        echo "<h2>MRM ---DEBUGANDO ...  matriz con medias por día </h2>";
      Logs_Controller::vardump( $matrix );
//
 
 
        return $matrix;
 
    }