Desarrollo

Prev Next

Al ir a Menú de acceso rápido > Desarrollo , hay una serie de herramientas de desarrollo que puedes usar para ajustar tu experiencia en Totara, incluida la depuración y la configuración experimental

También podrías encontrar útil nuestra documentación para desarrolladores públicos, ya que contiene una serie de guías y recursos útiles para desarrolladores. 

A continuación, puedes encontrar explicaciones sobre lo que hace cada una de estas herramientas (excepto las funciones experimentales y la depuración, ya que son un poco más complejas y, por lo tanto, tienen sus propias páginas dedicadas). 

Cliente de prueba de servicio web

El cliente de prueba de servicio web ejecuta las funciones de forma real, por lo que no debe probar funciones que no conoce.

Aún no se han implementado todas las funciones de servicios web en el cliente de prueba Para revisar que un usuario no pueda acceder a algunas funciones, puedes probar funciones que no hayas permitido. Para ver mensajes de error más claros, configura debugging (depuración de errores) en  dentro de  Mostrar errores, advertencias y avisos en mensajes de depuración.

Purgar todas las cachés

Se puede acceder a la purga de todas las cachés a través del bloque Administración dentro del menú  de acceso >rápido Desarrollo > Purgar todas las cachés.

Totara puede almacenar en caché temas, javascript, cadenas de idioma, texto filtrado, fuentes RSS y muchos otros datos calculados. Purgar estas cachés eliminará esos datos del servidor y obligará a los navegadores a volver a capturar los datos, para que puedas estar seguro de que estás viendo los valores más actualizados producidos por el código actual. No hay peligro en la purga de cachés, pero tu sitio puede parecer más lento por un tiempo hasta que el servidor y los clientes calculen la nueva información y la almacenen en caché.

Hacer prueba del curso

Esta herramienta crea cursos de prueba estándar que incluyen muchas secciones, actividades y archivos. Esto tiene como objetivo proporcionar una medida estandarizada para verificar la confiabilidad y el rendimiento de varios componentes del sistema (como la copia de seguridad y la restauración).

Esta prueba es importante porque ha habido muchos casos anteriormente en los que, al enfrentarse a casos de uso de la vida real (p. ej., un curso con 1000 actividades), el sistema no funciona. Los cursos creados con esta función pueden ocupar una gran cantidad de espacio en la base de datos y el sistema de archivos (decenas de gigabytes). Tendrá que eliminar los cursos(y esperar para hacer limpiezas) para volver a liberar espacio.

No utilice esta funcionalidad en un sistema en producción . Use solamente en un servidor de desarrollo. Para evitar el uso accidental, esta función está deshabilitada a menos que también hayas seleccionado el nivel de depuración DEVELOPER.

Hacer un plan de prueba JMeter

Esta herramienta crea un archivo de plan de prueba JMeter junto con el archivo de credenciales de usuario.

Este plan de prueba está diseñado para funcionar junto con https://github.com/moodlehq/moodle-performance-comparison, lo que facilita la ejecución del plan de prueba en un entorno específico de Totara, recopila información sobre las ejecuciones y compara los resultados. Deberás descargarla y usar su script test_runner.sh o seguir las instrucciones de instalación y uso.

Necesitas establecer una contraseña para los usuarios del curso en config.php (p. ej. $CFG->tool_generator_users_password = 'totara';). No hay un valor predeterminado para esta contraseña para prevenir usos no deseados de la herramienta. Necesitas usar la opción de actualización de contraseñas en caso de que los usuarios del curso tengan otras contraseñas o que hayan sido generadas por tool_generator, pero sin establecer un valor $CFG->tool_generator_users_password.

Es parte de tool_generator, por lo que funciona bien con los cursos generados por los cursos y los generadores del sitio; también se puede utilizar con cualquier curso que contenga, al menos:

  • Un número suficiente de usuarios inscritos (depende del tamaño del plan de pruebas que seleccione) con la contraseña restablecida a 'totara'

  • Una instancia de módulo de página

  • Una instancia del módulo del foro con al menos una discusión y una respuesta

Es posible que desee considerar la capacidad de sus servidores cuando se ejecutan grandes planes de prueba, ya que la cantidad de carga generada por JMeterpuede ser muy grande. Se ha ajustado el periodo de incremento en función del número de hilos (usuarios) para reducir este tipode problemas, pero la carga sigue siendo muy grande.

No ejecute el plan de prueba en un sistema en vivo. Esta funcionalidad solo crea los archivos para alimentar a JMeter, por lo que no es peligrosa porsí misma, pero NUNCA  debe ejecutar este plan de prueba en un sitio de producción.

Excimer Profiler (Perfilador de excímeros)

Desde Totara 19.1, el perfilador Excimer se incluye como un componente central para ayudar a diagnosticar y resolver problemas de rendimiento en entornos de producción. Este generador de perfiles se ejecuta de manera eficiente y segura, capturando datos de rendimiento para solicitudes lentas sin afectar la estabilidad del sistema.

El generador de perfiles está deshabilitado por defecto, incluso si la extensión PHP está instalada y habilitada.

Requisitos

El perfilador Excimer requiere la extensión Excimer PHP. Siga las instrucciones de la documentación de MediaWiki para instalar y habilitar la extensión en su servidor.

Una vez instalada, la interfaz del perfilador está disponible a través de:

Menú de acceso rápido > Desarrollo > Perfilador excimer.

Activación y configuración del generador de perfiles

Puedes configurar Excimer a través de:

Menú de acceso rápido > Desarrollo > Perfilador Excimer > Configuración Excimer

Las siguientes opciones están disponibles:

Configuración

Descripción

Valor predeterminado

Habilitar Excimer

Activa o desactiva el generador de perfiles.

Inactivo

Habilitar la creación automática de perfiles

Guardar automáticamente perfiles de solicitud lenta.

Inactivo

Habilitar el conteo difuso

Utiliza el conteo aproximado para rastrear el uso de la página.

Inactivo

Duración mínima de la solicitud (ms)

Solo solicitudes de perfil más lentas que este valor.

5000

Duración mín. de la tarea (s)

Solo las tareas programadas del perfil son más lentas que este valor.

60

Período de muestreo (ms)

Intervalo para muestreo de rendimiento.

10

Intervalo(s) de procesamiento

Frecuencia del procesamiento de tareas.

10

Límite de muestra

Número máximo de muestras para conservar.

1024

Límite de pila

Máxima recurrencia/profundidad de apilado.

1000

Caducidad del registro (días)

Tiempo antes de purgar los perfiles.

30

Meses para mantener los datos de recuento aproximados

Dejar en blanco para mantener los datos indefinidamente.

12

Parámetros a ser editados

Elimina automáticamente los parámetros sensibles (p. ej., authtoken, sesskey, etc.).

Habilitar guardado parcial

Permite guardar perfiles parciales durante procesos de ejecución prolongada.

Inactivo

Máximo para ahorrar

Número máximo de perfiles lentos para conservar.

1000

Máximo para guardar por página

Número máximo de perfiles retenidos por script.

5

Uso del generador de perfiles

Si el perfil automático está habilitado, las solicitudes más lentas que el umbral configurado (predeterminado: 5 segundos) se registran automáticamente.

También puedes activar manualmente un perfil:

Ejemplo web:

/course/view.php?id=2&FLAMEME=1

Si no hay parámetros de URL existentes, utilice ?FLAMEME=1

Ejemplo de CLI:

export FLAMEME=1 && php admin/cli/upgrade.php

Interpretación de los resultados

Cada perfil incluye un gráfico de llama que visualiza el trazado de la pila:

  • Eje X: Lista alfabética de todas las funciones registradas (no cronológicas)

  • Eje Y: Profundidad de la pila (inferior = llamada antes)

  • Ancho: Duración de la llamada de función

  • Color: Solo estética: los colores no tienen significado

Al hacer clic en un cuadro se filtra a esa función y su hijo requiere una inspección más fácil.

Limpieza y retención de datos

Los perfiles de excimer se limpian automáticamente a través de tareas programadas:

  • Caducar registros de Excimer

  • Purgar los perfiles de excímeros más rápidos

  • Purgar datos de recuento aproximado del grupo de páginas

Puedes configurar cuánto tiempo se conservan los registros y el número de perfiles retenidos.

Perfiles bloqueados

Algunos perfiles pueden estar bloqueados (con un “Motivo del perfil de bloqueo”) para protegerlos de la eliminación. Perfiles bloqueados:

  • Se excluyen de la limpieza y la eliminación manual

  • No se puede eliminar en acciones de grupo

  • Se conservan para auditoría o investigación

Excepción: Los perfiles bloqueados se eliminarán si pertenecen a un usuario cuyos datos se están purgando.

Exportación e importación de perfiles

Exportar:

Puedes exportar un perfil como un archivo JSON para análisis o informes de soporte. Utiliza el botón Exportar perfil en la página de un perfil.

Revisa los datos exportados antes de compartirlos, ya que pueden incluir información identificable.

Importar:

Para importar un perfil, tu config.php debe incluir PHP:

$CFG->excimer_allow_profile_import = true;

Los perfiles importados están marcados con un “motivo” de import.

Otras herramientas de desarrollo

También hay una gama de otras herramientas que los desarrolladores pueden utilizar, entre ellas:

  • Bibliotecas de terceros

  • Pruebas de aceptación

  • Pruebas de PHPUnit

  • Biblioteca de plantillas

  • Editor XMLDB

  • API web

Join the Totara Community for more resources to help you get the most out of Totara. 


© Copyright 2025 Totara Learning Solutions. All rights reserved. Some content originally obtained via GPLv3 license and continues to be available under GPLv3. All other content is the sole copyright of Totara Learning Solutions.