Nuovi comandi di amministrazione del server

Tradotto automaticamente da Deepl

4D continua a fornire funzionalità che consentono di creare applicazioni personalizzate per il monitoraggio dei server. Dal recupero programmatico di informazioni sulle sessioni, sui processi e sul server delle applicazioni, all’ottenimento di informazioni sul server web.

Dopo aver fornito i comandi per leggere gli stati, 4D v17 R4 offre ora la possibilità di modificare gli stati. È ora possibile creare le proprie interfacce di amministrazione come finestre di dialogo sul server, sul client o anche come pagine HTML per l’accesso al Web. Sta a voi decidere. Questi comandi consentono di eseguire le stesse azioni dell’interfaccia di amministrazione standard di 4D. Ad esempio, è possibile inviare un messaggio agli utenti per avvisarli della manutenzione programmata o bloccare le nuove connessioni al server applicativo mentre si esegue un’operazione su di esso.

Comandi utente

È possibile inviare un messaggio dal server a un utente remoto con il comando SEND MESSAGE TO REMOTE USER con il comando Per recuperare un elenco di sessioni utente, si può usare il comando Get process activity .

Ad esempio, l’amministratore del server desidera inviare un messaggio a tutti gli utenti connessi.

C_TEXT($message)
$message :="È prevista un'operazione di manutenzione e il server verrà riavviato. Si prega di disconnettersi prima delle 22:00".
SEND MESSAGE TO REMOTE USER ($message)

Oppure inviare un messaggio solo a John.

C_TEXT($message)
C_COLLECTION ($userCol)
C_OBJECT ($element)

// Retrieve the list of sessions with the userName: "John"
$userCol :=Get process activity(Sessions only).sessions.query("userName = :1"; "John")

$message :="Ciao John."
For each ($element;$userCol)
SEND MESSAGE TO REMOTE USER ($message;$element.ID)
End for each

È inoltre possibile terminare una sessione utente con il comando DROP REMOTE USER con il comando .

C_COLLECTION($userCol)
C_OBJECT ($element)

// Retrieve the list of sessions
$userCol :=Get process activity(Sessions only).sessions.query("userName = :1"; "John")

For each ($element;$userCol)
DROP REMOTE USER ($element.ID)
End for each

Comandi di processo

Con il nuovo ABORT PROCESS BY ID è possibile arrestare un processo specifico utilizzando il suo ID di processo univoco. Per recuperare l’ID univoco del processo, si può usare il comando Get process activity o Process properties .

Ad esempio, è stata avviata un’operazione sul database, ma sembra non finire mai e sta disturbando le prestazioni del server. L’amministratore può recuperare il numero del processo e quindi interromperlo.

// Retrieve the list of processes on the server and display it in a list box
$activity:=Get process activity(Processes only).processes

// The process selected by the administrator is aborted
ABORT PROCESS BY ID($activity.processes[selectedItem].ID)

Connessioni client

L’amministratore del server può bloccare le nuove connessioni remote con il comando REJECT NEW REMOTE CONNECTION . Per sapere se le connessioni sono state accettate o rifiutate, utilizzare il comando Get application info .

// Reject the new connections
REJECT NEW REMOTE CONNECTIONS(True)
// Execute the maintenance operation
...
// Accept the new connections

REJECT NEW REMOTE CONNECTIONS
(False)

RICHIESTE SOAP

Per bloccare le richieste SOAP, si può usare il comando SOAP REJECT NEW REQUESTS per sapere se le richieste sono state accettate o rifiutate. Per sapere se le richieste sono state accettate o rifiutate, utilizzare il comando WEB Get server info comando.

If (WEB Get server info.SOAPServerStarted)
SOAP REJECT NEW REQUESTS (True)
End if

Aggiornare la licenza

Il vostro team è cresciuto e avete acquistato nuove connessioni client per il vostro server. Gli amministratori del server non devono più accedere fisicamente al computer del server per aggiornare una licenza. Il comando Refresh license è ora disponibile. Richiama la stessa azione che l’amministratore avrebbe eseguito se avesse fatto clic sul pulsante nella finestra di dialogo delle licenze di 4D Server. Nel caso vi fosse sfuggita questa funzione, essa installa automaticamente le licenze acquistate per i client, 4D Write Pro o 4D View Pro. Per saperne di più su questa funzione.

C_OBJECT($res)
$res :=Refresh license
If ($res.success)
ALERT ("Success")
Else
ALERT ($res.message)
End if

Vanessa Talbot
- Product Owner - Vanessa Talbot è entrata a far parte del team di 4D Program nel giugno 2014. In qualità di Product Owner, è incaricata di scrivere le storie degli utenti e di tradurle in specifiche funzionali. Il suo ruolo è anche quello di assicurarsi che l'implementazione della funzionalità fornita soddisfi le esigenze del cliente. Ha lavorato sulla maggior parte delle nuove funzionalità di multi-threading preemptive e anche su un argomento molto complesso: la nuova architettura per le applicazioni con motore. Vanessa si è laureata presso Telecom Saint-Etienne. Ha iniziato la sua carriera presso il Criminal Research Institute come sviluppatrice per il dipartimento audiovisivo. Ha lavorato anche nei settori dei media e della medicina come esperta di supporto tecnico, produzione e documentazione di nuove funzionalità.