Citrix Virtual Apps and Desktops

Registrazione della configurazione

La registrazione della configurazione è una funzionalità che acquisisce le modifiche alla configurazione del sito e le attività amministrative nel database. La funzionalità è abilitata per impostazione predefinita. È possibile utilizzare il contenuto registrato per:

  • Diagnosticare e risolvere i problemi dopo aver apportato modifiche alla configurazione. Il log fornisce una traccia delle operazioni.
  • Assistere la gestione delle modifiche e tenere traccia delle configurazioni.
  • Segnalare l’attività amministrativa.

È possibile impostare le preferenze di registrazione della configurazione, visualizzare i log di configurazione e generare report HTML e CSV da Citrix Studio. È possibile filtrare le visualizzazioni dei log di configurazione per intervalli di date e risultati di ricerca full-text. La registrazione obbligatoria, quando abilitata, impedisce l’applicazione di modifiche alla configurazione a meno che non possano essere registrate. Con l’autorizzazione appropriata, è possibile eliminare le voci dal log di configurazione. Non è possibile utilizzare la funzionalità di registrazione della configurazione per modificare il contenuto del log.

La registrazione della configurazione utilizza un SDK PowerShell e il servizio di registrazione della configurazione. Il servizio di registrazione della configurazione viene eseguito su ogni Controller nel sito. Se un Controller si guasta, il servizio su un altro Controller gestisce automaticamente le richieste di registrazione.

Per impostazione predefinita, la funzionalità di registrazione della configurazione è abilitata e utilizza il database creato al momento della creazione del sito (il database di configurazione del sito). È possibile specificare una posizione diversa per il database. Il database di registrazione della configurazione supporta le stesse funzionalità di alta disponibilità del database di configurazione del sito.

L’accesso alla registrazione della configurazione è controllato tramite l’amministrazione delegata, con le autorizzazioni Modifica preferenze di registrazione e Visualizza log di configurazione.

I log di configurazione vengono localizzati al momento della creazione. Ad esempio, un log creato in inglese viene letto in inglese, indipendentemente dalle impostazioni locali del lettore.

Cosa viene registrato

Vengono registrate le modifiche alla configurazione e le attività amministrative avviate da Studio, Director e script PowerShell. Esempi di modifiche alla configurazione registrate includono l’utilizzo (creazione, modifica, eliminazione, assegnazione) di:

  • Cataloghi di macchine
  • Gruppi di consegna (inclusa la modifica delle impostazioni di gestione dell’alimentazione)
  • Ruoli e ambiti dell’amministratore
  • Risorse host e connessioni
  • Criteri Citrix tramite Studio

Esempi di modifiche amministrative registrate includono:

  • Gestione dell’alimentazione di una macchina virtuale o di un desktop utente
  • Studio o Director che inviano un messaggio a un utente

Le seguenti operazioni non vengono registrate:

  • Operazioni autonome come l’accensione di macchine virtuali per la gestione del pool.
  • Azioni dei criteri implementate tramite la Group Policy Management Console (GPMC); utilizzare gli strumenti Microsoft per visualizzare i log di tali azioni.
  • Modifiche apportate tramite il registro, accesso diretto al database o da fonti diverse da Studio, Director o PowerShell.
  • Quando la distribuzione viene inizializzata, la registrazione della configurazione diventa disponibile quando la prima istanza del servizio di registrazione della configurazione si registra con il servizio di configurazione. Pertanto, le prime fasi della configurazione non vengono registrate (ad esempio, quando lo schema del database viene ottenuto e applicato, quando un hypervisor viene inizializzato).

Gestire la registrazione della configurazione

Per impostazione predefinita, la registrazione della configurazione utilizza il database creato al momento della creazione di un sito (noto anche come database di configurazione del sito). Citrix consiglia di utilizzare una posizione separata per il database di registrazione della configurazione (e il database di monitoraggio) per i seguenti motivi:

  • La strategia di backup per il database di registrazione della configurazione è probabilmente diversa dalla strategia di backup per il database di configurazione del sito.
  • Il volume di dati raccolti per la registrazione della configurazione (e il servizio di monitoraggio) potrebbe influire negativamente sullo spazio disponibile per il database di configurazione del sito.
  • Divide il singolo punto di errore per i tre database.

Le edizioni del prodotto che non supportano la registrazione della configurazione non dispongono di un nodo Registrazione in Studio.

Abilitare e disabilitare la registrazione della configurazione e la registrazione obbligatoria

Per impostazione predefinita, la registrazione della configurazione è abilitata e la registrazione obbligatoria è disabilitata.

  1. Accedere a Web Studio e selezionare Registrazione nel riquadro sinistro.
  2. Selezionare Preferenze nella barra delle azioni. La finestra di dialogo di registrazione della configurazione contiene informazioni sul database e indica se la registrazione della configurazione e la registrazione obbligatoria sono abilitate o disabilitate.
  3. Selezionare l’azione desiderata:

    Per abilitare la registrazione della configurazione, selezionare Abilita. Questa è l’impostazione predefinita. Se non è possibile scrivere nel database, le informazioni di registrazione vengono eliminate, ma l’operazione continua.

    Per disabilitare la registrazione della configurazione, selezionare Disabilita. Se la registrazione era precedentemente abilitata, i log esistenti rimangono leggibili con l’SDK PowerShell.

    Per abilitare la registrazione obbligatoria, selezionare Impedisci modifiche alla configurazione del sito quando il database non è disponibile. Nessuna modifica alla configurazione o attività amministrativa normalmente registrata è consentita a meno che non possa essere scritta nel database di registrazione della configurazione. È possibile abilitare la registrazione obbligatoria solo quando la registrazione della configurazione è abilitata (quando è selezionato Abilita). Se il servizio di registrazione della configurazione si guasta e l’alta disponibilità non è in uso, si presume la registrazione obbligatoria. In questi casi, le operazioni che normalmente verrebbero registrate non vengono eseguite.

    Per disabilitare la registrazione obbligatoria, selezionare Consenti modifiche alla configurazione del sito quando il database non è disponibile. Le modifiche alla configurazione e le attività amministrative sono consentite, anche se il database di registrazione della configurazione non è accessibile. Questa è l’impostazione predefinita.

Modificare la posizione del database di registrazione della configurazione

Non è possibile modificare la posizione del database quando la registrazione obbligatoria è abilitata, perché la modifica della posizione include un breve intervallo di disconnessione che non può essere registrato.

  1. Creare un server di database, utilizzando una versione supportata di SQL Server.
  2. Accedere a Web Studio e selezionare Registrazione nel riquadro sinistro.
  3. Selezionare Preferenze nella barra delle azioni.
  4. Nella finestra di dialogo Preferenze di registrazione, selezionare Cambia database di registrazione.
  5. Nella finestra di dialogo Cambia database di registrazione, specificare la posizione del server contenente il nuovo server di database. Vedere Formati degli indirizzi del database per i formati validi.
  6. Per consentire a Studio di creare il database, fare clic su OK. Quando richiesto, fare clic su OK e il database verrà creato automaticamente. Studio tenta di accedere al database utilizzando le credenziali dell’utente corrente di Studio. Se l’operazione fallisce, verranno richieste le credenziali dell’utente del database. Studio caricherà quindi lo schema del database nel database. (Le credenziali vengono mantenute solo durante la creazione del database.)
  7. Per creare il database manualmente, fare clic su Genera script database. Lo script generato include istruzioni per la creazione manuale del database. Assicurarsi che il database sia vuoto e che almeno un utente disponga dell’autorizzazione per accedere e modificare il database prima di caricare lo schema.

I dati di registrazione della configurazione nel database precedente non vengono importati nel nuovo database. I log non possono essere aggregati da entrambi i database durante il recupero dei log. La prima voce di log nel nuovo database di registrazione della configurazione indica che si è verificata una modifica del database, ma non identifica il database precedente.

Visualizzare il contenuto del log di configurazione

Per visualizzare il contenuto del log di configurazione, selezionare Registrazione nel riquadro sinistro, quindi selezionare la scheda Eventi.

Per impostazione predefinita, i log eventi sono elencati per nome amministratore. È possibile eseguire le seguenti attività in base alle esigenze:

  • Visualizzare i dettagli del log. Un’operazione di alto livello si traduce in una o più chiamate di servizio e SDK, che sono operazioni di basso livello. Quando si seleziona un’operazione di alto livello nel riquadro superiore, il riquadro inferiore visualizza le operazioni di basso livello.
  • Ordinare la visualizzazione. Ordinare la visualizzazione facendo clic su un’intestazione di colonna.
  • Filtrare i log. Per perfezionare la visualizzazione, impostare le condizioni di filtro, ad esempio intervalli di giorni o periodi personalizzati, oppure immettere nomi di attività principali completi o parziali nella casella di ricerca. Per tornare alla visualizzazione standard dopo aver utilizzato la ricerca, cancellare il testo nella casella di ricerca.
  • Esportare i log. Esportare i log selezionati o tutti i log in un file CSV per l’archiviazione o ulteriori analisi.
  • Personalizzare le colonne. Adattare la visualizzazione alle proprie esigenze aggiungendo colonne non predefinite come IP client ed Etichette.
  • Gestire le etichette. Aggiungere, modificare e rimuovere etichette per i log eventi per migliorare l’organizzazione e il tracciamento dei log.

Caratteristiche di visualizzazione:

  • Se un’operazione fallisce prima del completamento, l’operazione di log potrebbe non essere completata nel database. Ad esempio, un record di inizio non ha un record di fine corrispondente. In questi casi, il log indica che mancano informazioni. Quando si visualizzano i log in base a intervalli di tempo, i log incompleti vengono mostrati se i dati corrispondono ai criteri.

    Ad esempio, se si richiedono i log degli ultimi cinque giorni e un log con un’ora di inizio negli ultimi cinque giorni non ha un’ora di fine, viene incluso.

  • Quando si utilizza uno script che chiama cmdlet PowerShell, se si crea un’operazione di basso livello senza specificare un’operazione di alto livello padre, la registrazione della configurazione crea un’operazione di alto livello surrogata.

Generare report

È possibile generare report CSV e HTML contenenti dati di log di configurazione.

  • Il report CSV contiene tutti i dati di registrazione di un intervallo di tempo specificato. I dati gerarchici nel database vengono appiattiti in una singola tabella CSV. Nessun aspetto dei dati ha precedenza nel file. Non viene utilizzata alcuna formattazione e non si presume alcuna leggibilità umana. Il file (denominato MyReport) contiene i dati in un formato universalmente utilizzabile. I file CSV vengono spesso utilizzati per archiviare dati o come origine dati per uno strumento di reporting o manipolazione dei dati come Microsoft Excel.
  • Il report HTML fornisce una forma leggibile dall’uomo dei dati di registrazione per un intervallo di tempo specificato. Fornisce una vista strutturata e navigabile per la revisione delle modifiche. Un report HTML comprende due file, denominati Riepilogo e Dettagli. Riepilogo elenca le operazioni di alto livello: quando si è verificata ogni operazione, da chi e il risultato. Facendo clic su un collegamento Dettagli accanto a ogni operazione si accede alle operazioni di basso livello nel file Dettagli, che fornisce informazioni aggiuntive.

Per generare un report del log di configurazione, selezionare Registrazione nel riquadro di navigazione di Studio, quindi selezionare Crea report personalizzato nella barra delle azioni.

  • Selezionare l’intervallo di date per il report.
  • Selezionare il formato del report: CSV, HTML o entrambi.
  • Sfogliare fino alla posizione in cui si desidera salvare il report.

Eliminare il contenuto del log di configurazione

Per eliminare il log di configurazione, è necessario disporre di determinate autorizzazioni di amministrazione delegata e del database SQL Server.

  • Amministrazione delegata: È necessario disporre di un ruolo di amministrazione delegata che consenta la lettura della configurazione della distribuzione. Il ruolo Amministratore completo dispone di questa autorizzazione. Un ruolo personalizzato deve avere l’opzione Sola lettura o Gestisci selezionata nella categoria Altre autorizzazioni.

    Per creare un backup dei dati di registrazione della configurazione prima di eliminarli, il ruolo personalizzato deve avere anche l’opzione Sola lettura o Gestisci selezionata nella categoria Autorizzazioni di registrazione.

  • Database SQL Server: È necessario disporre di un account di accesso al server SQL con l’autorizzazione per eliminare i record dal database. Esistono due modi per farlo:

    • Utilizzare un account di accesso al database SQL Server con un ruolo server sysadmin, che consente di eseguire qualsiasi attività sul server di database. In alternativa, i ruoli server serveradmin o setupadmin consentono di eseguire operazioni di eliminazione.

    • Se la distribuzione richiede maggiore sicurezza, utilizzare un account di accesso al database non sysadmin mappato a un utente del database che dispone dell’autorizzazione per eliminare i record dal database.

      1. In SQL Server Management Studio, creare un account di accesso a SQL Server con un ruolo server diverso da ‘sysadmin’.
      2. Mappare l’account di accesso a un utente nel database. SQL Server crea automaticamente un utente nel database con lo stesso nome dell’account di accesso.
      3. In Appartenenza al ruolo del database, specificare almeno uno dei membri del ruolo per l’utente del database: ConfigurationLoggingSchema_ROLE o dbowner.

      Per ulteriori informazioni, consultare la documentazione di SQL Server Management Studio.

Per eliminare i log di configurazione:

  1. Accedere a Web Studio e selezionare Registrazione nel riquadro sinistro.
  2. Selezionare Elimina log nella barra delle azioni.
  3. Viene chiesto se si desidera creare un backup dei log prima che vengano eliminati. Se si sceglie di creare un backup, sfogliare fino alla posizione in cui viene salvato l’archivio di backup. Il backup viene creato come file CSV.

Dopo che i log di configurazione sono stati cancellati, l’eliminazione del log è la prima attività registrata nel log vuoto. Tale voce fornisce dettagli su chi ha eliminato i log e quando.

Visualizzare i log API e PowerShell

Per monitorare le richieste API effettuate durante la sessione corrente, fare clic sulla scheda API. I log API vengono cancellati dopo la disconnessione da Web Studio.

Per visualizzare i comandi PowerShell corrispondenti alle azioni dell’interfaccia utente eseguite durante il giorno, fare clic sulla scheda PowerShell.

Associare metadati ai log di configurazione

È possibile allegare metadati ai log di configurazione associando una coppia nome-valore denominata MetadataMap ai record di log.

Nota:

  • È possibile allegare metadati solo a oggetti operazione di alto livello.
  • I metadati sono associati ai record esistenti al momento dell’esecuzione.

Impostare i metadati

Eseguire il comando PowerShell Set-LogHighLevelOperationMetadata per associare un record di log a MetadataMap. Set-LogHighLevelOperationMetadata accetta i seguenti parametri:

  • Id: ID dell’operazione di alto livello.
  • InputObject: Le operazioni di alto livello a cui si aggiungono i metadati. Questa è un’alternativa al parametro Id in cui un oggetto operazione di alto livello o un elenco di oggetti viene passato al comando PowerShell.
  • Name: Nome della proprietà dei metadati da aggiungere. La proprietà deve essere univoca per l’operazione di alto livello specificata. La proprietà non può contenere nessuno dei seguenti caratteri ()\/;:#.*?=<> []”’.
  • Value: Valore per la proprietà.
  • Map: Dizionario di coppie (nome, valore) per le proprietà. Questa è un’alternativa all’impostazione dei metadati utilizzando i parametri -Name e -Value.

Ad esempio, per allegare i metadati a tutti i record di log di alto livello con ID 40, eseguire il seguente comando PowerShell:

Get-LogHighLevelOperation – Id 40 | Set-LogHighLevelOperationMetadata -Name A -Value B

Per allegare i metadati al record di alto livello con l’utente abc@example.com, eseguire il seguente comando PowerShell:

Get-LogHighLevelOperation – User `abc@example.com` | Set-LogHighLevelOperationMetadata -Name C -Value D

Recuperare utilizzando i metadati

Eseguire i seguenti comandi PowerShell per utilizzare i metadati associati per recuperare i record di log:

  • Cerca per chiave e valore:

    Get-LogHighLevelOperation -Metadata "Key:Value"

  • Cerca per valore qualsiasi chiave:

    Get-LogHighLevelOperation -Metadata "*:Value"

  • Cerca per chiave e qualsiasi valore:

    Get-LogHighLevelOperation -Metadata "Key:*"

Rimuovere i metadati

Eseguire il comando PowerShell Remove-LogHighLevelOperationMetadata per rimuovere i metadati associati. Remove-LogHighLevelOperationMetadata accetta i seguenti parametri:

  • Id: ID dell’operazione di alto livello.
  • InputObject: Le operazioni di alto livello a cui si aggiungono i metadati. Questa è un’alternativa al parametro Id in cui un oggetto operazione di alto livello o un elenco di oggetti viene passato al comando PowerShell.
  • Name: Nome della proprietà dei metadati da rimuovere. Impostare su $null per rimuovere tutti i metadati per l’oggetto specificato.
  • Map: Dizionario di coppie (nome, valore) per le proprietà. Può essere un hashtable (creato con @{“name1” = “val1”; “name2” = “val2”}) o un dizionario di stringhe (creato con new-object “System.Collections.Generic.Dictionary[String, String]”). Le proprietà i cui nomi corrispondono alle chiavi nella mappa vengono rimosse.