Vous êtes sur le site Web historique de la documentation de 4D. Les documentations sont progressivement déplacées vers developer.4d.com

Accueil

 
4D v19.8
Get process activity

Get process activity 


 

Get process activity {( options )} -> Résultat 
Paramètre Type   Description
options  Entier long in Options de retour
Résultat  Objet in Instantané des process en cours d'exécution et/ou (4D Server uniquement) des sessions utilisateur

La commande Get process activity retourne une vue instantanée des sessions des utilisateurs connectés et/ou des process exécutés à un instant précis. Cette commande retourne tous les process, y compris les process internes qui n'étaient pas accessibles à la commande PROCESS PROPERTIES.

  • Lorsqu'elle est exécutée sur le serveur, par défaut si vous omettez le paramètre options, Get process activity retourne les listes des sessions utilisateur et des process, comme présenté ci-dessous :
    {
    "sessions": [
              {
                 "type": "remote",
                 "userName": "Designer",
                 "machineName": "iMac27caroline",
                 "systemUserName": "Caroline Briaud",
                 "IPAddress": "192.168.18.18",
                 "hostType": "mac",
                 "creationDateTime": "2017-09-22T12:46:39Z",
                 "state": "postponed",
                 "ID": "3C81A8D7AFE64C2E9CCFFCDC35DC52F5"
               },...
           ],
    "processes": [
              {
                 "name": "Application process",
                 "sessionID": "3C81A8D7AFE64C2E9CCFFCDC35DC52F5",
                 "number": 4,
                 "ID": 4,
                 "visible": true,
                 "systemID": "123145476132864",
                 "type": -18,
                 "state": 0,
                 "cpuUsage": 0,
                 "cpuTime": 0.006769,
                 "preemptive": false,
                 "session": {  
                          "type": "remote",
                          "userName": "Designer",
                          "machineName": "iMac27caroline",
                          "systemUserName": "Caroline Briaud",
                          "IPAddress": "192.168.18.18",
                          "hostType": "mac",
                          "creationDateTime": "2017-09-22T12:46:39Z",
                          "state": "postponed",
                          "ID": "3C81A8D7AFE64C2E9CCFFCDC35DC52F5"
                           }
               },...
        ]
    }

    Vous pouvez sélectionner la liste à retourner en passant une des constantes suivantes du thème "Environnement 4D" dans le paramètre options :
    Constante Type Valeur Comment
    Processes only Entier long 1

    Retourne uniquement la liste des process

    Sessions only Entier long 2

    Retourne uniquement la liste des sessions utilisateurs

  • Lorsqu'elle est exécutée sur 4D en mode local ou distant, Get process activity retourne uniquement la liste des process (le paramètre options est inutilisé).

La propriété "sessions" contient une collection d'objets décrivant toutes les sessions utilisateur en cours sur le serveur. 

Chaque objet session contient les propriétés suivantes :

NomTypeDescription
typeTexte (enum)Type de session. Valeurs possibles : "remote", "storedProcedure", "web", "rest"
userNameTexte Nom d'utilisateur
machineNameTexte Nom de la machine distante
systemUserNameTexte Nom de la session système ouverte sur la machine distante
IPAddressTexte Adresse IP de la machine distante
hostTypeTexte (enum)Type d'hôte. Valeurs possibles : "windows", "mac", "browser"
creationDateTimeDate ISO 8601Date et heure de connexion de la machine distante
stateTexte (enum)Statut de la session. Valeurs possibles : "active", "postponed", "sleeping"
IDTexte UUID de la session

La propriété "processes" contient une collection d'objets décrivant tous les process en cours sur le serveur. 

Chaque objet process contient les propriétés suivantes :

NomTypeDescription
nameTexteNom du process
sessionIDTexteUUID de la session
numberEntier longNuméro du process
IDEntier longID unique du process
visibleBooléenTrue si visible, False sinon
systemIDTexteID du process utilisateur, du process 4D ou du process en attente
typeEntier longType de process en exécution. Vous pouvez utiliser les constantes siuvantes du thème "Type du process" :
Constante Valeur Comment
HTTP Log flusher -58
Logger process -57
HTTP Listener -56
HTTP Worker pool server -55
SQL Listener -54
SQL Net Session manager -53
SQL Worker pool server -52
DB4D Listener -51
DB4D Mirror -50
DB4D Cron -49
DB4D Worker pool user -48
DB4D Garbage collector -47
DB4D Flush cache -46
DB4D Index builder -45
ServerNet Session manager -44
ServerNet Listener -43
Worker pool spare -42
Worker pool in use -41
Other internal process -40
Main 4D process -39
SOAP process -33
Web server spare process -32
Client manager process -31
Compiler process -29
Monitor process -26
Internal timer process -25
SQL Method execution process -24
MSC process -22
Restore Process -21
Log file process -20
Backup process -19
Internal 4D server process -18
Method editor macro process -17
On exit process -16
Server interface process -15
Execute on client process -14
Web server process -13
Web process on 4D remote -12
Other 4D process -10
External task -9
Event manager -8
Apple event manager -7
Serial Port Manager -6
Indexing process -5
Cache manager -4
Web process with no context -3
Design process -2
Main process -1
None 0
Execute on server process 1
Created from menu command 2
Created from execution dialog 3
Other user process 4
Worker process 5 Process worker lancé par l’utilisateur
stateEntier longStatut courant (voir la liste de constantes Statut du process)
cpuUsageRéelPourcentage de temps cpu dévolu à ce process (entre 0 et 1)
cpuTimeRéelDurée d'exécution (secondes)
preemptiveBooléenTrue si mode préemptif, False sinon
sessionObjetSession au sein de laquelle le process est exécuté. Valeur Indéfinie si le paramètre Processes only est passé.
urlTexteURL avec chemin et paramètres (le cas échéant) des process web (-3) et SOAP (-33) exécutés sur le serveur web. Non retourné pour les autres types de process.

Exemple  

Vous souhaitez obtenir la liste de toutes les sessions utilisateurs :

  //A exécuter sur le serveur
 C_OBJECT($o)
 C_LONGINT($i)
 $o:=Get process activity //Lire informations de process et de sessions
 For($i;0;($o.processes.length)-1) //itération de la collection "processes"
    $processName:=$o.processes[$i].name
    $userName:=String($o.processes[$i].session.userName// Accès facile à userName
  //utiliser Chaine car l'objet session peut être non défini
 End for



Voir aussi  

PROCESS PROPERTIES
WEB Get server info

 
PROPRIÉTÉS 

Produit : 4D
Thème : Process
Numéro : 1495

Commande(s) éligible(s) à l'exécution dans un process préemptifComportement différent en mode distant

 
PAGE CONTENTS 
 
HISTORIQUE 

Créé : 4D v16 R4
Modifié : 4D v16 R5
Modifié : 4D v17 R5

 
UTILISATION DE L'ARTICLE

4D - Langage ( 4D v19)
4D - Langage ( 4D v19.1)
4D - Langage ( 4D v19.4)
4D - Langage ( 4D v19.5)
4D - Langage ( 4D v19.6)
4D - Langage ( 4D v19.7)
4D - Langage ( 4D v19.8)