Potřebujete získat seznam procesů běžících na serveru 4D, vzdáleném serveru 4D nebo samostatném serveru 4D, abyste mohli vytvořit vlastní okno správy? Chcete vědět, který uživatel inicioval jednotlivé procesy, abyste mohli vytvořit monitorovací okno své aplikace nebo tyto informace zaznamenat do databáze a později analyzovat zatížení serveru? Nyní můžete tyto informace snadno získat naprogramováním nového příkazu: Get process activity.
Monitorování procesů a uživatelů
Get process activity je nový příkaz 4D, který umožňuje získat seznam spuštěných procesů a připojených uživatelů.
Díky tomuto příkazu můžete sledovat činnost serveru z hlediska procesů a uživatelů a snadno vytvořit tento typ prohlížeče procesů, jak je uvedeno v našem příkladu databáze:
Upozorňujeme také, že tato funkce je prvním krokem, který vám poskytne všechny nástroje k vytvoření vlastního okna pro správu serveru na míru. Procesy a uživatelé je začátek, další možnosti samozřejmě přijdou s dalšími verzemi R.
Příklady kódu
Příkaz Get process activity obsahuje dva selektory (Processes only a Sessions only), které dávají vývojáři možnost získat buď pouze informace o procesech, nebo pouze informace týkající se uživatelů (relací). Pokud není předán žádný parametr, vrátí objekt obsahující 2 kolekce: procesy a relace.
C_OBJECT($activity)
$activity:=Get process activity // processes + sessions at once
C_COLLECTION($pCol;$sCol)
$pCol:=$activity.processes
$sCol:=$activity.sessions
Příklad informací vrácených v kolekci processes:
{ name:Application process, sessionID:4E3F3701DA6E4C449513D11FB68AA01C, number:4, ID:4, visible:true, type:-18, state:2, cpuUsage:0.022585061256626, cpuTime:8.1486859585647, preemptive:false }, { name:DB4D Flush, state:0, cpuUsage:0, cpuTime:0, preemptive:true }, (...)
Příklad informací vrácených v kolekci sessions:
{ type:remote, userName:Designer, machineName:VM10-MAINGUENE, systemUserName:fmainguene, IPAddress:localhost, creationDateTime:2017-04-26T07:59:27Z, state:active, ID:4E3F3701DA6E4C449513D11FB68AA01C }