Perfilador
A partir de la versión 3.2.0 (beta).
La pestaña Perfilador mide el tiempo que tarda la evaluación de las fórmulas. Registra cada evaluación y la muestra en una cronología y en una tabla: duraciones, número de llamadas, cadenas de llamadas. Ve en qué se va el tiempo, incluso en las llamadas que lanza el propio Ninext.
La pestaña está reservada a los administradores. Solo muestra su icono, un cronómetro, entre las pestañas Errores y Buscador de código; su nombre aparece al pasar el ratón. Se desactiva en la Configuración de Ninext, sección «Gestor de scripts»: Perfilador de fórmulas.
Iniciar y detener una medición
El botón principal, Iniciar la medición, toma el nombre del inicio elegido (Iniciar en la primera evaluación, Iniciar en el próximo clic); durante la medición, se convierte en Detener la medición. El pequeño botón contiguo, que muestra los iconos del inicio y de la parada elegidos, abre el menú Elegir el disparador de inicio, en dos partes. La primera indica cuándo empieza la medición:
| Inicio | Efecto |
|---|---|
| Inicio inmediato | La medición empieza con el clic. Es el ajuste predeterminado. |
| En la primera evaluación | La medición empieza con la próxima evaluación de fórmula, que sirve de origen de los tiempos. |
| En el próximo clic | La medición empieza con el próximo clic fuera de la pestaña Perfilador. Mientras tanto, el botón se convierte en Cancelar. |
La segunda indica cuándo se detiene:
| Parada | Efecto |
|---|---|
| Parada manual | Con el botón Detener la medición. Es el ajuste predeterminado. |
| Parar tras 10, 30 o 60 s | La cuenta atrás empieza al iniciarse la medición. |
| Al terminar la evaluación | Se ofrece con «En la primera evaluación»: la medición se detiene cuando termina esa evaluación, incluida su continuación asíncrona. |
| Al soltar el botón del ratón | Se ofrece con «En el próximo clic»: la medición se detiene al soltar el botón del ratón. Lo que continúa después de forma asíncrona no se mide. |
Así solo mide lo que le interesa: la apertura de un registro, el clic en un botón, el cálculo de una vista. Estas elecciones valen hasta que se recarga la página.
Mientras la medición espera su disparador, la línea de estado indica «Armado — a la espera del disparador…». Durante la medición, indica desde hace cuántos segundos está en curso, el número de evaluaciones registradas y el número de fórmulas distintas.
A tener en cuenta
Iniciar una nueva medición no vacía los resultados anteriores: las evaluaciones se acumulan de una medición a otra, en la tabla, en los contadores y en la cronología, hasta el clic en Vaciar. Cada medición vuelve a empezar de cero en el eje de tiempo: por tanto, las barras de dos mediciones sucesivas se superponen al principio de la cronología. Para leer una medición sola, haga clic en Vaciar antes de iniciarla.
Cronología
Cada evaluación es una barra en un eje de tiempo. Las evaluaciones anidadas o simultáneas se apilan en varias líneas; cada fórmula conserva su color, y una barra translúcida es una evaluación todavía en curso. Las barras suficientemente anchas llevan el nombre de su campo («Tabla ▸ Campo»), precedido de «Ninext ▸» para las llamadas del plugin. La vista se llena en directo. Conserva como máximo 20 000 evaluaciones: más allá, una nota indica el número de evaluaciones descartadas, que solo la tabla sigue contando.
Para hacer zoom:
- la rueda del ratón, o el gesto de pellizcar en el panel táctil en Chrome, hace zoom bajo el puntero (el deslizamiento con dos dedos desplaza la vista);
- un doble clic en una barra la selecciona y hace zoom sobre ella;
- tres botones: Ajustar toda la sesión, Reducir la escala de tiempo y Ampliar la escala de tiempo.
Tabla

La tabla agrupa las evaluaciones por fórmula:
| Columna | Contenido |
|---|---|
| Fórmula | La fórmula medida. |
| Llamadas | El número de evaluaciones. |
| Total (ms) | El tiempo acumulado. |
| Media (ms) | El tiempo medio de una evaluación. |
| Máx (ms) | La evaluación más larga. |
Está ordenada por tiempo total, de la más costosa a la menos costosa, y se actualiza cada segundo; se muestran las 100 primeras líneas, y una nota lo indica más allá («100 filas mostradas de N — las más costosas primero»). Más allá de 1 000 fórmulas distintas, las siguientes se agrupan en una línea «… otras fórmulas». Una fórmula del esquema se presenta como en Campos y fórmulas —ruta de navegación, «Fx», botón de modificación—, con un «+N» cuando la misma fórmula se encuentra en varios lugares. Una etiqueta «Ninext» marca las llamadas lanzadas por el plugin.
El detalle de una evaluación

Un clic en una barra o en una línea abre el detalle:
- el código completo de la fórmula;
- para una barra: Inicio, Duración, Registro, y la Cadena de llamadas, desde la evaluación raíz hasta esta, con cada eslabón clicable; para una línea de la tabla: Mediciones (número de llamadas, tiempo total, medio y máximo);
- Origen, para una llamada lanzada por Ninext;
- Variables (inspección), para una evaluación de una fórmula inspeccionada (véase más abajo);
- las Ubicaciones de la fórmula en el esquema, con el botón que lleva al código;
- al pie, Ampliar esta evaluación e Inspeccionar esta fórmula.
Inspeccionar una fórmula
Seleccione una fórmula, en la tabla o en la cronología, y haga clic en Inspeccionar esta fórmula. Durante la medición, en cada evaluación de esa fórmula, el perfilador registra el valor de cada variable declarada con var o let: una vista previa del valor, y su tipo al pasar el ratón.
La pestaña Inspeccionar enumera esas evaluaciones, la más reciente arriba; un clic en una de ellas la localiza en la cronología. Se inspecciona una fórmula cada vez; Detener la inspección pone fin a la inspección.
Dos límites: las reasignaciones y las variables de bucle no se registran, y los tiempos de la fórmula inspeccionada pasan a ser orientativos, ya que el propio registro lleva tiempo.
Leer las cifras
- Los tiempos son inclusivos: una fórmula cuenta también el tiempo de las fórmulas que evalúa.
- Para una evaluación asíncrona, el tiempo corre hasta su final, incluida la carga de los datos.
- Dos campos que llevan exactamente la misma fórmula comparten una línea de la tabla.
- Se miden las fórmulas, los triggers, las columnas de las vistas, el código de la Consola y las llamadas de Ninext. El JavaScript propio de Ninext, no.
- La medición solo cuesta unos microsegundos por evaluación, y nada fuera de una medición. Los resultados se quedan en memoria: desaparecen al recargar la página.
