Supervise la actividad de 4D Server con esta nueva herramienta

Traducido automáticamente de Deepl
Se han lanzado muchas funcionalidades para ayudarle a gestionar la actividad de 4D Server. 4D v18 R3 ofrece a los administradores 4D otra herramienta de monitoreo de la actividad de 4D Server. Una herramienta para obtener todas las operaciones que se ejecutan más allá de un tiempo especificado, así como detalles relevantes sobre las tablas, campos y clientes involucrados.
Esta característica no sólo hace que todo lo anterior sea posible, sino que también facilita la optimización de su código, la identificación de problemas y la liberación de sus recursos de 4D Server.

HDI: Monitoree la actividad de su aplicación 4D

4D introduce un nuevo conjunto de comandos para monitorear su aplicación 4D. Le permiten registrar la actividad (en memoria) que dure más de un límite de tiempo determinado.

Puede especificar el tipo de actividad que desea monitorizar

  • Actividad delos datos 4D: operaciones que implican los datos 4D en sí mismos,
  • Actividad dered: obtendrá la misma información que en el archivo 4DRequestsLog (*),
  • Ejecución del lenguaje: obtendrá la misma información que en el archivo 4DDebugLog (*).

(*) No es necesario activar los archivos de registro correspondientes, por lo que no se utiliza espacio en el disco.

Comando START MONITORING ACTIVITY

El comando START MONITORING ACTIVITY toma como parámetros el umbral de duración y el tipo de operaciones a monitorizar . Para ello, se pueden utilizar las siguientes nuevas constantes para monitorizar:

  • Activity operations: operaciones en los datos de 4D
  • Activity network: operaciones de la actividad de red
  • Activity language: operaciones de la ejecución del lenguaje

Comando de obtención de la actividad monitorizada

Cuando quiera obtener toda la actividad registrada, sólo tiene que llamar al nuevo Get Monitored Activity() ¡comando!

Devuelve una colección de objetos con la información pertinente que puede utilizar como desee (generar un archivo, mostrar una interfaz para el administrador, etc.).

Comando STOP MONITORING ACTIVITY

Cuando quiera dejar de grabar la actividad de su aplicación 4D o vaciar la memoria, sólo tiene que llamar al STOP MONITORING ACTIVITY comando.

ejemplo concreto

En la mayoría de los casos, su necesidad será

Cada 10 minutos, quiero comprobar si algunas operaciones han durado más de 10 segundos en mi 4D Server. Si es así, quiero enviar un correo electrónico al administrador (o tomar otra acción).

El siguiente es un código para hacer precisamente eso.

Método de inicio del servidor ON

C_LONGINT($monitorProcessId)

STOP MONITORING ACTIVITY
// Detect 4D data operations which lasted more than 10s
START MONITORING ACTIVITY (10;Activity operations)
//Run a monitoring process
$monitorProcessId
:=New process("monitorOperations";0; "Monitor operations")

proceso de monitorización (a ejecutar en el servidor)

C_COLLECTION($activities)

While (Not(Process aborted))

// Inspect 4D data activity every 10 minutes
DELAY PROCESS (Current process;36000)
// Get the long operations and exclude backup operations

$activities :=Get Monitored Activity().query("Not(activityData.message IN :1)";New collection("@backup@"))
If ($activities.length#0)
// Send an email to the administrator with $activities details
// Empty the memory and restart the monitoring
STOP MONITORING ACTIVITY
START MONITORING ACTIVITY (10;Activity operations)
End if

End while

en el método de cierre del servidor


C_COLLECTION
($activities)

$activities :=Get Monitored Activity().query("Not(activityData.message IN :1)";New collection("@backup@"))
If ($activities.length#0)
// Send an email to the administrator with $activities details
End if

Consulte el IDH para obtener más información.
Avatar
• Propietario de producto - Marie-Sophie Landrieu-Yvert ingresó al equipo de 4D Product como Propietario de producto en 2017. Como tal, está a cargo de escribir las historias de los usuarios y luego traducirlas en especificaciones funcionales. Su papel es también asegurarse de que la implementación de la funcionalidad entregada cumpla con las necesidades del cliente. Marie-Sophie se graduó en la Escuela de Ingeniería de ESIGELEC y comenzó su carrera como ingeniera en IBM en 1995. Participó en varios proyectos (de mantenimiento y creación) y trabajó como desarrolladora de Cobol. Luego trabajó como diseñadora de UML y desarrolladora de Java. Sus principales funciones fueron analizar y redactar requisitos funcionales, coordinar los equipos de negocio y de desarrollo.