Surveillez l’activité de 4D Server avec ce nouvel outil

Traduit automatiquement de Deepl
De nombreuses fonctionnalités ont été publiées pour vous aider à gérer l’activité de votre serveur 4D. 4D v18 R3 fournit aux administrateurs de 4D un autre outil de surveillance de l’activité de 4D Server. Un outil qui permet d’obtenir toutes les opérations exécutées au-delà d’un temps donné, ainsi que des détails pertinents sur les tables, les champs et les clients concernés.
Cette fonctionnalité ne rend pas seulement tout ce qui précède possible, elle facilite également l’optimisation de votre code, l’identification des problèmes et la libération des ressources de votre serveur 4D.

HDI : surveillez l’activité de votre application 4D

4D introduit un nouvel ensemble de commandes pour surveiller votre application 4D. Elles vous permettent d’enregistrer l’activité (en mémoire) qui dépasse une limite de temps donnée.

Vous pouvez spécifier le type d’activité que vous souhaitez surveiller :

  • Activité des données 4D: opérations impliquant les données 4D elles-mêmes,
  • Activité réseau: vous obtiendrez les mêmes informations que dans le fichier 4DRequestsLog (*),
  • Exécution du langage: vous obtiendrez les mêmes informations que dans le fichier 4DDebugLog (*).

(*) Il n’est pas nécessaire d’activer les fichiers log correspondants, donc aucun espace sur le disque n’est utilisé.

Commande START MONITORING ACTIVITY

La commande START MONITORING ACTIVITY prend comme paramètres le seuil de durée et le type d’opérations à surveiller . Pour cela, les nouvelles constantes suivantes peuvent être utilisées pour surveiller :

  • Activity operationsOpérations dans les données 4D
  • Activity networkOpérations de l’activité réseau
  • Activity languageOpérations de l’exécution du langage

Commande Get Monitored Activity

Lorsque vous voulez obtenir toute l’activité enregistrée, il suffit d’appeler la nouvelle Get Monitored Activity() commande !

Elle renvoie une collection d’objets avec les informations pertinentes que vous pouvez utiliser comme vous le souhaitez (générer un fichier, afficher une interface pour l’administrateur, etc.)

Commande STOP MONITORING ACTIVITY

Lorsque vous voulez arrêter l’enregistrement de l’activité de votre application 4D ou vider la mémoire, il suffit d’appeler la commande STOP MONITORING ACTIVITY commande.

EXEMPLE concret

Dans la plupart des cas, votre besoin sera le suivant :

Toutes les 10 minutes, je veux vérifier si certaines opérations ont duré plus de 10 secondes sur mon serveur 4D. Si oui, je veux envoyer un email à l’administrateur (ou prendre une autre action).

Voici du code pour faire cela.

Méthode de démarrage du serveur 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 ; "Surveiller les opérations")

processus de surveillance (à exécuter sur le serveur)

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

sur la méthode d’arrêt du serveur


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

Consultez l’IDH pour en savoir plus !
Avatar
- Product Owner - Marie-Sophie Landrieu-Yvert a rejoint l'équipe de 4D Product en tant que Product Owner en 2017. En tant que Product Owner, elle est en charge de rédiger les user stories puis de les traduire en spécifications fonctionnelles. Son rôle est également de s'assurer que l'implémentation de la fonctionnalité livrée répond au besoin du client.Marie-Sophie est diplômée de l'école d'ingénieur ESIGELEC et a commencé sa carrière en tant qu'ingénieur chez IBM en 1995. Elle a participé à divers projets (projets de maintenance ou de construction) et a travaillé en tant que développeur Cobol. Elle a ensuite travaillé en tant que concepteur UML et développeur Java. Dernièrement, ses principaux rôles étaient d'analyser et de rédiger des exigences fonctionnelles, de coordonner les équipes commerciales et de développement.